geronimo-scm mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From rmannibu...@apache.org
Subject svn commit: r1818654 [3/6] - in /geronimo/specs/trunk/geronimo-jaxrs_2.1_spec: ./ src/main/java/javax/ws/rs/ src/main/java/javax/ws/rs/client/ src/main/java/javax/ws/rs/container/ src/main/java/javax/ws/rs/core/ src/main/java/javax/ws/rs/ext/ src/main/...
Date Tue, 19 Dec 2017 11:39:15 GMT
Added: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/CompletionStageRxInvoker.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/CompletionStageRxInvoker.java?rev=1818654&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/CompletionStageRxInvoker.java (added)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/CompletionStageRxInvoker.java Tue Dec 19 11:39:13 2017
@@ -0,0 +1,105 @@
+/*
+ * #%L
+ * Apache Geronimo JAX-RS Spec 2.0
+ * %%
+ * Copyright (C) 2003 - 2014 The Apache Software Foundation
+ * %%
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * #L%
+ */
+
+package javax.ws.rs.client;
+
+import java.util.concurrent.CompletionStage;
+
+import javax.ws.rs.core.GenericType;
+import javax.ws.rs.core.Response;
+
+public interface CompletionStageRxInvoker extends RxInvoker<CompletionStage> {
+
+    @Override
+    public CompletionStage<Response> get();
+
+    @Override
+    public <T> CompletionStage<T> get(Class<T> responseType);
+
+    @Override
+    public <T> CompletionStage<T> get(GenericType<T> responseType);
+
+    @Override
+    public CompletionStage<Response> put(Entity<?> entity);
+
+    @Override
+    public <T> CompletionStage<T> put(Entity<?> entity, Class<T> clazz);
+
+    @Override
+    public <T> CompletionStage<T> put(Entity<?> entity, GenericType<T> type);
+
+    @Override
+    public CompletionStage<Response> post(Entity<?> entity);
+
+    @Override
+    public <T> CompletionStage<T> post(Entity<?> entity, Class<T> clazz);
+
+    @Override
+    public <T> CompletionStage<T> post(Entity<?> entity, GenericType<T> type);
+
+    @Override
+    public CompletionStage<Response> delete();
+
+    @Override
+    public <T> CompletionStage<T> delete(Class<T> responseType);
+
+    @Override
+    public <T> CompletionStage<T> delete(GenericType<T> responseType);
+
+    @Override
+    public CompletionStage<Response> head();
+
+    @Override
+    public CompletionStage<Response> options();
+
+    @Override
+    public <T> CompletionStage<T> options(Class<T> responseType);
+
+    @Override
+    public <T> CompletionStage<T> options(GenericType<T> responseType);
+
+    @Override
+    public CompletionStage<Response> trace();
+
+    @Override
+    public <T> CompletionStage<T> trace(Class<T> responseType);
+
+    @Override
+    public <T> CompletionStage<T> trace(GenericType<T> responseType);
+
+    @Override
+    public CompletionStage<Response> method(String name);
+
+    @Override
+    public <T> CompletionStage<T> method(String name, Class<T> responseType);
+
+    @Override
+    public <T> CompletionStage<T> method(String name, GenericType<T> responseType);
+
+    @Override
+    public CompletionStage<Response> method(String name, Entity<?> entity);
+
+    @Override
+    public <T> CompletionStage<T> method(String name, Entity<?> entity, Class<T> responseType);
+
+    @Override
+    public <T> CompletionStage<T> method(String name, Entity<?> entity, GenericType<T> responseType);
+}
+

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/Entity.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/Entity.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/Entity.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/Entity.java Tue Dec 19 11:39:13 2017
@@ -1,145 +1,164 @@
-/*
- * #%L
- * Apache Geronimo JAX-RS Spec 2.0
- * %%
- * Copyright (C) 2003 - 2014 The Apache Software Foundation
- * %%
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * #L%
- */
-
-package javax.ws.rs.client;
-
-import javax.ws.rs.core.Form;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.Variant;
-import java.lang.annotation.Annotation;
-import java.util.Locale;
-
-
-public final class Entity<T> {
-    private static final Annotation[] EMPTY_ANNOTATIONS = new Annotation[0];
-
-    private final T entity;
-    private final Variant variant;
-    private final Annotation[] annotations;
-
-
-    public static <T> Entity<T> entity(final T entity, final MediaType mediaType) {
-        return new Entity<T>(entity, mediaType);
-    }
-
-
-    public static <T> Entity<T> entity(final T entity, final MediaType mediaType, Annotation[] annotations) {
-        return new Entity<T>(entity, mediaType, annotations);
-    }
-
-
-    public static <T> Entity<T> entity(final T entity, final String mediaType) {
-        return new Entity<T>(entity, MediaType.valueOf(mediaType));
-    }
-
-
-    public static <T> Entity<T> entity(final T entity, final Variant variant) {
-        return new Entity<T>(entity, variant);
-    }
-
-
-    public static <T> Entity<T> entity(final T entity, final Variant variant, Annotation[] annotations) {
-        return new Entity<T>(entity, variant, annotations);
-    }
-
-
-    public static <T> Entity<T> text(final T entity) {
-        return new Entity<T>(entity, MediaType.TEXT_PLAIN_TYPE);
-    }
-
-
-    public static <T> Entity<T> xml(final T entity) {
-        return new Entity<T>(entity, MediaType.APPLICATION_XML_TYPE);
-    }
-
-
-    public static <T> Entity<T> json(final T entity) {
-        return new Entity<T>(entity, MediaType.APPLICATION_JSON_TYPE);
-    }
-
-
-    public static <T> Entity<T> html(final T entity) {
-        return new Entity<T>(entity, MediaType.TEXT_HTML_TYPE);
-    }
-
-
-    public static <T> Entity<T> xhtml(final T entity) {
-        return new Entity<T>(entity, MediaType.APPLICATION_XHTML_XML_TYPE);
-    }
-
-
-    public static Entity<Form> form(final Form form) {
-        return new Entity<Form>(form, MediaType.APPLICATION_FORM_URLENCODED_TYPE);
-    }
-
-
-    public static Entity<Form> form(final MultivaluedMap<String, String> formData) {
-        return new Entity<Form>(new Form(formData), MediaType.APPLICATION_FORM_URLENCODED_TYPE);
-    }
-
-    private Entity(final T entity, final MediaType mediaType) {
-        this(entity, new Variant(mediaType, (Locale) null, null), EMPTY_ANNOTATIONS);
-    }
-
-    private Entity(final T entity, final Variant variant) {
-        this(entity, variant, EMPTY_ANNOTATIONS);
-    }
-
-    private Entity(final T entity, final MediaType mediaType, Annotation[] annotations) {
-        this(entity, new Variant(mediaType, (Locale) null, null), annotations);
-    }
-
-    private Entity(final T entity, final Variant variant, Annotation[] annotations) {
-        this.entity = entity;
-        this.variant = variant;
-        this.annotations = annotations;
-    }
-
-
-    public Variant getVariant() {
-        return variant;
-    }
-
-
-    public MediaType getMediaType() {
-        return variant.getMediaType();
-    }
-
-
-    public String getEncoding() {
-        return variant.getEncoding();
-    }
-
-
-    public Locale getLanguage() {
-        return variant.getLanguage();
-    }
-
-
-    public T getEntity() {
-        return entity;
-    }
-
-
-    public Annotation[] getAnnotations() {
-        return annotations;
-    }
-}
+/*
+ * #%L
+ * Apache Geronimo JAX-RS Spec 2.0
+ * %%
+ * Copyright (C) 2003 - 2014 The Apache Software Foundation
+ * %%
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * #L%
+ */
+
+package javax.ws.rs.client;
+
+import java.lang.annotation.Annotation;
+import java.util.Arrays;
+import java.util.Locale;
+
+import javax.ws.rs.core.Form;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.MultivaluedMap;
+import javax.ws.rs.core.Variant;
+
+public final class Entity<T> {
+
+    private static final Annotation[] EMPTY_ANNOTATIONS = new Annotation[0];
+
+    private final T entity;
+
+    private final Variant variant;
+
+    private final Annotation[] annotations;
+
+    public static <T> Entity<T> entity(final T entity, final MediaType mediaType) {
+        return new Entity<T>(entity, mediaType);
+    }
+
+    public static <T> Entity<T> entity(final T entity, final MediaType mediaType, Annotation[] annotations) {
+        return new Entity<T>(entity, mediaType, annotations);
+    }
+
+    public static <T> Entity<T> entity(final T entity, final String mediaType) {
+        return new Entity<T>(entity, MediaType.valueOf(mediaType));
+    }
+
+    public static <T> Entity<T> entity(final T entity, final Variant variant) {
+        return new Entity<T>(entity, variant);
+    }
+
+    public static <T> Entity<T> entity(final T entity, final Variant variant, Annotation[] annotations) {
+        return new Entity<T>(entity, variant, annotations);
+    }
+
+    public static <T> Entity<T> text(final T entity) {
+        return new Entity<T>(entity, MediaType.TEXT_PLAIN_TYPE);
+    }
+
+    public static <T> Entity<T> xml(final T entity) {
+        return new Entity<T>(entity, MediaType.APPLICATION_XML_TYPE);
+    }
+
+    public static <T> Entity<T> json(final T entity) {
+        return new Entity<T>(entity, MediaType.APPLICATION_JSON_TYPE);
+    }
+
+    public static <T> Entity<T> html(final T entity) {
+        return new Entity<T>(entity, MediaType.TEXT_HTML_TYPE);
+    }
+
+    public static <T> Entity<T> xhtml(final T entity) {
+        return new Entity<T>(entity, MediaType.APPLICATION_XHTML_XML_TYPE);
+    }
+
+    public static Entity<Form> form(final Form form) {
+        return new Entity<Form>(form, MediaType.APPLICATION_FORM_URLENCODED_TYPE);
+    }
+
+    public static Entity<Form> form(final MultivaluedMap<String, String> formData) {
+        return new Entity<Form>(new Form(formData), MediaType.APPLICATION_FORM_URLENCODED_TYPE);
+    }
+
+    private Entity(final T entity, final MediaType mediaType) {
+        this(entity, new Variant(mediaType, (Locale) null, null), null);
+    }
+
+    private Entity(final T entity, final Variant variant) {
+        this(entity, variant, null);
+    }
+
+    private Entity(final T entity, final MediaType mediaType, Annotation[] annotations) {
+        this(entity, new Variant(mediaType, (Locale) null, null), annotations);
+    }
+
+    private Entity(final T entity, final Variant variant, Annotation[] annotations) {
+        this.entity = entity;
+        this.variant = variant;
+
+        this.annotations = (annotations == null) ? EMPTY_ANNOTATIONS : annotations;
+    }
+
+    public Variant getVariant() {
+        return variant;
+    }
+
+    public MediaType getMediaType() {
+        return variant.getMediaType();
+    }
+
+    public String getEncoding() {
+        return variant.getEncoding();
+    }
+
+    public Locale getLanguage() {
+        return variant.getLanguage();
+    }
+
+    public T getEntity() {
+        return entity;
+    }
+
+    public Annotation[] getAnnotations() {
+        return annotations;
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o)
+            return true;
+        if (!(o instanceof Entity))
+            return false;
+
+        Entity entity1 = (Entity) o;
+
+        if (!Arrays.equals(annotations, entity1.annotations))
+            return false;
+        if (entity != null ? !entity.equals(entity1.entity) : entity1.entity != null)
+            return false;
+        if (variant != null ? !variant.equals(entity1.variant) : entity1.variant != null)
+            return false;
+
+        return true;
+    }
+
+    @Override
+    public int hashCode() {
+        int result = entity != null ? entity.hashCode() : 0;
+        result = 31 * result + (variant != null ? variant.hashCode() : 0);
+        result = 31 * result + Arrays.hashCode(annotations);
+        return result;
+    }
+
+    @Override
+    public String toString() {
+        return "Entity{" + "entity=" + entity + ", variant=" + variant + ", annotations=" + Arrays.toString(annotations) + '}';
+    }
+}

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/Invocation.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/Invocation.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/Invocation.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/Invocation.java Tue Dec 19 11:39:13 2017
@@ -1,116 +1,96 @@
-/*
- * #%L
- * Apache Geronimo JAX-RS Spec 2.0
- * %%
- * Copyright (C) 2003 - 2014 The Apache Software Foundation
- * %%
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * #L%
- */
-
-package javax.ws.rs.client;
-
-import javax.ws.rs.core.CacheControl;
-import javax.ws.rs.core.Cookie;
-import javax.ws.rs.core.GenericType;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.Response;
-import java.util.Locale;
-import java.util.concurrent.Future;
-
-
-public interface Invocation {
-
-
-    static interface Builder extends SyncInvoker {
-
-
-        Invocation build(String method);
-
-
-        Invocation build(String method, Entity<?> entity);
-
-
-        Invocation buildGet();
-
-
-        Invocation buildDelete();
-
-
-        Invocation buildPost(Entity<?> entity);
-
-
-        Invocation buildPut(Entity<?> entity);
-
-
-        AsyncInvoker async();
-
-
-        Builder accept(String... mediaTypes);
-
-
-        Builder accept(MediaType... mediaTypes);
-
-
-        Builder acceptLanguage(Locale... locales);
-
-
-        Builder acceptLanguage(String... locales);
-
-
-        Builder acceptEncoding(String... encodings);
-
-
-        Builder cookie(Cookie cookie);
-
-
-        Builder cookie(String name, String value);
-
-
-        Builder cacheControl(CacheControl cacheControl);
-
-
-        Builder header(String name, Object value);
-
-
-        Builder headers(MultivaluedMap<String, Object> headers);
-
-
-        Builder property(String name, Object value);
-    }
-
-
-    Invocation property(String name, Object value);
-
-
-    Response invoke();
-
-
-    <T> T invoke(Class<T> responseType);
-
-
-    <T> T invoke(GenericType<T> responseType);
-
-
-    Future<Response> submit();
-
-
-    <T> Future<T> submit(Class<T> responseType);
-
-
-    <T> Future<T> submit(GenericType<T> responseType);
-
-
-    <T> Future<T> submit(InvocationCallback<T> callback);
-}
+/*
+ * #%L
+ * Apache Geronimo JAX-RS Spec 2.0
+ * %%
+ * Copyright (C) 2003 - 2014 The Apache Software Foundation
+ * %%
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * #L%
+ */
+
+package javax.ws.rs.client;
+
+import java.util.Locale;
+import java.util.concurrent.Future;
+
+import javax.ws.rs.core.CacheControl;
+import javax.ws.rs.core.Cookie;
+import javax.ws.rs.core.GenericType;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.MultivaluedMap;
+import javax.ws.rs.core.Response;
+
+public interface Invocation {
+
+    public static interface Builder extends SyncInvoker {
+
+        // Invocation builder methods
+
+        public Invocation build(String method);
+
+        public Invocation build(String method, Entity<?> entity);
+
+        public Invocation buildGet();
+
+        public Invocation buildDelete();
+
+        public Invocation buildPost(Entity<?> entity);
+
+        public Invocation buildPut(Entity<?> entity);
+
+        public AsyncInvoker async();
+
+        public Builder accept(String... mediaTypes);
+
+        public Builder accept(MediaType... mediaTypes);
+
+        public Builder acceptLanguage(Locale... locales);
+
+        public Builder acceptLanguage(String... locales);
+
+        public Builder acceptEncoding(String... encodings);
+
+        public Builder cookie(Cookie cookie);
+
+        public Builder cookie(String name, String value);
+
+        public Builder cacheControl(CacheControl cacheControl);
+
+        public Builder header(String name, Object value);
+
+        public Builder headers(MultivaluedMap<String, Object> headers);
+
+        public Builder property(String name, Object value);
+
+        public CompletionStageRxInvoker rx();
+
+        public <T extends RxInvoker> T rx(Class<T> clazz);
+
+    }
+
+    public Invocation property(String name, Object value);
+
+    public Response invoke();
+
+    public <T> T invoke(Class<T> responseType);
+
+    public <T> T invoke(GenericType<T> responseType);
+
+    public Future<Response> submit();
+
+    public <T> Future<T> submit(Class<T> responseType);
+
+    public <T> Future<T> submit(GenericType<T> responseType);
+
+    public <T> Future<T> submit(InvocationCallback<T> callback);
+}

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/InvocationCallback.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/InvocationCallback.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/InvocationCallback.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/InvocationCallback.java Tue Dec 19 11:39:13 2017
@@ -20,12 +20,9 @@
 
 package javax.ws.rs.client;
 
