You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@polygene.apache.org by pa...@apache.org on 2017/02/03 07:58:03 UTC
[02/19] polygene-java git commit: Serialization 3 step 1
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rdf/src/main/java/org/apache/polygene/library/rdf/entity/EntityStateSerializer.java
----------------------------------------------------------------------
diff --git a/libraries/rdf/src/main/java/org/apache/polygene/library/rdf/entity/EntityStateSerializer.java b/libraries/rdf/src/main/java/org/apache/polygene/library/rdf/entity/EntityStateSerializer.java
index 7477179..0bd823b 100644
--- a/libraries/rdf/src/main/java/org/apache/polygene/library/rdf/entity/EntityStateSerializer.java
+++ b/libraries/rdf/src/main/java/org/apache/polygene/library/rdf/entity/EntityStateSerializer.java
@@ -27,17 +27,15 @@ import org.apache.polygene.api.entity.EntityDescriptor;
import org.apache.polygene.api.entity.EntityReference;
import org.apache.polygene.api.injection.scope.Service;
import org.apache.polygene.api.property.PropertyDescriptor;
-import org.apache.polygene.api.service.qualifier.Tagged;
+import org.apache.polygene.api.serialization.Serializer;
import org.apache.polygene.api.type.ValueCompositeType;
import org.apache.polygene.api.type.ValueType;
import org.apache.polygene.api.util.Classes;
import org.apache.polygene.api.value.ValueComposite;
-import org.apache.polygene.api.value.ValueSerialization;
-import org.apache.polygene.api.value.ValueSerializer;
-import org.apache.polygene.api.value.ValueSerializer.Options;
import org.apache.polygene.library.rdf.Rdfs;
import org.apache.polygene.spi.entity.EntityState;
import org.apache.polygene.spi.entity.ManyAssociationState;
+import org.apache.polygene.spi.serialization.JsonSerializer;
import org.openrdf.model.BNode;
import org.openrdf.model.Graph;
import org.openrdf.model.Literal;
@@ -52,10 +50,8 @@ import org.openrdf.model.impl.GraphImpl;
*/
public class EntityStateSerializer
{
-
@Service
- @Tagged( ValueSerialization.Formats.JSON )
- private ValueSerializer valueSerializer;
+ private JsonSerializer serializer;
public URI createEntityURI( ValueFactory valueFactory, EntityReference reference )
{
@@ -87,7 +83,8 @@ public class EntityStateSerializer
graph.add( entityUri,
Rdfs.TYPE,
- values.createURI( Classes.toURI( entityState.entityDescriptor().types().findFirst().orElse( null ) ) ) );
+ values.createURI(
+ Classes.toURI( entityState.entityDescriptor().types().findFirst().orElse( null ) ) ) );
serializeProperties( entityState,
graph,
@@ -108,29 +105,26 @@ public class EntityStateSerializer
includeNonQueryable );
}
- private void serializeProperties( final EntityState entityState,
- final Graph graph,
- final Resource subject,
- final EntityDescriptor entityType,
- final boolean includeNonQueryable
- )
+ private void serializeProperties( EntityState entityState,
+ Graph graph, Resource subject,
+ EntityDescriptor entityType,
+ boolean includeNonQueryable )
{
// Properties
- entityType.state().properties().forEach( persistentProperty -> {
- Object property = entityState.propertyValueOf( persistentProperty.qualifiedName() );
- if( property != null )
+ entityType.state().properties().forEach(
+ persistentProperty ->
{
- serializeProperty( persistentProperty, property, subject, graph, includeNonQueryable );
- }
- } );
+ Object property = entityState.propertyValueOf( persistentProperty.qualifiedName() );
+ if( property != null )
+ {
+ serializeProperty( persistentProperty, property, subject, graph, includeNonQueryable );
+ }
+ } );
}
- private void serializeProperty( PropertyDescriptor persistentProperty,
- Object property,
- Resource subject,
- Graph graph,
- boolean includeNonQueryable
- )
+ private void serializeProperty( PropertyDescriptor persistentProperty, Object property,
+ Resource subject, Graph graph,
+ boolean includeNonQueryable )
{
if( !( includeNonQueryable || persistentProperty.queryable() ) )
{
@@ -152,7 +146,7 @@ public class EntityStateSerializer
}
else
{
- String stringProperty = valueSerializer.serialize( new Options().withoutTypeInfo(), property );
+ String stringProperty = serializer.serialize( Serializer.Options.NO_TYPE_INFO, property );
final Literal object = valueFactory.createLiteral( stringProperty );
graph.add( subject, predicate, object );
}
@@ -170,29 +164,44 @@ public class EntityStateSerializer
BNode collection = valueFactory.createBNode();
graph.add( subject, predicate, collection );
- ( (ValueCompositeType) valueType ).properties().forEach( persistentProperty -> {
- Object propertyValue = PolygeneAPI.FUNCTION_COMPOSITE_INSTANCE_OF
- .apply( value )
- .state()
- .propertyFor( persistentProperty.accessor() )
- .get();
-
- if( propertyValue != null )
+ ( (ValueCompositeType) valueType ).properties().forEach(
+ persistentProperty ->
{
- ValueType type = persistentProperty.valueType();
- if( type instanceof ValueCompositeType )
- {
- URI pred = valueFactory.createURI( baseUri, persistentProperty.qualifiedName().name() );
- serializeValueComposite( collection, pred, (ValueComposite) propertyValue, type, graph,
- baseUri + persistentProperty.qualifiedName().name() + "/",
- includeNonQueryable );
- }
- else
+ Object propertyValue
+ = PolygeneAPI.FUNCTION_COMPOSITE_INSTANCE_OF
+ .apply( value )
+ .state()
+ .propertyFor( persistentProperty.accessor() )
+ .get();
+
+ if( propertyValue != null )
{
- serializeProperty( persistentProperty, propertyValue, collection, graph, includeNonQueryable );
+ ValueType type = persistentProperty
+ .valueType();
+ if( type instanceof ValueCompositeType )
+ {
+ URI pred = valueFactory.createURI( baseUri,
+ persistentProperty
+ .qualifiedName()
+ .name() );
+ serializeValueComposite( collection, pred,
+ (ValueComposite) propertyValue,
+ type, graph,
+ baseUri
+ + persistentProperty
+ .qualifiedName()
+ .name() + "/",
+ includeNonQueryable );
+ }
+ else
+ {
+ serializeProperty( persistentProperty,
+ propertyValue,
+ collection, graph,
+ includeNonQueryable );
+ }
}
- }
- } );
+ } );
}
private void serializeAssociations( final EntityState entityState,
@@ -204,15 +213,30 @@ public class EntityStateSerializer
ValueFactory values = graph.getValueFactory();
// Associations
- associations.filter( type -> includeNonQueryable || type.queryable() ).forEach( associationType -> {
- EntityReference associatedId = entityState.associationValueOf( associationType.qualifiedName() );
- if( associatedId != null )
+ associations.filter( type -> includeNonQueryable || type.queryable() ).forEach(
+ associationType ->
{
- URI assocURI = values.createURI( associationType.qualifiedName().toURI() );
- URI assocEntityURI = values.createURI( associatedId.toURI() );
- graph.add( entityUri, assocURI, assocEntityURI );
- }
- } );
+ EntityReference associatedId
+ = entityState
+ .associationValueOf(
+ associationType
+ .qualifiedName() );
+ if( associatedId != null )
+ {
+ URI assocURI = values
+ .createURI(
+ associationType
+ .qualifiedName()
+ .toURI() );
+ URI assocEntityURI
+ = values.createURI(
+ associatedId
+ .toURI() );
+ graph.add( entityUri,
+ assocURI,
+ assocEntityURI );
+ }
+ } );
}
private void serializeManyAssociations( final EntityState entityState,
@@ -225,17 +249,37 @@ public class EntityStateSerializer
ValueFactory values = graph.getValueFactory();
// Many-Associations
- associations.filter( type -> includeNonQueryable || type.queryable() ).forEach( associationType -> {
- BNode collection = values.createBNode();
- graph.add( entityUri, values.createURI( associationType.qualifiedName().toURI() ), collection );
- graph.add( collection, Rdfs.TYPE, Rdfs.SEQ );
-
- ManyAssociationState associatedIds = entityState.manyAssociationValueOf( associationType.qualifiedName() );
- for( EntityReference associatedId : associatedIds )
+ associations.filter( type -> includeNonQueryable || type.queryable() ).forEach(
+ associationType ->
{
- URI assocEntityURI = values.createURI( associatedId.toURI() );
- graph.add( collection, Rdfs.LIST_ITEM, assocEntityURI );
- }
- } );
+ BNode collection = values
+ .createBNode();
+ graph.add( entityUri, values
+ .createURI(
+ associationType
+ .qualifiedName()
+ .toURI() ),
+ collection );
+ graph.add( collection,
+ Rdfs.TYPE,
+ Rdfs.SEQ );
+
+ ManyAssociationState
+ associatedIds
+ = entityState
+ .manyAssociationValueOf(
+ associationType
+ .qualifiedName() );
+ for( EntityReference associatedId : associatedIds )
+ {
+ URI assocEntityURI
+ = values.createURI(
+ associatedId
+ .toURI() );
+ graph.add( collection,
+ Rdfs.LIST_ITEM,
+ assocEntityURI );
+ }
+ } );
}
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rdf/src/test/java/org/apache/polygene/library/rdf/entity/EntitySerializerTest.java
----------------------------------------------------------------------
diff --git a/libraries/rdf/src/test/java/org/apache/polygene/library/rdf/entity/EntitySerializerTest.java b/libraries/rdf/src/test/java/org/apache/polygene/library/rdf/entity/EntitySerializerTest.java
index 0ef8475..fb5b0c3 100644
--- a/libraries/rdf/src/test/java/org/apache/polygene/library/rdf/entity/EntitySerializerTest.java
+++ b/libraries/rdf/src/test/java/org/apache/polygene/library/rdf/entity/EntitySerializerTest.java
@@ -22,17 +22,12 @@ package org.apache.polygene.library.rdf.entity;
import java.io.PrintWriter;
import java.time.Instant;
-import org.apache.polygene.api.identity.StringIdentity;
-import org.apache.polygene.api.time.SystemTime;
-import org.apache.polygene.test.AbstractPolygeneTest;
-import org.junit.Before;
-import org.junit.Test;
-import org.openrdf.model.Statement;
-import org.openrdf.rio.RDFHandlerException;
import org.apache.polygene.api.entity.EntityBuilder;
import org.apache.polygene.api.entity.EntityReference;
+import org.apache.polygene.api.identity.StringIdentity;
import org.apache.polygene.api.injection.scope.Service;
import org.apache.polygene.api.injection.scope.Uses;
+import org.apache.polygene.api.time.SystemTime;
import org.apache.polygene.api.unitofwork.UnitOfWork;
import org.apache.polygene.api.unitofwork.UnitOfWorkCompletionException;
import org.apache.polygene.api.usecase.Usecase;
@@ -46,8 +41,12 @@ import org.apache.polygene.library.rdf.serializer.RdfXmlSerializer;
import org.apache.polygene.spi.entity.EntityState;
import org.apache.polygene.spi.entitystore.EntityStore;
import org.apache.polygene.spi.entitystore.EntityStoreUnitOfWork;
+import org.apache.polygene.test.AbstractPolygeneTest;
import org.apache.polygene.test.EntityTestAssembler;
-import org.apache.polygene.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
+import org.junit.Before;
+import org.junit.Test;
+import org.openrdf.model.Statement;
+import org.openrdf.rio.RDFHandlerException;
/**
* JAVADOC
@@ -64,7 +63,6 @@ public class EntitySerializerTest
throws AssemblyException
{
new EntityTestAssembler().assemble( module );
- new OrgJsonValueSerializationAssembler().assemble( module );
module.entities( TestEntity.class );
module.values( TestValue.class, Test2Value.class );
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-client/build.gradle
----------------------------------------------------------------------
diff --git a/libraries/rest-client/build.gradle b/libraries/rest-client/build.gradle
index 33cb81f..68de79a 100644
--- a/libraries/rest-client/build.gradle
+++ b/libraries/rest-client/build.gradle
@@ -31,7 +31,6 @@ dependencies {
testCompile polygene.core.testsupport
testCompile polygene.library( 'rest-server' )
- testCompile polygene.extension( 'valueserialization-orgjson' )
testRuntime libraries.logback
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/requestwriter/ValueCompositeRequestWriter.java
----------------------------------------------------------------------
diff --git a/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/requestwriter/ValueCompositeRequestWriter.java b/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/requestwriter/ValueCompositeRequestWriter.java
index 90ad77a..8a77d40 100644
--- a/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/requestwriter/ValueCompositeRequestWriter.java
+++ b/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/requestwriter/ValueCompositeRequestWriter.java
@@ -26,11 +26,11 @@ import org.apache.polygene.api.injection.scope.Service;
import org.apache.polygene.api.injection.scope.Structure;
import org.apache.polygene.api.property.StateHolder;
import org.apache.polygene.api.service.qualifier.Tagged;
+import org.apache.polygene.api.serialization.Serialization;
+import org.apache.polygene.api.serialization.SerializationException;
+import org.apache.polygene.api.serialization.Serializer;
import org.apache.polygene.api.value.ValueComposite;
import org.apache.polygene.api.value.ValueDescriptor;
-import org.apache.polygene.api.value.ValueSerialization;
-import org.apache.polygene.api.value.ValueSerializationException;
-import org.apache.polygene.api.value.ValueSerializer;
import org.apache.polygene.library.rest.client.spi.RequestWriter;
import org.apache.polygene.spi.PolygeneSPI;
import org.restlet.Request;
@@ -38,7 +38,6 @@ import org.restlet.data.CharacterSet;
import org.restlet.data.MediaType;
import org.restlet.data.Method;
import org.restlet.data.Reference;
-import org.restlet.engine.io.WriterOutputStream;
import org.restlet.representation.WriterRepresentation;
import org.restlet.resource.ResourceException;
@@ -52,8 +51,8 @@ public class ValueCompositeRequestWriter
private PolygeneSPI spi;
@Service
- @Tagged( ValueSerialization.Formats.JSON )
- private ValueSerializer valueSerializer;
+ @Tagged( Serialization.Formats.JSON )
+ private Serializer serializer;
@Override
public boolean writeRequest(Object requestObject, Request request) throws ResourceException
@@ -80,11 +79,11 @@ public class ValueCompositeRequestWriter
}
else
{
- param = valueSerializer.serialize( value );
+ param = serializer.serialize( value );
}
ref.addQueryParameter( propertyDescriptor.qualifiedName().name(), param );
}
- catch( ValueSerializationException e )
+ catch( SerializationException e )
{
throw new ResourceException( e );
}
@@ -99,7 +98,7 @@ public class ValueCompositeRequestWriter
throws IOException
{
setCharacterSet( CharacterSet.UTF_8 );
- valueSerializer.serialize( valueObject, new WriterOutputStream( writer, CharacterSet.UTF_8 ) );
+ serializer.serialize( writer, valueObject );
}
});
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/responsereader/DefaultResponseReader.java
----------------------------------------------------------------------
diff --git a/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/responsereader/DefaultResponseReader.java b/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/responsereader/DefaultResponseReader.java
index 6d3111b..ff8060b 100644
--- a/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/responsereader/DefaultResponseReader.java
+++ b/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/responsereader/DefaultResponseReader.java
@@ -20,10 +20,11 @@
package org.apache.polygene.library.rest.client.responsereader;
-import java.io.IOException;
-import org.json.JSONException;
-import org.json.JSONTokener;
+import org.apache.polygene.api.injection.scope.Service;
+import org.apache.polygene.api.injection.scope.Structure;
+import org.apache.polygene.api.structure.ModuleDescriptor;
import org.apache.polygene.library.rest.client.spi.ResponseReader;
+import org.apache.polygene.spi.serialization.JsonDeserializer;
import org.restlet.Response;
import org.restlet.data.MediaType;
import org.restlet.resource.ResourceException;
@@ -32,34 +33,31 @@ import org.restlet.resource.ResourceException;
* ResponseReader for simple types from JSON
*/
public class DefaultResponseReader
- implements ResponseReader
+ implements ResponseReader
{
+ @Structure
+ private ModuleDescriptor module;
+
+ @Service
+ private JsonDeserializer jsonDeserializer;
+
@Override
- public Object readResponse(Response response, Class<?> resultType) throws ResourceException
- {
- if (MediaType.APPLICATION_JSON.equals(response.getEntity().getMediaType()))
- if (resultType.equals(String.class))
- {
- try
+ public Object readResponse( Response response, Class<?> resultType ) throws ResourceException
+ {
+ if( MediaType.APPLICATION_JSON.equals( response.getEntity().getMediaType() ) )
+ {
+ if( resultType.equals( String.class ) || Number.class.isAssignableFrom( resultType ) )
{
- return response.getEntity().getText();
- } catch (IOException e)
- {
- throw new ResourceException(e);
+ try
+ {
+ return jsonDeserializer.deserialize( module, resultType, response.getEntityAsText() );
+ }
+ catch( Exception e )
+ {
+ throw new ResourceException( e );
+ }
}
- } else if (Number.class.isAssignableFrom(resultType))
- {
- try
- {
- Number value = (Number) new JSONTokener(response.getEntityAsText()).nextValue();
- if (resultType.equals(Integer.class))
- return Integer.valueOf(value.intValue());
- } catch (JSONException e)
- {
- throw new ResourceException(e);
- }
- }
-
- return null;
- }
+ }
+ return null;
+ }
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/responsereader/JSONResponseReader.java
----------------------------------------------------------------------
diff --git a/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/responsereader/JSONResponseReader.java b/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/responsereader/JSONResponseReader.java
index 7b8d6a0..335c26b 100644
--- a/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/responsereader/JSONResponseReader.java
+++ b/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/responsereader/JSONResponseReader.java
@@ -20,18 +20,19 @@
package org.apache.polygene.library.rest.client.responsereader;
-import java.util.Iterator;
+import java.io.IOException;
+import javax.json.Json;
+import javax.json.JsonException;
+import javax.json.JsonObject;
+import javax.json.JsonString;
+import javax.json.JsonValue;
import org.apache.polygene.api.injection.scope.Service;
import org.apache.polygene.api.injection.scope.Structure;
-import org.apache.polygene.api.service.qualifier.Tagged;
import org.apache.polygene.api.structure.ModuleDescriptor;
import org.apache.polygene.api.type.ValueCompositeType;
import org.apache.polygene.api.value.ValueComposite;
-import org.apache.polygene.api.value.ValueDeserializer;
-import org.apache.polygene.api.value.ValueSerialization;
import org.apache.polygene.library.rest.client.spi.ResponseReader;
-import org.json.JSONException;
-import org.json.JSONObject;
+import org.apache.polygene.spi.serialization.JsonDeserializer;
import org.restlet.Response;
import org.restlet.data.Form;
import org.restlet.data.MediaType;
@@ -41,47 +42,50 @@ import org.restlet.resource.ResourceException;
* JAVADOC
*/
public class JSONResponseReader
- implements ResponseReader
+ implements ResponseReader
{
- @Structure
- private ModuleDescriptor module;
+ @Structure
+ private ModuleDescriptor module;
- @Service
- @Tagged( ValueSerialization.Formats.JSON )
- private ValueDeserializer valueDeserializer;
+ @Service
+ private JsonDeserializer jsonDeserializer;
@Override
- public Object readResponse( Response response, Class<?> resultType )
- {
- if (response.getEntity().getMediaType().equals( MediaType.APPLICATION_JSON))
- {
- if (ValueComposite.class.isAssignableFrom( resultType ))
- {
- String jsonValue = response.getEntityAsText();
- ValueCompositeType valueType = module.valueDescriptor( resultType.getName() ).valueType();
- return valueDeserializer.deserialize( module, valueType, jsonValue );
- }
- else if (resultType.equals(Form.class))
- {
- try
+ public Object readResponse( Response response, Class<?> resultType )
+ {
+ if( response.getEntity().getMediaType().equals( MediaType.APPLICATION_JSON ) )
+ {
+ if( ValueComposite.class.isAssignableFrom( resultType ) )
{
- String jsonValue = response.getEntityAsText();
- JSONObject jsonObject = new JSONObject(jsonValue);
- Iterator<?> keys = jsonObject.keys();
- Form form = new Form();
- while (keys.hasNext())
- {
- Object key = keys.next();
- form.set(key.toString(), jsonObject.get(key.toString()).toString());
- }
- return form;
- } catch (JSONException e)
- {
- throw new ResourceException(e);
+ String jsonValue = response.getEntityAsText();
+ ValueCompositeType valueType = module.valueDescriptor( resultType.getName() ).valueType();
+ return jsonDeserializer.deserialize( module, valueType, jsonValue );
}
- }
- }
+ else if( resultType.equals( Form.class ) )
+ {
+ try
+ {
+ JsonObject jsonObject = Json.createReader( response.getEntity().getReader() ).readObject();
+ Form form = new Form();
+ jsonObject.entrySet().forEach(
+ entry ->
+ {
- return null;
- }
+ String key = entry.getKey();
+ JsonValue value = entry.getValue();
+ String valueString = value.getValueType() == JsonValue.ValueType.STRING
+ ? ( (JsonString) value ).getString()
+ : value.toString();
+ form.set( key, valueString );
+ } );
+ return form;
+ }
+ catch( IOException | JsonException e )
+ {
+ throw new ResourceException( e );
+ }
+ }
+ }
+ return null;
+ }
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/responsereader/TableResponseReader.java
----------------------------------------------------------------------
diff --git a/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/responsereader/TableResponseReader.java b/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/responsereader/TableResponseReader.java
index 4c8ac66..55019a3 100644
--- a/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/responsereader/TableResponseReader.java
+++ b/libraries/rest-client/src/main/java/org/apache/polygene/library/rest/client/responsereader/TableResponseReader.java
@@ -22,15 +22,19 @@ package org.apache.polygene.library.rest.client.responsereader;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
-import java.time.format.DateTimeParseException;
+import java.util.List;
+import javax.json.Json;
+import javax.json.JsonArray;
+import javax.json.JsonObject;
+import javax.json.JsonString;
+import javax.json.JsonValue;
+import org.apache.polygene.api.injection.scope.Service;
import org.apache.polygene.api.injection.scope.Structure;
import org.apache.polygene.api.structure.Module;
import org.apache.polygene.library.rest.client.spi.ResponseReader;
import org.apache.polygene.library.rest.common.table.Table;
import org.apache.polygene.library.rest.common.table.TableBuilder;
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
+import org.apache.polygene.spi.serialization.JsonDeserializer;
import org.restlet.Response;
import org.restlet.data.MediaType;
import org.restlet.data.Status;
@@ -40,74 +44,75 @@ import org.restlet.resource.ResourceException;
* JAVADOC
*/
public class TableResponseReader
- implements ResponseReader
+ implements ResponseReader
{
- @Structure
- Module module;
+ @Structure
+ private Module module;
- @Override
- public Object readResponse( Response response, Class<?> resultType ) throws ResourceException
- {
- if (response.getEntity().getMediaType().equals( MediaType.APPLICATION_JSON) && Table.class.isAssignableFrom( resultType ))
- {
- String jsonValue = response.getEntityAsText();
- try
- {
- JSONObject jsonObject = new JSONObject(jsonValue);
-
- JSONObject table = jsonObject.getJSONObject( "table" );
- TableBuilder builder = new TableBuilder(module);
+ @Service
+ private JsonDeserializer jsonDeserializer;
- JSONArray cols = table.getJSONArray( "cols" );
- for (int i = 0; i < cols.length(); i++)
+ @Override
+ public Object readResponse( Response response, Class<?> resultType ) throws ResourceException
+ {
+ if( response.getEntity().getMediaType().equals( MediaType.APPLICATION_JSON )
+ && Table.class.isAssignableFrom( resultType ) )
+ {
+ try
{
- JSONObject col = cols.getJSONObject( i );
- builder.column( col.optString( "id" ), col.getString( "label" ), col.getString( "type" ));
- }
+ JsonObject jsonObject = Json.createReader( response.getEntity().getReader() ).readObject();
+ JsonObject table = jsonObject.getJsonObject( "table" );
- JSONArray rows = table.getJSONArray( "rows" );
- for (int i = 0; i < rows.length(); i++)
- {
- builder.row();
- JSONObject row = rows.getJSONObject( i );
- JSONArray cells = row.getJSONArray( "c" );
- for (int j = 0; j < cells.length(); j++)
- {
- JSONObject cell = cells.getJSONObject( j );
- Object value = cell.opt( "v" );
- String formatted = cell.optString("f");
+ TableBuilder builder = new TableBuilder( module );
- if (cols.getJSONObject( j ).getString( "type" ).equals("datetime") && value != null)
- value = ZonedDateTime.parse( value.toString() );
- else if (cols.getJSONObject( j ).getString( "type" ).equals("date") && value != null)
- try
- {
- value = DateTimeFormatter.ofPattern( "yyyy-MM-dd").parse( value.toString() );
- } catch (DateTimeParseException e)
- {
- throw new ResourceException(e);
- }
- else if (cols.getJSONObject( j ).getString( "type" ).equals("timeofday") && value != null)
- try
- {
- value = DateTimeFormatter.ofPattern( "HH:mm:ss").parse( value.toString() );
- } catch (DateTimeParseException e)
- {
- throw new ResourceException(e);
- }
+ JsonArray cols = table.getJsonArray( "cols" );
+ cols.getValuesAs( JsonObject.class ).forEach(
+ col -> builder.column( col.getString( "id", null ),
+ col.getString( "label" ),
+ col.getString( "type" ) ) );
- builder.cell( value, formatted );
- }
- builder.endRow();
+ table.getJsonArray( "rows" ).getValuesAs( JsonObject.class ).forEach(
+ row ->
+ {
+ builder.row();
+ List<JsonObject> cells = row.getJsonArray( "c" ).getValuesAs( JsonObject.class );
+ for( int idx = 0; idx < cells.size(); idx++ )
+ {
+ JsonObject cell = cells.get( idx );
+ JsonValue jsonValue = cell.get( "v" );
+ String formatted = cell.getString( "f", null );
+ String type = cols.getJsonObject( idx ).getString( "type" );
+ Object value;
+ switch( type )
+ {
+ case "datetime":
+ value = ZonedDateTime.parse( ( (JsonString) jsonValue ).getString() );
+ break;
+ case "date":
+ value = DateTimeFormatter.ofPattern( "yyyy-MM-dd" )
+ .parse( ( (JsonString) jsonValue ).getString() );
+ break;
+ case "timeofday":
+ value = DateTimeFormatter.ofPattern( "HH:mm:ss" )
+ .parse( ( (JsonString) jsonValue ).getString() );
+ break;
+ default:
+ value = jsonValue.getValueType() == JsonValue.ValueType.STRING
+ ? ( (JsonString) jsonValue ).getString()
+ : jsonValue.toString();
+ }
+ builder.cell( value, formatted );
+ }
+ builder.endRow();
+ }
+ );
+ return builder.newTable();
}
-
- return builder.newTable();
- } catch (JSONException e)
- {
- throw new ResourceException( Status.CLIENT_ERROR_UNPROCESSABLE_ENTITY, e);
- }
- }
-
- return null;
- }
+ catch( Exception e )
+ {
+ throw new ResourceException( Status.CLIENT_ERROR_UNPROCESSABLE_ENTITY, e );
+ }
+ }
+ return null;
+ }
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-client/src/test/java/org/apache/polygene/library/rest/client/ContextResourceClientFactoryTest.java
----------------------------------------------------------------------
diff --git a/libraries/rest-client/src/test/java/org/apache/polygene/library/rest/client/ContextResourceClientFactoryTest.java b/libraries/rest-client/src/test/java/org/apache/polygene/library/rest/client/ContextResourceClientFactoryTest.java
index 771cbd6..e979d43 100644
--- a/libraries/rest-client/src/test/java/org/apache/polygene/library/rest/client/ContextResourceClientFactoryTest.java
+++ b/libraries/rest-client/src/test/java/org/apache/polygene/library/rest/client/ContextResourceClientFactoryTest.java
@@ -26,14 +26,12 @@ import org.apache.polygene.api.common.Optional;
import org.apache.polygene.api.common.UseDefaults;
import org.apache.polygene.api.composite.TransientComposite;
import org.apache.polygene.api.constraint.Name;
-import org.apache.polygene.api.entity.EntityComposite;
import org.apache.polygene.api.injection.scope.Structure;
import org.apache.polygene.api.injection.scope.Uses;
import org.apache.polygene.api.property.Property;
import org.apache.polygene.api.structure.Application;
import org.apache.polygene.api.structure.ApplicationDescriptor;
import org.apache.polygene.api.structure.Module;
-import org.apache.polygene.api.type.HasTypes;
import org.apache.polygene.api.unitofwork.ConcurrentEntityModificationException;
import org.apache.polygene.api.unitofwork.UnitOfWorkCallback;
import org.apache.polygene.api.unitofwork.UnitOfWorkCompletionException;
@@ -72,7 +70,6 @@ import org.apache.polygene.library.rest.server.restlet.NullCommandResult;
import org.apache.polygene.library.rest.server.spi.CommandResult;
import org.apache.polygene.test.AbstractPolygeneTest;
import org.apache.polygene.test.util.FreePortFinder;
-import org.apache.polygene.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
import org.hamcrest.CoreMatchers;
import org.junit.After;
import org.junit.Assert;
@@ -112,7 +109,6 @@ public class ContextResourceClientFactoryTest
throws AssemblyException
{
// General setup of client and server
- new OrgJsonValueSerializationAssembler().assemble( module );
new ClientAssembler().assemble( module );
new ValueAssembler().assemble( module );
new RestServerAssembler().assemble( module );
@@ -568,12 +564,12 @@ public class ContextResourceClientFactoryTest
public TestResult queryWithValue( TestQuery query )
{
- return vbf.newValueFromSerializedState( TestResult.class, "{'xyz':'"+query.abc().get()+"'}" );
+ return vbf.newValueFromSerializedState( TestResult.class, "{\"xyz\":\""+query.abc().get()+"\"}" );
}
public TestResult queryWithoutValue()
{
- return vbf.newValueFromSerializedState( TestResult.class, "{'xyz':'bar'}" );
+ return vbf.newValueFromSerializedState( TestResult.class, "{\"xyz\":\"bar\"}" );
}
public String queryWithStringResult( TestQuery query )
@@ -609,7 +605,7 @@ public class ContextResourceClientFactoryTest
public void beforeCompletion()
throws UnitOfWorkCompletionException
{
- throw new ConcurrentEntityModificationException( Collections.<EntityComposite, HasTypes>emptyMap(),
+ throw new ConcurrentEntityModificationException( Collections.emptyMap(),
UsecaseBuilder.newUsecase( "Testing" ) );
}
@@ -642,7 +638,7 @@ public class ContextResourceClientFactoryTest
public TestResult queryWithValue( TestQuery query )
{
- return module.newValueFromSerializedState( TestResult.class, "{'xyz':'bar'}" );
+ return module.newValueFromSerializedState( TestResult.class, "{\"xyz\":\"bar\"}" );
}
// Test interaction constraints
@@ -650,7 +646,7 @@ public class ContextResourceClientFactoryTest
@Requires( File.class )
public TestResult queryWithRoleRequirement( TestQuery query )
{
- return module.newValueFromSerializedState( TestResult.class, "{'xyz':'bar'}" );
+ return module.newValueFromSerializedState( TestResult.class, "{\"xyz\":\"bar\"}" );
}
@Requires( File.class )
@@ -697,7 +693,7 @@ public class ContextResourceClientFactoryTest
public TestResult genericQuery( TestQuery query )
{
- return module.newValueFromSerializedState( TestResult.class, "{'xyz':'bar'}" );
+ return module.newValueFromSerializedState( TestResult.class, "{\"xyz\":\"bar\"}" );
}
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-client/src/test/java/org/apache/polygene/library/rest/client/ContinuousIntegrationTest.java
----------------------------------------------------------------------
diff --git a/libraries/rest-client/src/test/java/org/apache/polygene/library/rest/client/ContinuousIntegrationTest.java b/libraries/rest-client/src/test/java/org/apache/polygene/library/rest/client/ContinuousIntegrationTest.java
index 69d460e..9d66d36 100644
--- a/libraries/rest-client/src/test/java/org/apache/polygene/library/rest/client/ContinuousIntegrationTest.java
+++ b/libraries/rest-client/src/test/java/org/apache/polygene/library/rest/client/ContinuousIntegrationTest.java
@@ -19,13 +19,6 @@
*/
package org.apache.polygene.library.rest.client;
-import org.apache.polygene.test.AbstractPolygeneTest;
-import org.apache.polygene.test.util.FreePortFinder;
-import org.hamcrest.CoreMatchers;
-import org.junit.After;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
import org.apache.polygene.api.common.Optional;
import org.apache.polygene.api.injection.scope.Structure;
import org.apache.polygene.api.property.Property;
@@ -53,7 +46,13 @@ import org.apache.polygene.library.rest.server.api.ContextRestlet;
import org.apache.polygene.library.rest.server.assembler.RestServerAssembler;
import org.apache.polygene.library.rest.server.restlet.NullCommandResult;
import org.apache.polygene.library.rest.server.spi.CommandResult;
-import org.apache.polygene.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
+import org.apache.polygene.test.AbstractPolygeneTest;
+import org.apache.polygene.test.util.FreePortFinder;
+import org.hamcrest.CoreMatchers;
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
import org.restlet.Client;
import org.restlet.Request;
import org.restlet.Response;
@@ -89,7 +88,6 @@ public class ContinuousIntegrationTest
throws AssemblyException
{
// General setup of client and server
- new OrgJsonValueSerializationAssembler().assemble( module );
new ClientAssembler().assemble( module );
new ValueAssembler().assemble( module );
new RestServerAssembler().assemble( module );
@@ -434,12 +432,12 @@ public class ContinuousIntegrationTest
public BuildResult buildStatus( BuildSpec build )
{
String buildNo = build.buildNo().get(); // or lookup by tag
- return module.newValueFromSerializedState( BuildResult.class, "{ 'buildNo':'" + buildNo + "', 'testsPassed': 37, 'testsFailed': 1}" );
+ return module.newValueFromSerializedState( BuildResult.class, "{ \"buildNo\":\"" + buildNo + "\", \"testsPassed\": 37, \"testsFailed\": 1}" );
}
public ServerStatus serverStatus()
{
- return module.newValueFromSerializedState( ServerStatus.class, "{'currentStatus':'Idle', 'availableAgents': 2 }" );
+ return module.newValueFromSerializedState( ServerStatus.class, "{\"currentStatus\":\"Idle\", \"availableAgents\": 2 }" );
}
public void tagBuild( TagBuildCommand command )
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-client/src/test/java/org/apache/polygene/library/rest/client/RssReaderTest.java
----------------------------------------------------------------------
diff --git a/libraries/rest-client/src/test/java/org/apache/polygene/library/rest/client/RssReaderTest.java b/libraries/rest-client/src/test/java/org/apache/polygene/library/rest/client/RssReaderTest.java
index a5344d8..bb241df 100644
--- a/libraries/rest-client/src/test/java/org/apache/polygene/library/rest/client/RssReaderTest.java
+++ b/libraries/rest-client/src/test/java/org/apache/polygene/library/rest/client/RssReaderTest.java
@@ -27,8 +27,6 @@ import javax.xml.xpath.XPath;
import javax.xml.xpath.XPathConstants;
import javax.xml.xpath.XPathExpressionException;
import javax.xml.xpath.XPathFactory;
-import org.junit.BeforeClass;
-import org.junit.Test;
import org.apache.polygene.bootstrap.AssemblyException;
import org.apache.polygene.bootstrap.ModuleAssembly;
import org.apache.polygene.library.rest.client.api.ContextResourceClient;
@@ -40,7 +38,8 @@ import org.apache.polygene.library.rest.client.spi.ResponseReader;
import org.apache.polygene.library.rest.client.spi.ResultHandler;
import org.apache.polygene.library.rest.common.ValueAssembler;
import org.apache.polygene.test.AbstractPolygeneTest;
-import org.apache.polygene.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
+import org.junit.BeforeClass;
+import org.junit.Test;
import org.restlet.Client;
import org.restlet.Response;
import org.restlet.data.Protocol;
@@ -75,7 +74,6 @@ public class RssReaderTest
throws AssemblyException
{
// General setup of client
- new OrgJsonValueSerializationAssembler().assemble( module );
new ClientAssembler().assemble( module );
new ValueAssembler().assemble( module );
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-common/src/main/java/org/apache/polygene/library/rest/common/Resource.java
----------------------------------------------------------------------
diff --git a/libraries/rest-common/src/main/java/org/apache/polygene/library/rest/common/Resource.java b/libraries/rest-common/src/main/java/org/apache/polygene/library/rest/common/Resource.java
index 454a961..d9d17d7 100644
--- a/libraries/rest-common/src/main/java/org/apache/polygene/library/rest/common/Resource.java
+++ b/libraries/rest-common/src/main/java/org/apache/polygene/library/rest/common/Resource.java
@@ -55,7 +55,7 @@ public interface Resource
Link resource(String relation);
@Optional
- Property<ValueComposite> index();
+ Property<Object> index();
abstract class Mixin
implements Resource
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/api/ContextResource.java
----------------------------------------------------------------------
diff --git a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/api/ContextResource.java b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/api/ContextResource.java
index d66a8a8..532ed8d 100644
--- a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/api/ContextResource.java
+++ b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/api/ContextResource.java
@@ -428,7 +428,7 @@ public class ContextResource
if( index != null && index instanceof ValueComposite )
{
- builder.prototype().index().set( (ValueComposite) index );
+ builder.prototype().index().set( index );
}
}
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/requestreader/DefaultRequestReader.java
----------------------------------------------------------------------
diff --git a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/requestreader/DefaultRequestReader.java b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/requestreader/DefaultRequestReader.java
index b4736af..48c32b0 100644
--- a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/requestreader/DefaultRequestReader.java
+++ b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/requestreader/DefaultRequestReader.java
@@ -41,14 +41,14 @@ import org.apache.polygene.api.injection.scope.Service;
import org.apache.polygene.api.injection.scope.Structure;
import org.apache.polygene.api.property.PropertyDescriptor;
import org.apache.polygene.api.service.qualifier.Tagged;
+import org.apache.polygene.api.serialization.Deserializer;
+import org.apache.polygene.api.serialization.Serialization;
+import org.apache.polygene.api.serialization.SerializationException;
import org.apache.polygene.api.structure.ModuleDescriptor;
import org.apache.polygene.api.unitofwork.UnitOfWorkFactory;
import org.apache.polygene.api.value.ValueBuilder;
import org.apache.polygene.api.value.ValueBuilderFactory;
import org.apache.polygene.api.value.ValueComposite;
-import org.apache.polygene.api.value.ValueDeserializer;
-import org.apache.polygene.api.value.ValueSerialization;
-import org.apache.polygene.api.value.ValueSerializationException;
import org.apache.polygene.library.rest.server.spi.RequestReader;
import org.restlet.Request;
import org.restlet.Response;
@@ -86,8 +86,8 @@ public class DefaultRequestReader
private ValueBuilderFactory vbf;
@Service
- @Tagged( ValueSerialization.Formats.JSON )
- private ValueDeserializer valueDeserializer;
+ @Tagged( Serialization.Formats.JSON )
+ private Deserializer deserializer;
@Override
@SuppressWarnings( "unchecked" )
@@ -303,9 +303,9 @@ public class DefaultRequestReader
{
try
{
- return valueDeserializer.deserialize( module, propertyDescriptor.valueType(), value );
+ return deserializer.deserialize( module, propertyDescriptor.valueType(), value );
}
- catch( ValueSerializationException e )
+ catch( SerializationException e )
{
throw new IllegalArgumentException( "Query parameter has invalid JSON format", e );
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/AbstractResponseWriter.java
----------------------------------------------------------------------
diff --git a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/AbstractResponseWriter.java b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/AbstractResponseWriter.java
index 7a8458e..358d81d 100644
--- a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/AbstractResponseWriter.java
+++ b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/AbstractResponseWriter.java
@@ -20,7 +20,6 @@
package org.apache.polygene.library.rest.server.restlet.responsewriter;
-import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import org.apache.polygene.library.rest.server.spi.ResponseWriter;
@@ -36,7 +35,7 @@ import org.restlet.representation.Variant;
public abstract class AbstractResponseWriter
implements ResponseWriter
{
- protected static List<Language> ENGLISH = Arrays.asList( Language.ENGLISH );
+ protected static List<Language> ENGLISH = Collections.singletonList( Language.ENGLISH );
protected Variant getVariant( Request request,
List<Language> possibleLanguages,
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/DefaultResponseWriter.java
----------------------------------------------------------------------
diff --git a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/DefaultResponseWriter.java b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/DefaultResponseWriter.java
index 8e480bf..1091612 100644
--- a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/DefaultResponseWriter.java
+++ b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/DefaultResponseWriter.java
@@ -20,7 +20,7 @@
package org.apache.polygene.library.rest.server.restlet.responsewriter;
-import java.util.Arrays;
+import java.util.Collections;
import java.util.List;
import org.restlet.Response;
import org.restlet.data.MediaType;
@@ -33,7 +33,7 @@ import org.restlet.resource.ResourceException;
public class DefaultResponseWriter
extends AbstractResponseWriter
{
- private static final List<MediaType> supportedMediaTypes = Arrays.asList( MediaType.APPLICATION_JSON );
+ private static final List<MediaType> supportedMediaTypes = Collections.singletonList( MediaType.APPLICATION_JSON );
@Override
public boolean writeResponse( final Object result, final Response response )
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/FormResponseWriter.java
----------------------------------------------------------------------
diff --git a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/FormResponseWriter.java b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/FormResponseWriter.java
index 233a80b..f59d166 100644
--- a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/FormResponseWriter.java
+++ b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/FormResponseWriter.java
@@ -29,8 +29,10 @@ import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import org.json.JSONException;
-import org.json.JSONObject;
+import javax.json.Json;
+import javax.json.JsonException;
+import javax.json.JsonObjectBuilder;
+import javax.json.JsonValue;
import org.apache.polygene.api.injection.scope.Service;
import org.restlet.Response;
import org.restlet.data.Form;
@@ -47,7 +49,8 @@ import org.restlet.resource.ResourceException;
public class FormResponseWriter
extends AbstractResponseWriter
{
- private static final List<MediaType> supportedMediaTypes = Arrays.asList( MediaType.TEXT_HTML, MediaType.APPLICATION_JSON );
+ private static final List<MediaType> supportedMediaTypes = Arrays.asList( MediaType.TEXT_HTML,
+ MediaType.APPLICATION_JSON );
@Service
private Configuration cfg;
@@ -61,7 +64,7 @@ public class FormResponseWriter
MediaType type = getVariant( response.getRequest(), ENGLISH, supportedMediaTypes ).getMediaType();
if( MediaType.APPLICATION_JSON.equals( type ) )
{
- JSONObject json = new JSONObject();
+ JsonObjectBuilder builder = Json.createObjectBuilder();
Form form = (Form) result;
try
{
@@ -70,21 +73,21 @@ public class FormResponseWriter
String value = parameter.getValue();
if( value == null )
{
- json.put( parameter.getName(), JSONObject.NULL );
+ builder.add( parameter.getName(), JsonValue.NULL );
}
else
{
- json.put( parameter.getName(), value );
+ builder.add( parameter.getName(), value );
}
}
}
- catch( JSONException e )
+ catch( JsonException e )
{
e.printStackTrace();
}
- StringRepresentation representation
- = new StringRepresentation( json.toString(), MediaType.APPLICATION_JSON );
+ StringRepresentation representation = new StringRepresentation( builder.build().toString(),
+ MediaType.APPLICATION_JSON );
response.setEntity( representation );
return true;
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/JSONResponseWriter.java
----------------------------------------------------------------------
diff --git a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/JSONResponseWriter.java b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/JSONResponseWriter.java
index 86fc8d6..6b9af86 100644
--- a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/JSONResponseWriter.java
+++ b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/JSONResponseWriter.java
@@ -22,7 +22,7 @@ package org.apache.polygene.library.rest.server.restlet.responsewriter;
import java.util.Arrays;
import java.util.List;
-import org.json.JSONObject;
+import javax.json.JsonObject;
import org.restlet.Response;
import org.restlet.data.MediaType;
import org.restlet.representation.StringRepresentation;
@@ -33,28 +33,28 @@ import org.restlet.resource.ResourceException;
*/
public class JSONResponseWriter extends AbstractResponseWriter
{
- private static final List<MediaType> supportedMediaTypes = Arrays.asList( MediaType.TEXT_HTML, MediaType.APPLICATION_JSON );
+ private static final List<MediaType> supportedMediaTypes = Arrays.asList( MediaType.TEXT_HTML,
+ MediaType.APPLICATION_JSON );
@Override
- public boolean writeResponse( final Object result, final Response response )
- throws ResourceException
+ public boolean writeResponse( Object result, Response response ) throws ResourceException
{
- if( result instanceof JSONObject )
+ if( result instanceof JsonObject )
{
MediaType type = getVariant( response.getRequest(), ENGLISH, supportedMediaTypes ).getMediaType();
if( MediaType.APPLICATION_JSON.equals( type ) )
{
- JSONObject json = (JSONObject) result;
- StringRepresentation representation
- = new StringRepresentation( json.toString(), MediaType.APPLICATION_JSON );
+ JsonObject json = (JsonObject) result;
+ StringRepresentation representation = new StringRepresentation( json.toString(),
+ MediaType.APPLICATION_JSON );
response.setEntity( representation );
return true;
}
else if( MediaType.TEXT_HTML.equals( type ) )
{
- JSONObject json = (JSONObject) result;
- StringRepresentation representation
- = new StringRepresentation( json.toString(), MediaType.TEXT_HTML );
+ JsonObject json = (JsonObject) result;
+ StringRepresentation representation = new StringRepresentation( json.toString(),
+ MediaType.TEXT_HTML );
response.setEntity( representation );
return true;
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/LinksResponseWriter.java
----------------------------------------------------------------------
diff --git a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/LinksResponseWriter.java b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/LinksResponseWriter.java
index dea6f15..dcac1db 100644
--- a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/LinksResponseWriter.java
+++ b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/LinksResponseWriter.java
@@ -25,6 +25,7 @@ import freemarker.template.TemplateException;
import java.io.IOException;
import java.io.Writer;
import java.util.Arrays;
+import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -46,7 +47,7 @@ import org.restlet.resource.ResourceException;
public class LinksResponseWriter
extends AbstractResponseWriter
{
- private static final List<MediaType> supportedLinkMediaTypes = Arrays.asList( MediaType.APPLICATION_JSON );
+ private static final List<MediaType> supportedLinkMediaTypes = Collections.singletonList( MediaType.APPLICATION_JSON );
private static final List<MediaType> supportedLinksMediaTypes = Arrays.asList( MediaType.TEXT_HTML, MediaType.APPLICATION_JSON, MediaType.APPLICATION_ATOM );
@Service
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/TableResponseWriter.java
----------------------------------------------------------------------
diff --git a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/TableResponseWriter.java b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/TableResponseWriter.java
index a2ec82b..bbe758c 100644
--- a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/TableResponseWriter.java
+++ b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/TableResponseWriter.java
@@ -28,13 +28,18 @@ import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import javax.json.Json;
+import javax.json.JsonArrayBuilder;
+import javax.json.JsonException;
+import javax.json.JsonObjectBuilder;
import org.apache.polygene.api.injection.scope.Service;
+import org.apache.polygene.api.injection.scope.Structure;
+import org.apache.polygene.api.structure.ModuleDescriptor;
import org.apache.polygene.library.rest.common.table.Cell;
import org.apache.polygene.library.rest.common.table.Column;
import org.apache.polygene.library.rest.common.table.Row;
import org.apache.polygene.library.rest.common.table.Table;
-import org.json.JSONException;
-import org.json.JSONWriter;
+import org.apache.polygene.spi.serialization.JsonSerializer;
import org.restlet.Response;
import org.restlet.data.CharacterSet;
import org.restlet.data.MediaType;
@@ -47,7 +52,14 @@ import org.restlet.resource.ResourceException;
*/
public class TableResponseWriter extends AbstractResponseWriter
{
- private static final List<MediaType> supportedMediaTypes = Arrays.asList( MediaType.TEXT_HTML, MediaType.APPLICATION_JSON );
+ private static final List<MediaType> supportedMediaTypes = Arrays.asList( MediaType.TEXT_HTML,
+ MediaType.APPLICATION_JSON );
+
+ @Structure
+ private ModuleDescriptor module;
+
+ @Service
+ private JsonSerializer jsonSerializer;
@Service
private Configuration cfg;
@@ -61,7 +73,6 @@ public class TableResponseWriter extends AbstractResponseWriter
MediaType type = getVariant( response.getRequest(), ENGLISH, supportedMediaTypes ).getMediaType();
if( MediaType.APPLICATION_JSON.equals( type ) )
{
-
response.setEntity( new WriterRepresentation( MediaType.APPLICATION_JSON )
{
@Override
@@ -70,11 +81,12 @@ public class TableResponseWriter extends AbstractResponseWriter
{
try
{
- JSONWriter json = new JSONWriter( writer );
+ JsonObjectBuilder builder = Json.createObjectBuilder();
Table tableValue = (Table) result;
// Parse parameters
- String tqx = response.getRequest().getResourceRef().getQueryAsForm().getFirstValue( "tqx" );
+ String tqx = response.getRequest().getResourceRef().getQueryAsForm()
+ .getFirstValue( "tqx" );
String reqId = null;
if( tqx != null )
{
@@ -92,77 +104,71 @@ public class TableResponseWriter extends AbstractResponseWriter
}
}
- json.object().key( "version" ).value( "0.6" );
+ builder.add( "version", "0.6" );
if( reqId != null )
{
- json.key( "reqId" ).value( reqId );
+ builder.add( "reqId", reqId );
}
- json.key( "status" ).value( "ok" );
- json.key( "table" ).object();
+ builder.add( "status", "ok" );
+
+ JsonObjectBuilder tableBuilder = Json.createObjectBuilder();
+ JsonArrayBuilder colsBuilder = Json.createArrayBuilder();
List<Column> columnList = tableValue.cols().get();
- json.key( "cols" ).array();
for( Column columnValue : columnList )
{
- json.object().
- key( "id" ).value( columnValue.id().get() ).
- key( "label" ).value( columnValue.label().get() ).
- key( "type" ).value( columnValue.columnType().get() ).
- endObject();
+ colsBuilder.add( Json.createObjectBuilder()
+ .add( "id", columnValue.id().get() )
+ .add( "label", columnValue.label().get() )
+ .add( "type", columnValue.columnType().get() )
+ .build() );
}
- json.endArray();
+ tableBuilder.add( "cols", colsBuilder.build() );
- json.key( "rows" ).array();
+ JsonArrayBuilder rowsBuilder = Json.createArrayBuilder();
for( Row rowValue : tableValue.rows().get() )
{
- json.object();
- json.key( "c" ).array();
+ JsonArrayBuilder cellsBuilder = Json.createArrayBuilder();
int idx = 0;
for( Cell cellValue : rowValue.c().get() )
{
- json.object();
Object value = cellValue.v().get();
- if( columnList.get( idx )
- .columnType()
- .get()
- .equals( Table.DATETIME ) && value != null )
+ if( columnList.get( idx ).columnType().get().equals( Table.DATETIME )
+ && value != null )
{
value = value.toString();
}
- else if( columnList.get( idx )
- .columnType()
- .get()
- .equals( Table.DATE ) && value != null )
+ else if( columnList.get( idx ).columnType().get().equals( Table.DATE )
+ && value != null )
{
value = value.toString();
}
- else if( columnList.get( idx )
- .columnType()
- .get()
- .equals( Table.TIME_OF_DAY ) && value != null )
+ else if( columnList.get( idx ).columnType().get().equals( Table.TIME_OF_DAY )
+ && value != null )
{
value = value.toString();
}
+ JsonObjectBuilder cellBuilder = Json.createObjectBuilder();
if( value != null )
{
- json.key( "v" ).value( value );
+ cellBuilder.add( "v", jsonSerializer.toJson( value ) );
}
if( cellValue.f().get() != null )
{
- json.key( "f" ).value( cellValue.f().get() );
+ cellBuilder.add( "f", cellValue.f().get() );
}
- json.endObject();
-
+ cellsBuilder.add( cellBuilder.build() );
idx++;
}
- json.endArray();
- json.endObject();
+ JsonObjectBuilder rowBuilder = Json.createObjectBuilder();
+ rowBuilder.add( "c", cellsBuilder.build() );
+ rowsBuilder.add( rowBuilder.build() );
}
- json.endArray();
- json.endObject();
- json.endObject();
+ tableBuilder.add( "rows", rowsBuilder.build() );
+ builder.add( "table", tableBuilder.build() );
+ writer.write( builder.build().toString() );
}
- catch( JSONException e )
+ catch( JsonException e )
{
throw new IOException( e );
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/ValueCompositeResponseWriter.java
----------------------------------------------------------------------
diff --git a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/ValueCompositeResponseWriter.java b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/ValueCompositeResponseWriter.java
index 9978b29..a50e9ca 100644
--- a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/ValueCompositeResponseWriter.java
+++ b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/ValueCompositeResponseWriter.java
@@ -32,9 +32,9 @@ import java.util.List;
import java.util.Map;
import org.apache.polygene.api.injection.scope.Service;
import org.apache.polygene.api.service.qualifier.Tagged;
+import org.apache.polygene.api.serialization.Serialization;
+import org.apache.polygene.api.serialization.Serializer;
import org.apache.polygene.api.value.ValueComposite;
-import org.apache.polygene.api.value.ValueSerialization;
-import org.apache.polygene.api.value.ValueSerializer;
import org.restlet.Response;
import org.restlet.data.MediaType;
import org.restlet.representation.Representation;
@@ -53,8 +53,8 @@ public class ValueCompositeResponseWriter extends AbstractResponseWriter
private Configuration cfg;
@Service
- @Tagged( ValueSerialization.Formats.JSON )
- private ValueSerializer valueSerializer;
+ @Tagged( Serialization.Formats.JSON )
+ private Serializer serializer;
@Override
public boolean writeResponse( final Object result, final Response response )
@@ -65,7 +65,7 @@ public class ValueCompositeResponseWriter extends AbstractResponseWriter
MediaType type = getVariant( response.getRequest(), ENGLISH, supportedMediaTypes ).getMediaType();
if( MediaType.APPLICATION_JSON.equals( type ) )
{
- StringRepresentation representation = new StringRepresentation( valueSerializer.serialize( result ),
+ StringRepresentation representation = new StringRepresentation( serializer.serialize( result ),
MediaType.APPLICATION_JSON );
response.setEntity( representation );
return true;
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/ValueDescriptorResponseWriter.java
----------------------------------------------------------------------
diff --git a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/ValueDescriptorResponseWriter.java b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/ValueDescriptorResponseWriter.java
index 5bf1d1b..c5296c1 100644
--- a/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/ValueDescriptorResponseWriter.java
+++ b/libraries/rest-server/src/main/java/org/apache/polygene/library/rest/server/restlet/responsewriter/ValueDescriptorResponseWriter.java
@@ -28,12 +28,14 @@ import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import javax.json.Json;
+import javax.json.JsonException;
+import javax.json.JsonObjectBuilder;
+import javax.json.JsonValue;
import org.apache.polygene.api.injection.scope.Service;
import org.apache.polygene.api.injection.scope.Structure;
import org.apache.polygene.api.structure.ModuleDescriptor;
import org.apache.polygene.api.value.ValueDescriptor;
-import org.json.JSONException;
-import org.json.JSONObject;
import org.restlet.Response;
import org.restlet.data.MediaType;
import org.restlet.representation.Representation;
@@ -46,7 +48,8 @@ import org.restlet.resource.ResourceException;
*/
public class ValueDescriptorResponseWriter extends AbstractResponseWriter
{
- private static final List<MediaType> supportedMediaTypes = Arrays.asList( MediaType.TEXT_HTML, MediaType.APPLICATION_JSON );
+ private static final List<MediaType> supportedMediaTypes = Arrays.asList( MediaType.TEXT_HTML,
+ MediaType.APPLICATION_JSON );
@Structure
private ModuleDescriptor module;
@@ -63,28 +66,33 @@ public class ValueDescriptorResponseWriter extends AbstractResponseWriter
MediaType type = getVariant( response.getRequest(), ENGLISH, supportedMediaTypes ).getMediaType();
if( MediaType.APPLICATION_JSON.equals( type ) )
{
- JSONObject json = new JSONObject();
ValueDescriptor vd = (ValueDescriptor) result;
- vd.state().properties().forEach( propertyDescriptor -> {
- try
+ JsonObjectBuilder builder = Json.createObjectBuilder();
+ vd.state().properties().forEach(
+ propertyDescriptor ->
{
- Object o = propertyDescriptor.initialValue( module );
- if( o == null )
+ try
{
- json.put( propertyDescriptor.qualifiedName().name(), JSONObject.NULL );
+ Object o = propertyDescriptor.initialValue( module );
+ if( o == null )
+ {
+ builder.add( propertyDescriptor.qualifiedName().name(),
+ JsonValue.NULL );
+ }
+ else
+ {
+ builder.add( propertyDescriptor.qualifiedName().name(),
+ o.toString() );
+ }
}
- else
+ catch( JsonException e )
{
- json.put( propertyDescriptor.qualifiedName().name(), o.toString() );
+ throw new RestResponseException( "Unable to serialize " + vd,
+ e );
}
- }
- catch( JSONException e )
- {
- throw new RestResponseException( "Unable to serialize " + vd, e);
- }
- } );
- StringRepresentation representation
- = new StringRepresentation( json.toString(), MediaType.APPLICATION_JSON );
+ } );
+ StringRepresentation representation = new StringRepresentation( builder.build().toString(),
+ MediaType.APPLICATION_JSON );
response.setEntity( representation );
return true;
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest/build.gradle
----------------------------------------------------------------------
diff --git a/libraries/rest/build.gradle b/libraries/rest/build.gradle
index 27d8532..93815a5 100644
--- a/libraries/rest/build.gradle
+++ b/libraries/rest/build.gradle
@@ -35,7 +35,6 @@ dependencies {
testCompile polygene.core.testsupport
testCompile polygene.library( 'http' )
- testCompile polygene.extension( 'valueserialization-orgjson' )
testCompile libraries.http_client
testRuntime libraries.logback
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest/src/main/java/org/apache/polygene/library/rest/admin/EntitiesResource.java
----------------------------------------------------------------------
diff --git a/libraries/rest/src/main/java/org/apache/polygene/library/rest/admin/EntitiesResource.java b/libraries/rest/src/main/java/org/apache/polygene/library/rest/admin/EntitiesResource.java
index b0eb71e..0b07b3e 100644
--- a/libraries/rest/src/main/java/org/apache/polygene/library/rest/admin/EntitiesResource.java
+++ b/libraries/rest/src/main/java/org/apache/polygene/library/rest/admin/EntitiesResource.java
@@ -22,6 +22,7 @@ package org.apache.polygene.library.rest.admin;
import java.io.IOException;
import java.io.OutputStream;
+import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.io.Writer;
import java.util.Arrays;
@@ -31,7 +32,7 @@ import java.util.stream.Stream;
import org.apache.polygene.api.entity.EntityComposite;
import org.apache.polygene.api.entity.EntityReference;
import org.apache.polygene.api.injection.scope.Service;
-import org.apache.polygene.api.value.ValueSerialization;
+import org.apache.polygene.api.serialization.Serialization;
import org.apache.polygene.spi.query.EntityFinder;
import org.apache.polygene.spi.query.EntityFinderException;
import org.restlet.data.CharacterSet;
@@ -64,7 +65,7 @@ public class EntitiesResource
@Service
private EntityFinder entityFinder;
@Service
- private ValueSerialization valueSerialization;
+ private Serialization stateSerialization;
public EntitiesResource()
{
@@ -117,7 +118,7 @@ public class EntitiesResource
public void write( OutputStream outputStream )
throws IOException
{
- valueSerialization.serialize( query, outputStream );
+ stateSerialization.serialize( new OutputStreamWriter( outputStream ), query );
}
};
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest/src/main/java/org/apache/polygene/library/rest/admin/EntityResource.java
----------------------------------------------------------------------
diff --git a/libraries/rest/src/main/java/org/apache/polygene/library/rest/admin/EntityResource.java b/libraries/rest/src/main/java/org/apache/polygene/library/rest/admin/EntityResource.java
index cbdb34d..9eb3c17 100644
--- a/libraries/rest/src/main/java/org/apache/polygene/library/rest/admin/EntityResource.java
+++ b/libraries/rest/src/main/java/org/apache/polygene/library/rest/admin/EntityResource.java
@@ -38,12 +38,11 @@ import org.apache.polygene.api.identity.StringIdentity;
import org.apache.polygene.api.injection.scope.Service;
import org.apache.polygene.api.injection.scope.Structure;
import org.apache.polygene.api.injection.scope.Uses;
+import org.apache.polygene.api.serialization.SerializationException;
import org.apache.polygene.api.structure.ModuleDescriptor;
import org.apache.polygene.api.time.SystemTime;
import org.apache.polygene.api.usecase.Usecase;
import org.apache.polygene.api.usecase.UsecaseBuilder;
-import org.apache.polygene.api.value.ValueSerialization;
-import org.apache.polygene.api.value.ValueSerializationException;
import org.apache.polygene.library.rdf.entity.EntityStateSerializer;
import org.apache.polygene.library.rdf.serializer.RdfXmlSerializer;
import org.apache.polygene.spi.entity.EntityState;
@@ -54,6 +53,7 @@ import org.apache.polygene.spi.entitystore.EntityNotFoundException;
import org.apache.polygene.spi.entitystore.EntityStore;
import org.apache.polygene.spi.entitystore.EntityStoreUnitOfWork;
import org.apache.polygene.spi.entitystore.helpers.JSONEntityState;
+import org.apache.polygene.spi.serialization.JsonSerialization;
import org.openrdf.model.Statement;
import org.openrdf.rio.RDFHandlerException;
import org.restlet.data.CharacterSet;
@@ -79,7 +79,7 @@ public class EntityResource
private EntityStore entityStore;
@Service
- private ValueSerialization valueSerialization;
+ private JsonSerialization serialization;
@Structure
private ModuleDescriptor module;
@@ -231,7 +231,7 @@ public class EntityResource
+ "type=\"text\" "
+ ( persistentProperty.isImmutable() ? "readonly=\"true\" " : "" )
+ "name=\"" + persistentProperty.qualifiedName() + "\" "
- + "value=\"" + ( value == null ? "" : valueSerialization.serialize( value ) )
+ + "value=\"" + ( value == null ? "" : serialization.serialize( value ) )
+ "\"/></td></tr>" );
} );
out.println( "</table></fieldset>\n" );
@@ -308,6 +308,7 @@ public class EntityResource
private Representation representJson( EntityState entityState )
{
+ // TODO This guy needs to represent an Entity as JSON
if( entityState instanceof JSONEntityState )
{
JSONEntityState jsonState = (JSONEntityState) entityState;
@@ -377,7 +378,7 @@ public class EntityResource
{
entity.setPropertyValue(
persistentProperty.qualifiedName(),
- valueSerialization.deserialize( module, persistentProperty.valueType(), formValue ) );
+ serialization.deserialize( module, persistentProperty.valueType(), formValue ) );
}
}
} );
@@ -503,7 +504,7 @@ public class EntityResource
}
} );
}
- catch( ValueSerializationException | IllegalArgumentException e )
+ catch( SerializationException | IllegalArgumentException e )
{
throw new ResourceException( Status.SERVER_ERROR_INTERNAL, e );
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/rest/src/test/java/org/apache/polygene/library/rest/admin/RDFAssembler.java
----------------------------------------------------------------------
diff --git a/libraries/rest/src/test/java/org/apache/polygene/library/rest/admin/RDFAssembler.java b/libraries/rest/src/test/java/org/apache/polygene/library/rest/admin/RDFAssembler.java
index f028d77..654f0d1 100644
--- a/libraries/rest/src/test/java/org/apache/polygene/library/rest/admin/RDFAssembler.java
+++ b/libraries/rest/src/test/java/org/apache/polygene/library/rest/admin/RDFAssembler.java
@@ -26,7 +26,6 @@ import org.apache.polygene.bootstrap.AssemblyException;
import org.apache.polygene.bootstrap.ModuleAssembly;
import org.apache.polygene.library.rdf.entity.EntityStateSerializer;
import org.apache.polygene.library.rdf.entity.EntityTypeSerializer;
-import org.apache.polygene.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
/**
* JAVADOC
@@ -37,7 +36,6 @@ class RDFAssembler
public void assemble( ModuleAssembly module )
throws AssemblyException
{
- new OrgJsonValueSerializationAssembler().assemble( module );
module.objects( EntityStateSerializer.class ).visibleIn( Visibility.application );
module.objects( EntityTypeSerializer.class ).visibleIn( Visibility.application );
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/restlet/build.gradle
----------------------------------------------------------------------
diff --git a/libraries/restlet/build.gradle b/libraries/restlet/build.gradle
index 35cd1d9..8285584 100644
--- a/libraries/restlet/build.gradle
+++ b/libraries/restlet/build.gradle
@@ -28,7 +28,6 @@ jar { manifest { name = "Apache Polygene\u2122 Library - Restlet" } }
dependencies {
compile polygene.core.bootstrap
- compile polygene.extension( 'valueserialization-jackson' )
compile polygene.extension( 'indexing-rdf' )
compile polygene.extension( 'entitystore-file' )
compile libraries.restlet
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/e4cca11e/libraries/restlet/src/main/java/org/apache/polygene/library/restlet/assembly/RestletCrudConnectivityAssembler.java
----------------------------------------------------------------------
diff --git a/libraries/restlet/src/main/java/org/apache/polygene/library/restlet/assembly/RestletCrudConnectivityAssembler.java b/libraries/restlet/src/main/java/org/apache/polygene/library/restlet/assembly/RestletCrudConnectivityAssembler.java
index 3979194..815691a 100644
--- a/libraries/restlet/src/main/java/org/apache/polygene/library/restlet/assembly/RestletCrudConnectivityAssembler.java
+++ b/libraries/restlet/src/main/java/org/apache/polygene/library/restlet/assembly/RestletCrudConnectivityAssembler.java
@@ -38,7 +38,6 @@ import org.apache.polygene.library.restlet.resource.EntryPointResource;
import org.apache.polygene.library.restlet.resource.ResourceBuilder;
import org.apache.polygene.library.restlet.serialization.FormRepresentation;
import org.apache.polygene.library.restlet.serialization.JsonRepresentation;
-import org.apache.polygene.valueserialization.jackson.JacksonValueSerializationAssembler;
public class RestletCrudConnectivityAssembler
implements Assembler
@@ -65,6 +64,5 @@ public class RestletCrudConnectivityAssembler
PolygeneEntityRestlet.class )
.visibleIn( Visibility.layer );
module.services( ResourceBuilder.class ).visibleIn( Visibility.layer );
- new JacksonValueSerializationAssembler().assemble( module );
}
}