JAMES-4025 Remove JMAP Version.DRAFT
diff --git a/server/container/guice/protocols/jmap/src/main/java/org/apache/james/jmap/JMAPModule.java b/server/container/guice/protocols/jmap/src/main/java/org/apache/james/jmap/JMAPModule.java
index 741d05a..13b3931 100644
--- a/server/container/guice/protocols/jmap/src/main/java/org/apache/james/jmap/JMAPModule.java
+++ b/server/container/guice/protocols/jmap/src/main/java/org/apache/james/jmap/JMAPModule.java
@@ -130,7 +130,6 @@
         bind(MailQueueItemDecoratorFactory.class).to(PostDequeueDecoratorFactory.class).in(Scopes.SINGLETON);
 
         Multibinder<Version> supportedVersions = Multibinder.newSetBinder(binder(), Version.class);
-        supportedVersions.addBinding().toInstance(Version.DRAFT);
         supportedVersions.addBinding().toInstance(Version.RFC8621);
 
         Multibinder<CapabilityFactory> supportedCapabilities = Multibinder.newSetBinder(binder(), CapabilityFactory.class);
diff --git a/server/protocols/jmap-rfc-8621/src/test/scala/org/apache/james/jmap/routes/JMAPApiRoutesTest.scala b/server/protocols/jmap-rfc-8621/src/test/scala/org/apache/james/jmap/routes/JMAPApiRoutesTest.scala
index c41260a..31103af 100644
--- a/server/protocols/jmap-rfc-8621/src/test/scala/org/apache/james/jmap/routes/JMAPApiRoutesTest.scala
+++ b/server/protocols/jmap-rfc-8621/src/test/scala/org/apache/james/jmap/routes/JMAPApiRoutesTest.scala
@@ -59,7 +59,6 @@
 object JMAPApiRoutesTest {
   private val TEST_CONFIGURATION: JMAPConfiguration = JMAPConfiguration.builder().enable().randomPort().build()
   private val ACCEPT_JMAP_VERSION_HEADER = "application/json; jmapVersion="
-  private val ACCEPT_DRAFT_VERSION_HEADER = ACCEPT_JMAP_VERSION_HEADER + Version.DRAFT.asString()
   private val ACCEPT_RFC8621_VERSION_HEADER = ACCEPT_JMAP_VERSION_HEADER + Version.RFC8621.asString()
 
   private val empty_set: ImmutableSet[PreDeletionHook] = ImmutableSet.of()
@@ -210,7 +209,7 @@
       |  ]
       |}""".stripMargin
 
-  private val SUPPORTED_VERSIONS = ImmutableSet.of(Version.DRAFT, Version.RFC8621)
+  private val SUPPORTED_VERSIONS = ImmutableSet.of(Version.RFC8621)
 
   private val WRONG_OBJECT_REQUEST: String =
     """
@@ -347,35 +346,6 @@
     assertThatJson(response).isEqualTo(RESPONSE_OBJECT_WITH_UNSUPPORTED_METHOD)
   }
 
