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/03/13 10:35:29 UTC
[37/50] [abbrv] polygene-java git commit: Fix json & xml loading of
Configuration defaults
Fix json & xml loading of Configuration defaults
POLYGENE-191
Project: http://git-wip-us.apache.org/repos/asf/polygene-java/repo
Commit: http://git-wip-us.apache.org/repos/asf/polygene-java/commit/3d4805fa
Tree: http://git-wip-us.apache.org/repos/asf/polygene-java/tree/3d4805fa
Diff: http://git-wip-us.apache.org/repos/asf/polygene-java/diff/3d4805fa
Branch: refs/heads/serialization-3.0
Commit: 3d4805fa75175e54cffdcff64703c4d6eb9a5b7e
Parents: 86d0169
Author: Paul Merlin <pa...@apache.org>
Authored: Sun Feb 26 23:44:06 2017 +0100
Committer: Paul Merlin <pa...@apache.org>
Committed: Mon Mar 13 11:24:03 2017 +0100
----------------------------------------------------------------------
.../api/configuration/Configuration.java | 7 +++++--
.../JavaxJsonSerializationAssembler.java | 1 +
.../JavaxXmlSerializationAssembler.java | 1 +
...avaxXmlConfigurationDeserializationTest.java | 21 ++++++++++++++++++++
.../src/test/resources/configtest.xml | 1 +
5 files changed, 29 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/3d4805fa/core/api/src/main/java/org/apache/polygene/api/configuration/Configuration.java
----------------------------------------------------------------------
diff --git a/core/api/src/main/java/org/apache/polygene/api/configuration/Configuration.java b/core/api/src/main/java/org/apache/polygene/api/configuration/Configuration.java
index 21eb05f..1cd32cf 100644
--- a/core/api/src/main/java/org/apache/polygene/api/configuration/Configuration.java
+++ b/core/api/src/main/java/org/apache/polygene/api/configuration/Configuration.java
@@ -49,6 +49,8 @@ import org.apache.polygene.api.unitofwork.UnitOfWorkFactory;
import org.apache.polygene.api.usecase.Usecase;
import org.apache.polygene.api.usecase.UsecaseBuilder;
+import static java.nio.charset.StandardCharsets.UTF_8;
+
/**
* Provide Configurations for Services. A Service that wants to be configurable
* should inject a reference to Configuration with the Configuration type:
@@ -403,8 +405,9 @@ public interface Configuration<T>
{
if( asStream != null )
{
- V configObject = serializerRef.get().deserialize( uow.module(), configType,
- new InputStreamReader( asStream ) );
+ Deserializer deserializer = serializerRef.get();
+ V configObject = deserializer.deserialize( uow.module(), configType,
+ new InputStreamReader( asStream, UTF_8 ) );
return uow.toEntity( configType, configObject );
}
}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/3d4805fa/extensions/serialization-javaxjson/src/main/java/org/apache/polygene/serialization/javaxjson/JavaxJsonSerializationAssembler.java
----------------------------------------------------------------------
diff --git a/extensions/serialization-javaxjson/src/main/java/org/apache/polygene/serialization/javaxjson/JavaxJsonSerializationAssembler.java b/extensions/serialization-javaxjson/src/main/java/org/apache/polygene/serialization/javaxjson/JavaxJsonSerializationAssembler.java
index 36b84d6..84022e1 100644
--- a/extensions/serialization-javaxjson/src/main/java/org/apache/polygene/serialization/javaxjson/JavaxJsonSerializationAssembler.java
+++ b/extensions/serialization-javaxjson/src/main/java/org/apache/polygene/serialization/javaxjson/JavaxJsonSerializationAssembler.java
@@ -45,6 +45,7 @@ public class JavaxJsonSerializationAssembler extends Assemblers.VisibilityIdenti
Serializer.class, Deserializer.class,
JsonSerialization.class,
JsonSerializer.class, JsonDeserializer.class )
+ .taggedWith( Serialization.Formats.JSON )
.visibleIn( visibility() );
if( hasIdentity() )
{
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/3d4805fa/extensions/serialization-javaxxml/src/main/java/org/apache/polygene/serialization/javaxxml/JavaxXmlSerializationAssembler.java
----------------------------------------------------------------------
diff --git a/extensions/serialization-javaxxml/src/main/java/org/apache/polygene/serialization/javaxxml/JavaxXmlSerializationAssembler.java b/extensions/serialization-javaxxml/src/main/java/org/apache/polygene/serialization/javaxxml/JavaxXmlSerializationAssembler.java
index b97bf12..e402a9f 100644
--- a/extensions/serialization-javaxxml/src/main/java/org/apache/polygene/serialization/javaxxml/JavaxXmlSerializationAssembler.java
+++ b/extensions/serialization-javaxxml/src/main/java/org/apache/polygene/serialization/javaxxml/JavaxXmlSerializationAssembler.java
@@ -45,6 +45,7 @@ public class JavaxXmlSerializationAssembler extends Assemblers.VisibilityIdentit
Serializer.class, Deserializer.class,
XmlSerialization.class,
XmlSerializer.class, XmlDeserializer.class )
+ .taggedWith( Serialization.Formats.XML )
.visibleIn( visibility() );
if( hasIdentity() )
{
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/3d4805fa/extensions/serialization-javaxxml/src/test/java/org/apache/polygene/serialization/javaxxml/JavaxXmlConfigurationDeserializationTest.java
----------------------------------------------------------------------
diff --git a/extensions/serialization-javaxxml/src/test/java/org/apache/polygene/serialization/javaxxml/JavaxXmlConfigurationDeserializationTest.java b/extensions/serialization-javaxxml/src/test/java/org/apache/polygene/serialization/javaxxml/JavaxXmlConfigurationDeserializationTest.java
new file mode 100644
index 0000000..f87c396
--- /dev/null
+++ b/extensions/serialization-javaxxml/src/test/java/org/apache/polygene/serialization/javaxxml/JavaxXmlConfigurationDeserializationTest.java
@@ -0,0 +1,21 @@
+package org.apache.polygene.serialization.javaxxml;
+
+import org.apache.polygene.bootstrap.ModuleAssembly;
+import org.apache.polygene.test.entity.AbstractConfigurationDeserializationTest;
+import org.junit.Test;
+
+public class JavaxXmlConfigurationDeserializationTest extends AbstractConfigurationDeserializationTest
+{
+ @Override
+ public void assemble( ModuleAssembly module )
+ {
+ new JavaxXmlSerializationAssembler().assemble( module );
+ super.assemble( module );
+ }
+
+ @Test
+ public void givenServiceWhenInitializingExpectCorrectDeserialization()
+ {
+ super.givenServiceWhenInitializingExpectCorrectDeserialization();
+ }
+}
http://git-wip-us.apache.org/repos/asf/polygene-java/blob/3d4805fa/extensions/serialization-javaxxml/src/test/resources/configtest.xml
----------------------------------------------------------------------
diff --git a/extensions/serialization-javaxxml/src/test/resources/configtest.xml b/extensions/serialization-javaxxml/src/test/resources/configtest.xml
new file mode 100644
index 0000000..0f6bc4c
--- /dev/null
+++ b/extensions/serialization-javaxxml/src/test/resources/configtest.xml
@@ -0,0 +1 @@
+<?xml version="1.1" encoding="UTF-8" standalone="yes"?><state><value><identity>configtest</identity><host><value _type="org.apache.polygene.test.entity.AbstractConfigurationDeserializationTest$Host"><ip>12.23.34.45</ip><port>1234</port></value></host><name>main</name></value></state>