-
 public interface InvocationCallback<RESPONSE> {
 
-
     public void completed(RESPONSE response);
 
-
     public void failed(Throwable throwable);
 }

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/ResponseProcessingException.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/ResponseProcessingException.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/ResponseProcessingException.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/ResponseProcessingException.java Tue Dec 19 11:39:13 2017
@@ -1,55 +1,50 @@
-/*
- * #%L
- * Apache Geronimo JAX-RS Spec 2.0
- * %%
- * Copyright (C) 2003 - 2014 The Apache Software Foundation
- * %%
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * #L%
- */
-
-package javax.ws.rs.client;
-
-import javax.ws.rs.ProcessingException;
-import javax.ws.rs.core.Response;
-
-
-public class ResponseProcessingException extends ProcessingException {
-
-    private static final long serialVersionUID = -4923161617935731839L;
-
-    private final Response response;
-
-
-    public ResponseProcessingException(Response response, Throwable cause) {
-        super(cause);
-        this.response = response;
-    }
-
-
-    public ResponseProcessingException(Response response, String message, Throwable cause) {
-        super(message, cause);
-        this.response = response;
-    }
-
-
-    public ResponseProcessingException(Response response, String message) {
-        super(message);
-        this.response = response;
-    }
-
-
-    public Response getResponse() {
-        return response;
-    }
-}
+/*
+ * #%L
+ * Apache Geronimo JAX-RS Spec 2.0
+ * %%
+ * Copyright (C) 2003 - 2014 The Apache Software Foundation
+ * %%
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * #L%
+ */
+
+package javax.ws.rs.client;
+
+import javax.ws.rs.ProcessingException;
+import javax.ws.rs.core.Response;
+
+public class ResponseProcessingException extends ProcessingException {
+
+    private static final long serialVersionUID = -4923161617935731839L;
+
+    private final Response response;
+
+    public ResponseProcessingException(Response response, Throwable cause) {
+        super(cause);
+        this.response = response;
+    }
+
+    public ResponseProcessingException(Response response, String message, Throwable cause) {
+        super(message, cause);
+        this.response = response;
+    }
+
+    public ResponseProcessingException(Response response, String message) {
+        super(message);
+        this.response = response;
+    }
+
+    public Response getResponse() {
+        return response;
+    }
+}

