Skip to content
This repository was archived by the owner on Nov 7, 2024. It is now read-only.

Commit 8ddf02b

Browse files
committed
#44
Update jsonp-jaxrs for JSON 1.1
1 parent 0ee2377 commit 8ddf02b

4 files changed

Lines changed: 33 additions & 30 deletions

File tree

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,10 @@ target/
1515
.classpath
1616
.project
1717

18+
#NetBeans noise
19+
nbproject/
20+
1821
#Java noise
1922
*.class
2023
api/doc
2124
*err_pid*.log
22-

jaxrs/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@
5656
<packaging>bundle</packaging>
5757
<version>1.1.0-SNAPSHOT</version>
5858
<name>JSR 374 (JSON Processing) Media for JAX-RS</name>
59-
<description>JAX-RS MessageBodyReader and MessageBodyWriter to support JsonObject/JsonArray/JsonStructure API of JSR 374:Java API for Processing JSON</description>
59+
<description>JAX-RS MessageBodyReader and MessageBodyWriter to support JsonValue API of JSR 374:Java API for Processing JSON</description>
6060
<url>http://json-processing-spec.java.net</url>
6161
<build>
6262
<plugins>

jaxrs/src/main/java/org/glassfish/json/jaxrs/JsonStructureBodyReader.java

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -40,34 +40,32 @@
4040

4141
package org.glassfish.json.jaxrs;
4242

43+
import java.io.IOException;
44+
import java.io.InputStream;
45+
import java.lang.annotation.Annotation;
46+
import java.lang.reflect.Type;
4347
import javax.json.Json;
4448
import javax.json.JsonReader;
4549
import javax.json.JsonReaderFactory;
46-
import javax.json.JsonStructure;
50+
import javax.json.JsonValue;
4751
import javax.ws.rs.Consumes;
48-
import javax.ws.rs.Produces;
4952
import javax.ws.rs.WebApplicationException;
5053
import javax.ws.rs.core.MediaType;
5154
import javax.ws.rs.core.MultivaluedMap;
5255
import javax.ws.rs.ext.MessageBodyReader;
5356
import javax.ws.rs.ext.Provider;
54-
import java.io.IOException;
55-
import java.io.InputStream;
56-
import java.lang.annotation.Annotation;
57-
import java.lang.reflect.Type;
5857