-  "Draft version, GET" should "return 404 status" in {
-    val headers: Headers = Headers.headers(
-      new Header(ACCEPT.toString, ACCEPT_DRAFT_VERSION_HEADER),
-      new Header("Authorization", s"Basic ${userBase64String}")
-    )
-
-    RestAssured
-      .`given`()
-        .headers(headers)
-      .when()
-        .get
-      .`then`
-        .statusCode(HttpStatus.SC_NOT_FOUND)
-  }
-
-  "Draft version, POST, without body" should "return 400 status" in {
-    val headers: Headers = Headers.headers(
-      new Header(ACCEPT.toString, ACCEPT_DRAFT_VERSION_HEADER),
-      new Header("Authorization", s"Basic ${userBase64String}")
-    )
-    RestAssured
-      .`given`()
-        .headers(headers)
-      .when()
-        .post
-      .`then`
-        .statusCode(HttpStatus.SC_NOT_FOUND)
-  }
-
   "RFC-8621 version, POST, with wrong requestObject body" should "return 400 status" in {
     val headers: Headers = Headers.headers(
       new Header(ACCEPT.toString, ACCEPT_RFC8621_VERSION_HEADER),
diff --git a/server/protocols/jmap-rfc-8621/src/test/scala/org/apache/james/jmap/routes/SessionRoutesTest.scala b/server/protocols/jmap-rfc-8621/src/test/scala/org/apache/james/jmap/routes/SessionRoutesTest.scala
index 699f51d..3cb88e4 100644
--- a/server/protocols/jmap-rfc-8621/src/test/scala/org/apache/james/jmap/routes/SessionRoutesTest.scala
+++ b/server/protocols/jmap-rfc-8621/src/test/scala/org/apache/james/jmap/routes/SessionRoutesTest.scala
@@ -78,7 +78,7 @@
     jmapServer = new JMAPServer(
       TEST_CONFIGURATION,
       Set(new JMAPRoutesHandler(Version.RFC8621, sessionRoutes)).asJava,
-      new VersionParser(Set(Version.RFC8621, Version.DRAFT).asJava, JMAPConfiguration.DEFAULT))
+      new VersionParser(Set(Version.RFC8621).asJava, JMAPConfiguration.DEFAULT))
     jmapServer.start()
 
     RestAssured.requestSpecification = new RequestSpecBuilder()
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/JMAPConfiguration.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/JMAPConfiguration.java
index 4ca7b96..7bfb180 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/JMAPConfiguration.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/JMAPConfiguration.java
@@ -118,7 +118,7 @@
             Preconditions.checkState(enabled.isPresent(), "You should specify if JMAP server should be started");
             return new JMAPConfiguration(enabled.get(), port, emailQueryViewEnabled.orElse(false),
                 userProvisioningEnabled.orElse(true),
-                defaultVersion.orElse(Version.DRAFT), maximumSendSize);
+                defaultVersion.orElse(Version.RFC8621), maximumSendSize);
         }
     }
 