Added: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/RxInvoker.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/RxInvoker.java?rev=1818654&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/RxInvoker.java (added)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/RxInvoker.java Tue Dec 19 11:39:13 2017
@@ -0,0 +1,76 @@
+/*
+ * #%L
+ * Apache Geronimo JAX-RS Spec 2.0
+ * %%
+ * Copyright (C) 2003 - 2014 The Apache Software Foundation
+ * %%
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * #L%
+ */
+
+package javax.ws.rs.client;
+
+import javax.ws.rs.core.GenericType;
+
+public interface RxInvoker<T> {
+
+    public T get();
+
+    public <R> T get(Class<R> responseType);
+
+    public <R> T get(GenericType<R> responseType);
+
+    public T put(Entity<?> entity);
+
+    public <R> T put(Entity<?> entity, Class<R> responseType);
+
+    public <R> T put(Entity<?> entity, GenericType<R> responseType);
+
+    public T post(Entity<?> entity);
+
+    public <R> T post(Entity<?> entity, Class<R> responseType);
+
+    public <R> T post(Entity<?> entity, GenericType<R> responseType);
+
+    public T delete();
+
+    public <R> T delete(Class<R> responseType);
+
+    public <R> T delete(GenericType<R> responseType);
+
+    public T head();
+
+    public T options();
+
+    public <R> T options(Class<R> responseType);
+
+    public <R> T options(GenericType<R> responseType);
+
+    public T trace();
+
+    public <R> T trace(Class<R> responseType);
+
+    public <R> T trace(GenericType<R> responseType);
+
+    public T method(String name);
+
+    public <R> T method(String name, Class<R> responseType);
+
+    public <R> T method(String name, GenericType<R> responseType);
+
+    public T method(String name, Entity<?> entity);
+
+    public <R> T method(String name, Entity<?> entity, Class<R> responseType);
+
+    public <R> T method(String name, Entity<?> entity, GenericType<R> responseType);
+}