5958
/**
60-
* JAX-RS MessageBodyReader for JsonStructure. This allows
61-
* JsonStructure, JsonArray and JsonObject to be a parameter of a
62-
* resource method.
59+
* JAX-RS MessageBodyReader for JsonValue. This allows JsonValue
60+
* to be a parameter of a resource method.
6361
*
6462
* @author Jitendra Kotamraju
6563
* @author Blaise Doughan
6664
* @author Michal Gajdos
6765
*/
6866
@Provider
6967
@Consumes({"application/json", "text/json", "*/*"})
70-
public class JsonStructureBodyReader implements MessageBodyReader<JsonStructure> {
68+
public class JsonStructureBodyReader implements MessageBodyReader<JsonValue> {
7169
private final JsonReaderFactory rf = Json.createReaderFactory(null);
7270

7371
private static final String JSON = "json";
@@ -76,7 +74,7 @@ public class JsonStructureBodyReader implements MessageBodyReader<JsonStructure>
7674
@Override
7775
public boolean isReadable(Class<?> aClass, Type type,
7876
Annotation[] annotations, MediaType mediaType) {
79-
return JsonStructure.class.isAssignableFrom(aClass) && supportsMediaType(mediaType);
77+
return JsonValue.class.isAssignableFrom(aClass) && supportsMediaType(mediaType);
8078
}
8179

8280
/**
@@ -88,7 +86,7 @@ private static boolean supportsMediaType(final MediaType mediaType) {
8886
}
8987

9088
@Override
91-
public JsonStructure readFrom(Class<JsonStructure> jsonStructureClass,
89+
public JsonValue readFrom(Class<JsonValue> jsonValueClass,
9290
Type type, Annotation[] annotations, MediaType mediaType,
9391
MultivaluedMap<String, String> stringStringMultivaluedMap,
9492
InputStream inputStream) throws IOException, WebApplicationException {

jaxrs/src/main/java/org/glassfish/json/jaxrs/JsonStructureBodyWriter.java

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -40,35 +40,38 @@
4040

4141
package org.glassfish.json.jaxrs;
4242

43+
import java.io.IOException;
44+
import java.io.OutputStream;
45+
import java.lang.annotation.Annotation;
46+
import java.lang.reflect.Type;
47+
import java.util.HashMap;
48+
import java.util.Map;
4349
import javax.annotation.PostConstruct;
44-
import javax.json.*;
50+
import javax.json.Json;
51+
import javax.json.JsonValue;
52+
import javax.json.JsonWriter;
53+
import javax.json.JsonWriterFactory;
4554
import javax.json.stream.JsonGenerator;
46-
import javax.ws.rs.*;
55+
import javax.ws.rs.Produces;
56+
import javax.ws.rs.WebApplicationException;
4757
import javax.ws.rs.core.Configuration;
4858
import javax.ws.rs.core.Context;
4959
import javax.ws.rs.core.MediaType;
5060
import javax.ws.rs.core.MultivaluedMap;
5161
import javax.ws.rs.ext.MessageBodyWriter;
5262
import javax.ws.rs.ext.Provider;
53-
import java.io.IOException;
54-
import java.io.OutputStream;
55-
import java.lang.annotation.Annotation;
56-
import java.lang.reflect.Type;
57-
import java.util.HashMap;
58-
import java.util.Map;
5963

6064
/**
61-
* JAX-RS MessageBodyWriter for JsonStructure. This allows
62-
* JsonStructure, JsonArray and JsonObject to be return type of a
63-
* resource method.
65+
* JAX-RS MessageBodyWriter for JsonValue. This allows JsonValue
66+
* to be return type of a resource method.
6467
*
6568
* @author Jitendra Kotamraju
6669
* @author Blaise Doughan
6770
* @author Michal Gajdos
6871
*/
6972
@Provider
7073
@Produces({"application/json", "text/json", "*/*"})
71-
public class JsonStructureBodyWriter implements MessageBodyWriter<JsonStructure> {
74+
public class JsonStructureBodyWriter implements MessageBodyWriter<JsonValue> {
7275
private static final String JSON = "json";
7376
private static final String PLUS_JSON = "+json";
7477

@@ -89,7 +92,7 @@ private void init() {
8992
@Override
9093
public boolean isWriteable(Class<?> aClass,
9194
Type type, Annotation[] annotations, MediaType mediaType) {
92-
return JsonStructure.class.isAssignableFrom(aClass) && supportsMediaType(mediaType);
95+
return JsonValue.class.isAssignableFrom(aClass) && supportsMediaType(mediaType);
9396
}
9497

9598
/**
@@ -101,19 +104,19 @@ private static boolean supportsMediaType(final MediaType mediaType) {
101104
}
102105

103106
@Override
104-
public long getSize(JsonStructure jsonStructure, Class<?> aClass,
107+
public long getSize(JsonValue jsonValue, Class<?> aClass,
105108
Type type, Annotation[] annotations, MediaType mediaType) {
106109

107110
return -1;
108111
}
109112

110113
@Override
111-
public void writeTo(JsonStructure jsonStructure, Class<?> aClass, Type type,
114+
public void writeTo(JsonValue jsonValue, Class<?> aClass, Type type,
112115
Annotation[] annotations, MediaType mediaType,
113116
MultivaluedMap<String, Object> stringObjectMultivaluedMap,
114117
OutputStream outputStream) throws IOException, WebApplicationException {
115118
try (JsonWriter writer = wf.createWriter(outputStream)) {
116-
writer.write(jsonStructure);
119+
writer.write(jsonValue);
117120
}
118121
}
119122
}

0 commit comments

Comments
 (0)