diff --git a/server/protocols/jmap/src/main/java/org/apache/james/jmap/Version.java b/server/protocols/jmap/src/main/java/org/apache/james/jmap/Version.java
index 5437789..3b7d78b 100644
--- a/server/protocols/jmap/src/main/java/org/apache/james/jmap/Version.java
+++ b/server/protocols/jmap/src/main/java/org/apache/james/jmap/Version.java
@@ -22,7 +22,6 @@
 import java.util.Objects;
 
 public class Version {
-    public static final Version DRAFT = new Version("draft");
     public static final Version RFC8621 = new Version("rfc-8621");
 
     public static Version of(String value) {
diff --git a/server/protocols/jmap/src/test/java/org/apache/james/jmap/JMAPConfigurationTest.java b/server/protocols/jmap/src/test/java/org/apache/james/jmap/JMAPConfigurationTest.java
index 4a17270..a027cdc 100644
--- a/server/protocols/jmap/src/test/java/org/apache/james/jmap/JMAPConfigurationTest.java
+++ b/server/protocols/jmap/src/test/java/org/apache/james/jmap/JMAPConfigurationTest.java
@@ -41,7 +41,7 @@
 
     @Test
     void buildShouldWorkWhenRandomPort() {
-        JMAPConfiguration expectedJMAPConfiguration = new JMAPConfiguration(ENABLED, Optional.empty(), ENABLED, ENABLED, Version.DRAFT, Optional.empty());
+        JMAPConfiguration expectedJMAPConfiguration = new JMAPConfiguration(ENABLED, Optional.empty(), ENABLED, ENABLED, Version.RFC8621, Optional.empty());
 
         JMAPConfiguration jmapConfiguration = JMAPConfiguration.builder()
             .enable()
@@ -53,7 +53,7 @@
 
     @Test
     void buildShouldWorkWhenFixedPort() {
-        JMAPConfiguration expectedJMAPConfiguration = new JMAPConfiguration(ENABLED, Optional.of(Port.of(80)), ENABLED, ENABLED, Version.DRAFT, Optional.empty());
+        JMAPConfiguration expectedJMAPConfiguration = new JMAPConfiguration(ENABLED, Optional.of(Port.of(80)), ENABLED, ENABLED, Version.RFC8621, Optional.empty());
 
         JMAPConfiguration jmapConfiguration = JMAPConfiguration.builder()
             .enable()
@@ -67,7 +67,7 @@
 
     @Test
     void buildShouldWorkWhenDisabled() {
-        JMAPConfiguration expectedJMAPConfiguration = new JMAPConfiguration(DISABLED, Optional.empty(), DISABLED, DISABLED, Version.DRAFT, Optional.empty());
+        JMAPConfiguration expectedJMAPConfiguration = new JMAPConfiguration(DISABLED, Optional.empty(), DISABLED, DISABLED, Version.RFC8621, Optional.empty());
 
         JMAPConfiguration jmapConfiguration = JMAPConfiguration.builder()
             .disable()
diff --git a/server/protocols/jmap/src/test/java/org/apache/james/jmap/JMAPServerTest.java b/server/protocols/jmap/src/test/java/org/apache/james/jmap/JMAPServerTest.java
index f856a12..a77295b 100644
--- a/server/protocols/jmap/src/test/java/org/apache/james/jmap/JMAPServerTest.java
+++ b/server/protocols/jmap/src/test/java/org/apache/james/jmap/JMAPServerTest.java
@@ -50,8 +50,9 @@
 import reactor.netty.http.server.HttpServerResponse;
 
 class JMAPServerTest {
+    private static final Version DRAFT = new Version("draft");
     private static final String ACCEPT_JMAP_VERSION_HEADER = "application/json; jmapVersion=";
-    private static final String ACCEPT_DRAFT_VERSION_HEADER = ACCEPT_JMAP_VERSION_HEADER + Version.DRAFT.asString();
+    private static final String ACCEPT_DRAFT_VERSION_HEADER = ACCEPT_JMAP_VERSION_HEADER + DRAFT.asString();
     private static final String ACCEPT_RFC8621_VERSION_HEADER = ACCEPT_JMAP_VERSION_HEADER + Version.RFC8621.asString();
 
     private static final JMAPConfiguration DISABLED_CONFIGURATION = JMAPConfiguration.builder().disable().build();
@@ -72,9 +73,9 @@
 
     private static final ImmutableSet<JMAPRoutesHandler> FAKE_ROUTES_HANDLERS = ImmutableSet.of(
         new JMAPRoutesHandler(
-            Version.DRAFT,
-            new FakeJMAPRoutes(AUTHENTICATION_ENDPOINTS, Version.DRAFT),
-            new FakeJMAPRoutes(JMAP_ENDPOINTS, Version.DRAFT)),
+            DRAFT,
+            new FakeJMAPRoutes(AUTHENTICATION_ENDPOINTS, DRAFT),
+            new FakeJMAPRoutes(JMAP_ENDPOINTS, DRAFT)),
         new JMAPRoutesHandler(
             Version.RFC8621,
             new FakeJMAPRoutes(AUTHENTICATION_ENDPOINTS, Version.RFC8621))
@@ -82,14 +83,14 @@
 
     private static final ImmutableSet<JMAPRoutesHandler> CORS_ROUTES = ImmutableSet.of(
         new JMAPRoutesHandler(
-            Version.DRAFT,
-            new FakeJMAPRoutes(ImmutableSet.of(Endpoint.ofFixedPath(HttpMethod.OPTIONS, "/a")), Version.DRAFT)),
+            DRAFT,
+            new FakeJMAPRoutes(ImmutableSet.of(Endpoint.ofFixedPath(HttpMethod.OPTIONS, "/a")), DRAFT)),
         new JMAPRoutesHandler(
             Version.RFC8621,
             new FakeJMAPRoutes(ImmutableSet.of(new Endpoint(HttpMethod.OPTIONS, "/b")), Version.RFC8621)));
 
     private static final ImmutableSet<Version> SUPPORTED_VERSIONS = ImmutableSet.of(
-        Version.DRAFT,
+        DRAFT,
         Version.RFC8621
     );
 
@@ -179,7 +180,7 @@
                 .get()
             .then()
                 .statusCode(HttpResponseStatus.OK.code())
-                .body("Version", is(Version.DRAFT.asString()));
+                .body("Version", is(Version.RFC8621.asString()));
         }
 
         @Test
@@ -203,7 +204,7 @@
                 .post()
             .then()
                 .statusCode(HttpResponseStatus.OK.code())
-                .body("Version", is(Version.DRAFT.asString()));
+                .body("Version", is(DRAFT.asString()));
         }
 
         @Test
diff --git a/server/protocols/jmap/src/test/java/org/apache/james/jmap/VersionParserTest.java b/server/protocols/jmap/src/test/java/org/apache/james/jmap/VersionParserTest.java
index 5709620..cafd78d 100644
--- a/server/protocols/jmap/src/test/java/org/apache/james/jmap/VersionParserTest.java
+++ b/server/protocols/jmap/src/test/java/org/apache/james/jmap/VersionParserTest.java
@@ -29,7 +29,6 @@
 
 class VersionParserTest {
     private static final ImmutableSet<Version> SUPPORTED_VERSIONS = ImmutableSet.of(
-        Version.DRAFT,
         Version.RFC8621
     );