Added: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/RxInvokerProvider.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/RxInvokerProvider.java?rev=1818654&view=auto
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/RxInvokerProvider.java (added)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/RxInvokerProvider.java Tue Dec 19 11:39:13 2017
@@ -0,0 +1,31 @@
+/*
+ * #%L
+ * Apache Geronimo JAX-RS Spec 2.0
+ * %%
+ * Copyright (C) 2003 - 2014 The Apache Software Foundation
+ * %%
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * #L%
+ */
+
+package javax.ws.rs.client;
+
+import java.util.concurrent.ExecutorService;
+
+public interface RxInvokerProvider<T extends RxInvoker> {
+
+    public boolean isProviderFor(Class<?> clazz);
+
+    public T getRxInvoker(SyncInvoker syncInvoker, ExecutorService executorService);
+
+}

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/SyncInvoker.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/SyncInvoker.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/SyncInvoker.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/SyncInvoker.java Tue Dec 19 11:39:13 2017
@@ -1,103 +1,93 @@
-/*
- * #%L
- * Apache Geronimo JAX-RS Spec 2.0
- * %%
- * Copyright (C) 2003 - 2014 The Apache Software Foundation
- * %%
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * #L%
- */
-
-package javax.ws.rs.client;
-
-import javax.ws.rs.core.GenericType;
-import javax.ws.rs.core.Response;
-
-
-public interface SyncInvoker {
-
-
-    Response get();
-
-
-    <T> T get(Class<T> responseType);
-
-
-    <T> T get(GenericType<T> responseType);
-
-
-    Response put(Entity<?> entity);
-
-
-    <T> T put(Entity<?> entity, Class<T> responseType);
-
-
-    <T> T put(Entity<?> entity, GenericType<T> responseType);
-
-
-    Response post(Entity<?> entity);
-
-
-    <T> T post(Entity<?> entity, Class<T> responseType);
-
-
-    <T> T post(Entity<?> entity, GenericType<T> responseType);
-
-
-    Response delete();
-
-
-    <T> T delete(Class<T> responseType);
-
-
-    <T> T delete(GenericType<T> responseType);
-
-
-    Response head();
-
-
-    Response options();
-
-
-    <T> T options(Class<T> responseType);
-
-
-    <T> T options(GenericType<T> responseType);
-
-
-    Response trace();
-
-
-    <T> T trace(Class<T> responseType);
-
-
-    <T> T trace(GenericType<T> responseType);
-
-
-    Response method(String name);
-
-
-    <T> T method(String name, Class<T> responseType);
-
-
-    <T> T method(String name, GenericType<T> responseType);
-
-
-    Response method(String name, Entity<?> entity);
-
-
-    <T> T method(String name, Entity<?> entity, Class<T> responseType);
-
-
-    <T> T method(String name, Entity<?> entity, GenericType<T> responseType);
-}
+/*
+ * #%L
+ * Apache Geronimo JAX-RS Spec 2.0
+ * %%
+ * Copyright (C) 2003 - 2014 The Apache Software Foundation
+ * %%
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * #L%
+ */
+
+package javax.ws.rs.client;
+
+import javax.ws.rs.core.GenericType;
+import javax.ws.rs.core.Response;
+
+public interface SyncInvoker {
+
+    // GET
+
+    Response get();
+
+    <T> T get(Class<T> responseType);
+
+    <T> T get(GenericType<T> responseType);
+
+    // PUT
+
+    Response put(Entity<?> entity);
+
+    <T> T put(Entity<?> entity, Class<T> responseType);
+
+    <T> T put(Entity<?> entity, GenericType<T> responseType);
+
+    // POST
+
+    Response post(Entity<?> entity);
+
+    <T> T post(Entity<?> entity, Class<T> responseType);
+
+    <T> T post(Entity<?> entity, GenericType<T> responseType);
+
+    // DELETE
+
+    Response delete();
+
+    <T> T delete(Class<T> responseType);
+
+    <T> T delete(GenericType<T> responseType);
+
+    // HEAD
+
+    Response head();
+
+    // OPTIONS
+
+    Response options();
+
+    <T> T options(Class<T> responseType);
+
+    <T> T options(GenericType<T> responseType);
+
+    // TRACE
+
+    Response trace();
+
+    <T> T trace(Class<T> responseType);
+
+    <T> T trace(GenericType<T> responseType);
+
+    // OTHERS
+
+    Response method(String name);
+
+    <T> T method(String name, Class<T> responseType);
+
+    <T> T method(String name, GenericType<T> responseType);
+
+    Response method(String name, Entity<?> entity);
+
+    <T> T method(String name, Entity<?> entity, Class<T> responseType);
+
+    <T> T method(String name, Entity<?> entity, GenericType<T> responseType);
+}

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/WebTarget.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/WebTarget.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/WebTarget.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/client/WebTarget.java Tue Dec 19 11:39:13 2017
@@ -1,72 +1,59 @@
-/*
- * #%L
- * Apache Geronimo JAX-RS Spec 2.0
- * %%
- * Copyright (C) 2003 - 2014 The Apache Software Foundation
- * %%
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * #L%
- */
-
-package javax.ws.rs.client;
-
-import javax.ws.rs.core.Configurable;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.UriBuilder;
-import java.net.URI;
-import java.util.Map;
-
-
-public interface WebTarget extends Configurable<WebTarget> {
-
-
-    URI getUri();
-
-
-    UriBuilder getUriBuilder();
-
-
-    WebTarget path(String path);
-
-
-    WebTarget resolveTemplate(String name, Object value);
-
-
-    WebTarget resolveTemplate(String name, Object value, boolean encodeSlashInPath);
-
-
-    WebTarget resolveTemplateFromEncoded(String name, Object value);
-
-
-    WebTarget resolveTemplates(Map<String, Object> templateValues);
-
-    WebTarget resolveTemplates(Map<String, Object> templateValues, boolean encodeSlashInPath);
-
-
-    WebTarget resolveTemplatesFromEncoded(Map<String, Object> templateValues);
-
-
-    WebTarget matrixParam(String name, Object... values);
-
-
-    WebTarget queryParam(String name, Object... values);
-
-
-    Invocation.Builder request();
-
-
-    Invocation.Builder request(String... acceptedResponseTypes);
-
-
-    Invocation.Builder request(MediaType... acceptedResponseTypes);
-}
+/*
+ * #%L
+ * Apache Geronimo JAX-RS Spec 2.0
+ * %%
+ * Copyright (C) 2003 - 2014 The Apache Software Foundation
+ * %%
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * #L%
+ */
+
+package javax.ws.rs.client;
+
+import java.net.URI;
+import java.util.Map;
+
+import javax.ws.rs.core.Configurable;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.UriBuilder;
+
+public interface WebTarget extends Configurable<WebTarget> {
+
+    public URI getUri();
+
+    public UriBuilder getUriBuilder();
+
+    public WebTarget path(String path);
+
+    public WebTarget resolveTemplate(String name, Object value);
+
+    public WebTarget resolveTemplate(String name, Object value, boolean encodeSlashInPath);
+
+    public WebTarget resolveTemplateFromEncoded(String name, Object value);
+
+    public WebTarget resolveTemplates(Map<String, Object> templateValues);
+
+    public WebTarget resolveTemplates(Map<String, Object> templateValues, boolean encodeSlashInPath);
+
+    public WebTarget resolveTemplatesFromEncoded(Map<String, Object> templateValues);
+
+    public WebTarget matrixParam(String name, Object... values);
+
+    public WebTarget queryParam(String name, Object... values);
+
+    public Invocation.Builder request();
+
+    public Invocation.Builder request(String... acceptedResponseTypes);
+
+    public Invocation.Builder request(MediaType... acceptedResponseTypes);
+}

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/AsyncResponse.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/AsyncResponse.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/AsyncResponse.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/AsyncResponse.java Tue Dec 19 11:39:13 2017
@@ -1,73 +1,59 @@
-/*
- * #%L
- * Apache Geronimo JAX-RS Spec 2.0
- * %%
- * Copyright (C) 2003 - 2014 The Apache Software Foundation
- * %%
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * #L%
- */
-
-package javax.ws.rs.container;
-
-import java.util.Collection;
-import java.util.Date;
-import java.util.Map;
-import java.util.concurrent.TimeUnit;
-
-
-public interface AsyncResponse {
-    long NO_TIMEOUT = 0;
-
-
-    boolean resume(Object response);
-
-
-    boolean resume(Throwable response);
-
-
-    boolean cancel();
-
-
-    boolean cancel(int retryAfter);
-
-
-    boolean cancel(Date retryAfter);
-
-
-    boolean isSuspended();
-
-
-    boolean isCancelled();
-
-
-    boolean isDone();
-
-
-    boolean setTimeout(long time, TimeUnit unit);
-
-
-    void setTimeoutHandler(TimeoutHandler handler);
-
-
-    Collection<Class<?>> register(Class<?> callback);
-
-
-    Map<Class<?>, Collection<Class<?>>> register(Class<?> callback, Class<?>... callbacks);
-
-
-    Collection<Class<?>> register(Object callback);
-
-
-    Map<Class<?>, Collection<Class<?>>> register(Object callback, Object... callbacks);
-}
+/*
+ * #%L
+ * Apache Geronimo JAX-RS Spec 2.0
+ * %%
+ * Copyright (C) 2003 - 2014 The Apache Software Foundation
+ * %%
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * #L%
+ */
+
+package javax.ws.rs.container;
+
+import java.util.Collection;
+import java.util.Date;
+import java.util.Map;
+import java.util.concurrent.TimeUnit;
+
+public interface AsyncResponse {
+
+    long NO_TIMEOUT = 0;
+
+    boolean resume(Object response);
+
+    boolean resume(Throwable response);
+
+    boolean cancel();
+
+    boolean cancel(int retryAfter);
+
+    boolean cancel(Date retryAfter);
+
+    boolean isSuspended();
+
+    boolean isCancelled();
+
+    boolean isDone();
+
+    boolean setTimeout(long time, TimeUnit unit);
+
+    void setTimeoutHandler(TimeoutHandler handler);
+
+    Collection<Class<?>> register(Class<?> callback);
+
+    Map<Class<?>, Collection<Class<?>>> register(Class<?> callback, Class<?>... callbacks);
+
+    Collection<Class<?>> register(Object callback);
+
+    Map<Class<?>, Collection<Class<?>>> register(Object callback, Object... callbacks);
+}

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/CompletionCallback.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/CompletionCallback.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/CompletionCallback.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/CompletionCallback.java Tue Dec 19 11:39:13 2017
@@ -8,7 +8,7 @@
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
  * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
@@ -20,7 +20,6 @@
 
 package javax.ws.rs.container;
 
-
 public interface CompletionCallback {
 
     public void onComplete(Throwable throwable);

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ConnectionCallback.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ConnectionCallback.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ConnectionCallback.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ConnectionCallback.java Tue Dec 19 11:39:13 2017
@@ -8,7 +8,7 @@
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
  * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
@@ -20,8 +20,7 @@
 
 package javax.ws.rs.container;
 
-
 public interface ConnectionCallback {
 
-    void onDisconnect(AsyncResponse disconnected);
+    public void onDisconnect(AsyncResponse disconnected);
 }

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerRequestContext.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerRequestContext.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerRequestContext.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerRequestContext.java Tue Dec 19 11:39:13 2017
@@ -1,115 +1,90 @@
-/*
- * #%L
- * Apache Geronimo JAX-RS Spec 2.0
- * %%
- * Copyright (C) 2003 - 2014 The Apache Software Foundation
- * %%
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * #L%
- */
-
-package javax.ws.rs.container;
-
-import javax.ws.rs.core.Cookie;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.Request;
-import javax.ws.rs.core.Response;
-import javax.ws.rs.core.SecurityContext;
-import javax.ws.rs.core.UriInfo;
-import java.io.InputStream;
-import java.net.URI;
-import java.util.Collection;
-import java.util.Date;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-
-
-public interface ContainerRequestContext {
-
-
-    Object getProperty(String name);
-
-
-    Collection<String> getPropertyNames();
-
-
-    void setProperty(String name, Object object);
-
-
-    void removeProperty(String name);
-
-
-    UriInfo getUriInfo();
-
-
-    void setRequestUri(URI requestUri);
-
-
-    void setRequestUri(URI baseUri, URI requestUri);
-
-
-    Request getRequest();
-
-
-    String getMethod();
-
-
-    void setMethod(String method);
-
-
-    MultivaluedMap<String, String> getHeaders();
-
-
-    String getHeaderString(String name);
-
-
-    Date getDate();
-
-
-    Locale getLanguage();
-
-
-    int getLength();
-
-
-    MediaType getMediaType();
-
-
-    List<MediaType> getAcceptableMediaTypes();
-
-
-    List<Locale> getAcceptableLanguages();
-
-
-    Map<String, Cookie> getCookies();
-
-
-    boolean hasEntity();
-
-
-    InputStream getEntityStream();
-
-
-    void setEntityStream(InputStream input);
-
-
-    SecurityContext getSecurityContext();
-
-
-    void setSecurityContext(SecurityContext context);
-
-
-    void abortWith(Response response);
-}
+/*
+ * #%L
+ * Apache Geronimo JAX-RS Spec 2.0
+ * %%
+ * Copyright (C) 2003 - 2014 The Apache Software Foundation
+ * %%
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * #L%
+ */
+
+package javax.ws.rs.container;
+
+import java.io.InputStream;
+import java.net.URI;
+import java.util.Collection;
+import java.util.Date;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+
+import javax.ws.rs.core.Cookie;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.MultivaluedMap;
+import javax.ws.rs.core.Request;
+import javax.ws.rs.core.Response;
+import javax.ws.rs.core.SecurityContext;
+import javax.ws.rs.core.UriInfo;
+
+public interface ContainerRequestContext {
+
+    public Object getProperty(String name);
+
+    public Collection<String> getPropertyNames();
+
+    public void setProperty(String name, Object object);
+
+    public void removeProperty(String name);
+
+    public UriInfo getUriInfo();
+
+    public void setRequestUri(URI requestUri);
+
+    public void setRequestUri(URI baseUri, URI requestUri);
+
+    public Request getRequest();
+
+    public String getMethod();
+
+    public void setMethod(String method);
+
+    public MultivaluedMap<String, String> getHeaders();
+
+    public String getHeaderString(String name);
+
+    public Date getDate();
+
+    public Locale getLanguage();
+
+    public int getLength();
+
+    public MediaType getMediaType();
+
+    public List<MediaType> getAcceptableMediaTypes();
+
+    public List<Locale> getAcceptableLanguages();
+
+    public Map<String, Cookie> getCookies();
+
+    public boolean hasEntity();
+
+    public InputStream getEntityStream();
+
+    public void setEntityStream(InputStream input);
+
+    public SecurityContext getSecurityContext();
+
+    public void setSecurityContext(SecurityContext context);
+
+    public void abortWith(Response response);
+}

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerRequestFilter.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerRequestFilter.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerRequestFilter.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerRequestFilter.java Tue Dec 19 11:39:13 2017
@@ -8,7 +8,7 @@
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
  * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
@@ -22,9 +22,7 @@ package javax.ws.rs.container;
 
 import java.io.IOException;
 
-
 public interface ContainerRequestFilter {
 
-
     public void filter(ContainerRequestContext requestContext) throws IOException;
 }

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerResponseContext.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerResponseContext.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerResponseContext.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerResponseContext.java Tue Dec 19 11:39:13 2017
@@ -1,127 +1,98 @@
-/*
- * #%L
- * Apache Geronimo JAX-RS Spec 2.0
- * %%
- * Copyright (C) 2003 - 2014 The Apache Software Foundation
- * %%
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * #L%
- */
-
-package javax.ws.rs.container;
-
-import javax.ws.rs.core.EntityTag;
-import javax.ws.rs.core.Link;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.MultivaluedMap;
-import javax.ws.rs.core.NewCookie;
-import javax.ws.rs.core.Response;
-import java.io.OutputStream;
-import java.lang.annotation.Annotation;
-import java.lang.reflect.Type;
-import java.net.URI;
-import java.util.Date;
-import java.util.Locale;
-import java.util.Map;
-import java.util.Set;
-
-
-public interface ContainerResponseContext {
-
-
-    int getStatus();
-
-
-    void setStatus(int code);
-
-
-    Response.StatusType getStatusInfo();
-
-
-    void setStatusInfo(Response.StatusType statusInfo);
-
-
-    MultivaluedMap<String, Object> getHeaders();
-
-
-    abstract MultivaluedMap<String, String> getStringHeaders();
-
-
-    String getHeaderString(String name);
-
-
-    Set<String> getAllowedMethods();
-
-
-    Date getDate();
-
-
-    Locale getLanguage();
-
-
-    int getLength();
-
-
-    MediaType getMediaType();
-
-
-    Map<String, NewCookie> getCookies();
-
-
-    EntityTag getEntityTag();
-
-
-    Date getLastModified();
-
-
-    URI getLocation();
-
-
-    Set<Link> getLinks();
-
-
-    boolean hasLink(String relation);
-
-
-    Link getLink(String relation);
-
-
-    Link.Builder getLinkBuilder(String relation);
-
-
-    boolean hasEntity();
-
-
-    Object getEntity();
-
-
-    Class<?> getEntityClass();
-
-
-    Type getEntityType();
-
-
-    void setEntity(final Object entity);
-
-
-    void setEntity(final Object entity, final Annotation[] annotations, final MediaType mediaType);
-
-
-    Annotation[] getEntityAnnotations();
-
-
-    OutputStream getEntityStream();
-
-
-    void setEntityStream(OutputStream outputStream);
-}
+/*
+ * #%L
+ * Apache Geronimo JAX-RS Spec 2.0
+ * %%
+ * Copyright (C) 2003 - 2014 The Apache Software Foundation
+ * %%
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * #L%
+ */
+
+package javax.ws.rs.container;
+
+import java.io.OutputStream;
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Type;
+import java.net.URI;
+import java.util.Date;
+import java.util.Locale;
+import java.util.Map;
+import java.util.Set;
+
+import javax.ws.rs.core.EntityTag;
+import javax.ws.rs.core.Link;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.MultivaluedMap;
+import javax.ws.rs.core.NewCookie;
+import javax.ws.rs.core.Response;
+
+public interface ContainerResponseContext {
+
+    public int getStatus();
+
+    public void setStatus(int code);
+
+    public Response.StatusType getStatusInfo();
+
+    public void setStatusInfo(Response.StatusType statusInfo);
+
+    public MultivaluedMap<String, Object> getHeaders();
+
+    public abstract MultivaluedMap<String, String> getStringHeaders();
+
+    public String getHeaderString(String name);
+
+    public Set<String> getAllowedMethods();
+
+    public Date getDate();
+
+    public Locale getLanguage();
+
+    public int getLength();
+
+    public MediaType getMediaType();
+
+    public Map<String, NewCookie> getCookies();
+
+    public EntityTag getEntityTag();
+
+    public Date getLastModified();
+
+    public URI getLocation();
+
+    public Set<Link> getLinks();
+
+    boolean hasLink(String relation);
+
+    public Link getLink(String relation);
+
+    public Link.Builder getLinkBuilder(String relation);
+
+    public boolean hasEntity();
+
+    public Object getEntity();
+
+    public Class<?> getEntityClass();
+
+    public Type getEntityType();
+
+    public void setEntity(final Object entity);
+
+    public void setEntity(final Object entity, final Annotation[] annotations, final MediaType mediaType);
+
+    public Annotation[] getEntityAnnotations();
+
+    public OutputStream getEntityStream();
+
+    public void setEntityStream(OutputStream outputStream);
+}

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerResponseFilter.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerResponseFilter.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerResponseFilter.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ContainerResponseFilter.java Tue Dec 19 11:39:13 2017
@@ -8,7 +8,7 @@
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
  * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
@@ -22,9 +22,7 @@ package javax.ws.rs.container;
 
 import java.io.IOException;
 
-
 public interface ContainerResponseFilter {
 
-
     public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) throws IOException;
 }

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/DynamicFeature.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/DynamicFeature.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/DynamicFeature.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/DynamicFeature.java Tue Dec 19 11:39:13 2017
@@ -8,7 +8,7 @@
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
  * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
@@ -22,9 +22,7 @@ package javax.ws.rs.container;
 
 import javax.ws.rs.core.FeatureContext;
 
-
 public interface DynamicFeature {
 
-
-    void configure(ResourceInfo resourceInfo, FeatureContext context);
+    public void configure(ResourceInfo resourceInfo, FeatureContext context);
 }

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/PreMatching.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/PreMatching.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/PreMatching.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/PreMatching.java Tue Dec 19 11:39:13 2017
@@ -8,7 +8,7 @@
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
  * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
@@ -17,18 +17,17 @@
  * limitations under the License.
  * #L%
  */
-
-package javax.ws.rs.container;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-
-@Target({ElementType.TYPE})
-@Retention(RetentionPolicy.RUNTIME)
-@Documented
-public @interface PreMatching {
-}
+
+package javax.ws.rs.container;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+@Target({ ElementType.TYPE })
+@Retention(RetentionPolicy.RUNTIME)
+@Documented
+public @interface PreMatching {
+}

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ResourceContext.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ResourceContext.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ResourceContext.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ResourceContext.java Tue Dec 19 11:39:13 2017
@@ -8,7 +8,7 @@
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
  * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
@@ -22,9 +22,7 @@ package javax.ws.rs.container;
 
 public interface ResourceContext {
 
+    public <T> T getResource(Class<T> resourceClass);
 
-    <T> T getResource(Class<T> resourceClass);
-
-
-    <T> T initResource(T resource);
+    public <T> T initResource(T resource);
 }

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ResourceInfo.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ResourceInfo.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ResourceInfo.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/ResourceInfo.java Tue Dec 19 11:39:13 2017
@@ -8,7 +8,7 @@
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
  * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
@@ -22,12 +22,9 @@ package javax.ws.rs.container;
 
 import java.lang.reflect.Method;
 
-
 public interface ResourceInfo {
 
-
     Method getResourceMethod();
 
-
     Class<?> getResourceClass();
 }

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/Suspended.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/Suspended.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/Suspended.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/Suspended.java Tue Dec 19 11:39:13 2017
@@ -8,7 +8,7 @@
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
  * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
@@ -26,8 +26,7 @@ import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
 
-
-@Target({ElementType.PARAMETER})
+@Target({ ElementType.PARAMETER })
 @Retention(RetentionPolicy.RUNTIME)
 @Documented
 public @interface Suspended {

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/TimeoutHandler.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/TimeoutHandler.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/TimeoutHandler.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/container/TimeoutHandler.java Tue Dec 19 11:39:13 2017
@@ -8,7 +8,7 @@
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  * 
- *      http://www.apache.org/licenses/LICENSE-2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
  * 
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
@@ -20,9 +20,7 @@
 
 package javax.ws.rs.container;
 
-
 public interface TimeoutHandler {
 
-
-    void handleTimeout(AsyncResponse asyncResponse);
+    public void handleTimeout(AsyncResponse asyncResponse);
 }

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/core/AbstractMultivaluedMap.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/core/AbstractMultivaluedMap.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/core/AbstractMultivaluedMap.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/core/AbstractMultivaluedMap.java Tue Dec 19 11:39:13 2017
@@ -1,253 +1,240 @@
-/*
- * #%L
- * Apache Geronimo JAX-RS Spec 2.0
- * %%
- * Copyright (C) 2003 - 2014 The Apache Software Foundation
- * %%
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * #L%
- */
-
-package javax.ws.rs.core;
-
-import java.util.Collection;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-
-public abstract class AbstractMultivaluedMap<K, V> implements MultivaluedMap<K, V> {
-
-
-    protected final Map<K, List<V>> store;
-
-
-    public AbstractMultivaluedMap(Map<K, List<V>> store) {
-        if (store == null) {
-            throw new NullPointerException("Underlying store must not be 'null'.");
-        }
-        this.store = store;
-    }
-
-
-    @Override
-    public final void putSingle(K key, V value) {
-        List<V> values = getValues(key);
-
-        values.clear();
-        if (value != null) {
-            values.add(value);
-        } else {
-            addNull(values);
-        }
-    }
-
-
-    @SuppressWarnings("UnusedParameters")
-    protected void addNull(List<V> values) {
-
-    }
-
-
-    @SuppressWarnings("UnusedParameters")
-    protected void addFirstNull(List<V> values) {
-
-    }
-
-
-    @Override
-    public final void add(K key, V value) {
-        List<V> values = getValues(key);
-
-        if (value != null) {
-            values.add(value);
-        } else {
-            addNull(values);
-        }
-    }
-
-
-    @Override
-    public final void addAll(K key, V... newValues) {
-        if (newValues == null) {
-            throw new NullPointerException("Supplied array of values must not be null.");
-        }
-        if (newValues.length == 0) {
-            return;
-        }
-
-        List<V> values = getValues(key);
-
-        for (V value : newValues) {
-            if (value != null) {
-                values.add(value);
-            } else {
-                addNull(values);
-            }
-        }
-    }
-
-
-    @Override
-    public final void addAll(K key, List<V> valueList) {
-        if (valueList == null) {
-            throw new NullPointerException("Supplied list of values must not be null.");
-        }
-        if (valueList.isEmpty()) {
-            return;
-        }
-
-        List<V> values = getValues(key);
-
-        for (V value : valueList) {
-            if (value != null) {
-                values.add(value);
-            } else {
-                addNull(values);
-            }
-        }
-    }
-
-    @Override
-    public final V getFirst(K key) {
-        List<V> values = store.get(key);
-        if (values != null && values.size() > 0) {
-            return values.get(0);
-        } else {
-            return null;
-        }
-    }
-
-
-    @Override
-    public final void addFirst(K key, V value) {
-        List<V> values = getValues(key);
-
-        if (value != null) {
-            values.add(0, value);
-        } else {
-            addFirstNull(values);
-        }
-    }
-
-
-    protected final List<V> getValues(K key) {
-        List<V> l = store.get(key);
-        if (l == null) {
-            l = new LinkedList<V>();
-            store.put(key, l);
-        }
-        return l;
-    }
-
-    @Override
-    public String toString() {
-        return store.toString();
-    }
-
-
-    @Override
-    public int hashCode() {
-        return store.hashCode();
-    }
-
-
-    @Override
-    @SuppressWarnings("EqualsWhichDoesntCheckParameterClass")
-    public boolean equals(Object o) {
-        return store.equals(o);
-    }
-
-    @Override
-    public Collection<List<V>> values() {
-        return store.values();
-    }
-
-    @Override
-    public int size() {
-        return store.size();
-    }
-
-    @Override
-    public List<V> remove(Object key) {
-        return store.remove(key);
-    }
-
-    @Override
-    public void putAll(Map<? extends K, ? extends List<V>> m) {
-        store.putAll(m);
-    }
-
-    @Override
-    public List<V> put(K key, List<V> value) {
-        return store.put(key, value);
-    }
-
-    @Override
-    public Set<K> keySet() {
-        return store.keySet();
-    }
-
-    @Override
-    public boolean isEmpty() {
-        return store.isEmpty();
-    }
-
-    @Override
-    public List<V> get(Object key) {
-        return store.get(key);
-    }
-
-    @Override
-    public Set<Entry<K, List<V>>> entrySet() {
-        return store.entrySet();
-    }
-
-    @Override
-    public boolean containsValue(Object value) {
-        return store.containsValue(value);
-    }
-
-    @Override
-    public boolean containsKey(Object key) {
-        return store.containsKey(key);
-    }
-
-    @Override
-    public void clear() {
-        store.clear();
-    }
-
-    @Override
-    public boolean equalsIgnoreValueOrder(MultivaluedMap<K, V> omap) {
-        if (this == omap) {
-            return true;
-        }
-        if (!keySet().equals(omap.keySet())) {
-            return false;
-        }
-        for (Entry<K, List<V>> e : entrySet()) {
-            List<V> olist = omap.get(e.getKey());
-            if (e.getValue().size() != olist.size()) {
-                return false;
-            }
-            for (V v : e.getValue()) {
-                if (!olist.contains(v)) {
-                    return false;
-                }
-            }
-        }
-        return true;
-    }
-}
+/*
+ * #%L
+ * Apache Geronimo JAX-RS Spec 2.0
+ * %%
+ * Copyright (C) 2003 - 2014 The Apache Software Foundation
+ * %%
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * #L%
+ */
+
+package javax.ws.rs.core;
+
+import java.util.Collection;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+public abstract class AbstractMultivaluedMap<K, V> implements MultivaluedMap<K, V> {
+
+    protected final Map<K, List<V>> store;
+
+    public AbstractMultivaluedMap(Map<K, List<V>> store) {
+        if (store == null) {
+            throw new NullPointerException("Underlying store must not be 'null'.");
+        }
+        this.store = store;
+    }
+
+    @Override
+    public final void putSingle(K key, V value) {
+        List<V> values = getValues(key);
+
+        values.clear();
+        if (value != null) {
+            values.add(value);
+        } else {
+            addNull(values);
+        }
+    }
+
+    @SuppressWarnings("UnusedParameters")
+    protected void addNull(List<V> values) {
+
+    }
+
+    @SuppressWarnings("UnusedParameters")
+    protected void addFirstNull(List<V> values) {
+
+    }
+
+    @Override
+    public final void add(K key, V value) {
+        List<V> values = getValues(key);
+
+        if (value != null) {
+            values.add(value);
+        } else {
+            addNull(values);
+        }
+    }
+
+    @Override
+    public final void addAll(K key, V... newValues) {
+        if (newValues == null) {
+            throw new NullPointerException("Supplied array of values must not be null.");
+        }
+        if (newValues.length == 0) {
+            return;
+        }
+
+        List<V> values = getValues(key);
+
+        for (V value : newValues) {
+            if (value != null) {
+                values.add(value);
+            } else {
+                addNull(values);
+            }
+        }
+    }
+
+    @Override
+    public final void addAll(K key, List<V> valueList) {
+        if (valueList == null) {
+            throw new NullPointerException("Supplied list of values must not be null.");
+        }
+        if (valueList.isEmpty()) {
+            return;
+        }
+
+        List<V> values = getValues(key);
+
+        for (V value : valueList) {
+            if (value != null) {
+                values.add(value);
+            } else {
+                addNull(values);
+            }
+        }
+    }
+
+    @Override
+    public final V getFirst(K key) {
+        List<V> values = store.get(key);
+        if (values != null && values.size() > 0) {
+            return values.get(0);
+        } else {
+            return null;
+        }
+    }
+
+    @Override
+    public final void addFirst(K key, V value) {
+        List<V> values = getValues(key);
+
+        if (value != null) {
+            values.add(0, value);
+        } else {
+            addFirstNull(values);
+        }
+    }
+
+    protected final List<V> getValues(K key) {
+        List<V> l = store.get(key);
+        if (l == null) {
+            l = new LinkedList<V>();
+            store.put(key, l);
+        }
+        return l;
+    }
+
+    @Override
+    public String toString() {
+        return store.toString();
+    }
+
+    @Override
+    public int hashCode() {
+        return store.hashCode();
+    }
+
+    @Override
+    @SuppressWarnings("EqualsWhichDoesntCheckParameterClass")
+    public boolean equals(Object o) {
+        return store.equals(o);
+    }
+
+    @Override
+    public Collection<List<V>> values() {
+        return store.values();
+    }
+
+    @Override
+    public int size() {
+        return store.size();
+    }
+
+    @Override
+    public List<V> remove(Object key) {
+        return store.remove(key);
+    }
+
+    @Override
+    public void putAll(Map<? extends K, ? extends List<V>> m) {
+        store.putAll(m);
+    }
+
+    @Override
+    public List<V> put(K key, List<V> value) {
+        return store.put(key, value);
+    }
+
+    @Override
+    public Set<K> keySet() {
+        return store.keySet();
+    }
+
+    @Override
+    public boolean isEmpty() {
+        return store.isEmpty();
+    }
+
+    @Override
+    public List<V> get(Object key) {
+        return store.get(key);
+    }
+
+    @Override
+    public Set<Entry<K, List<V>>> entrySet() {
+        return store.entrySet();
+    }
+
+    @Override
+    public boolean containsValue(Object value) {
+        return store.containsValue(value);
+    }
+
+    @Override
+    public boolean containsKey(Object key) {
+        return store.containsKey(key);
+    }
+
+    @Override
+    public void clear() {
+        store.clear();
+    }
+
+    @Override
+    public boolean equalsIgnoreValueOrder(MultivaluedMap<K, V> omap) {
+        if (this == omap) {
+            return true;
+        }
+        if (!keySet().equals(omap.keySet())) {
+            return false;
+        }
+        for (Entry<K, List<V>> e : entrySet()) {
+            List<V> olist = omap.get(e.getKey());
+            if (e.getValue().size() != olist.size()) {
+                return false;
+            }
+            for (V v : e.getValue()) {
+                if (!olist.contains(v)) {
+                    return false;
+                }
+            }
+        }
+        return true;
+    }
+}

Modified: geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/core/Application.java
URL: http://svn.apache.org/viewvc/geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/core/Application.java?rev=1818654&r1=1818653&r2=1818654&view=diff
==============================================================================
--- geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/core/Application.java (original)
+++ geronimo/specs/trunk/geronimo-jaxrs_2.1_spec/src/main/java/javax/ws/rs/core/Application.java Tue Dec 19 11:39:13 2017
@@ -1,44 +1,40 @@
-/*
- * #%L
- * Apache Geronimo JAX-RS Spec 2.0
- * %%
- * Copyright (C) 2003 - 2014 The Apache Software Foundation
- * %%
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * #L%
- */
-
-package javax.ws.rs.core;
-
-import java.util.Collections;
-import java.util.Map;
-import java.util.Set;
-
-
-public class Application {
-
-
-    public Set<Class<?>> getClasses() {
-        return Collections.emptySet();
-    }
-
-
-    public Set<Object> getSingletons() {
-        return Collections.emptySet();
-    }
-
-
-    public Map<String, Object> getProperties() {
-        return Collections.emptyMap();
-    }
-}
+/*
+ * #%L
+ * Apache Geronimo JAX-RS Spec 2.0
+ * %%
+ * Copyright (C) 2003 - 2014 The Apache Software Foundation
+ * %%
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * #L%
+ */
+
+package javax.ws.rs.core;
+
+import java.util.Collections;
+import java.util.Map;
+import java.util.Set;
+
+public class Application {
+
+    public Set<Class<?>> getClasses() {
+        return Collections.emptySet();
+    }
+
+    public Set<Object> getSingletons() {
+        return Collections.emptySet();
+    }
+
+    public Map<String, Object> getProperties() {
+        return Collections.emptyMap();
+    }
+}



Mime
View raw message