QI-318 Javadoc and assembly refinements

Project: http://git-wip-us.apache.org/repos/asf/zest-qi4j/repo
Commit: http://git-wip-us.apache.org/repos/asf/zest-qi4j/commit/bb5fcda3
Tree: http://git-wip-us.apache.org/repos/asf/zest-qi4j/tree/bb5fcda3
Diff: http://git-wip-us.apache.org/repos/asf/zest-qi4j/diff/bb5fcda3

Branch: refs/heads/master
Commit: bb5fcda32903b7026e4cb1da13345bc508b48d7e
Parents: a206965
Author: Paul Merlin <[email protected]>
Authored: Mon Feb 11 17:17:50 2013 +0100
Committer: Paul Merlin <[email protected]>
Committed: Mon Feb 11 20:04:01 2013 +0100

----------------------------------------------------------------------
 core/api/build.gradle                           |  1 +
 .../java/org/qi4j/api/type/CollectionType.java  | 14 ++++
 .../main/java/org/qi4j/api/type/EnumType.java   |  5 ++
 .../main/java/org/qi4j/api/type/MapType.java    |  5 ++
 .../main/java/org/qi4j/api/type/ValueType.java  | 88 ++++++++++----------
 .../org/qi4j/api/value/ValueDeserializer.java   | 17 ++--
 .../org/qi4j/api/value/ValueSerialization.java  |  9 +-
 .../org/qi4j/api/value/ValueSerializer.java     | 17 ++--
 core/io/src/main/java/org/qi4j/io/Inputs.java   | 37 ++++++++
 .../qi4j/runtime/value/ValueVisibilityTest.java |  1 -
 .../spi/value/ValueDeserializerAdapter.java     | 14 ++--
 .../qi4j/spi/value/ValueSerializerAdapter.java  | 14 ++--
 .../OrgJsonCollectionSerializationTest.java     | 33 --------
 .../orgjson/OrgJsonDateFormatTest.java          | 18 ----
 .../OrgJsonPlainValueSerializationTest.java     | 33 --------
 .../OrgJsonValueCompositeSerializationTest.java | 33 --------
 .../AbstractPlainValueSerializationTest.java    | 10 +--
 extensions/entitystore-file/build.gradle        | 17 ++--
 .../file/assembly/FileEntityStoreAssembler.java |  9 +-
 .../entitystore/file/FileEntityStoreTest.java   |  9 +-
 extensions/entitystore-hazelcast/build.gradle   | 22 +++--
 .../assembly/HazelcastEntityStoreAssembler.java | 13 +--
 .../hazelcast/HazelcastEntityStoreTest.java     | 14 ++--
 extensions/entitystore-jclouds/build.gradle     | 19 +++--
 .../jclouds/JCloudsMapEntityStoreAssembler.java | 17 ++--
 .../jclouds/JCloudsFilesystemTest.java          |  2 +
 .../jclouds/JCloudsTransientTest.java           |  2 +
 extensions/entitystore-jdbm/build.gradle        |  1 +
 .../jdbm/assembly/JdbmEntityStoreAssembler.java | 28 +++----
 .../entitystore/jdbm/JdbmEntityStoreTest.java   | 88 ++++++++++----------
 extensions/entitystore-leveldb/build.gradle     |  1 +
 .../leveldb/LevelDBEntityStoreAssembler.java    |  4 -
 .../leveldb/JavaLevelDBEntityStoreTest.java     |  4 +-
 .../leveldb/JniLevelDBEntityStoreTest.java      |  3 +-
 extensions/entitystore-mongodb/build.gradle     |  3 +
 .../mongodb/MongoEntityStoreConfiguration.java  |  2 +-
 .../mongodb/MongoMapEntityStoreAssembler.java   | 42 +++++-----
 .../mongodb/MongoMapEntityStoreMixin.java       | 11 ---
 .../mongodb/MongoMapEntityStoreTest.java        | 14 ++--
 extensions/entitystore-neo4j/build.gradle       |  1 +
 .../neo4j/test/SimpleNeoStoreTest.java          | 38 ++++-----
 extensions/entitystore-preferences/build.gradle | 11 ++-
 .../PreferenceEntityStoreAssembler.java         |  4 +-
 .../entitystore/PreferencesEntityStoreTest.java | 14 ++--
 extensions/entitystore-redis/build.gradle       | 15 ++--
 .../redis/RedisMapEntityStoreAssembler.java     |  4 -
 .../redis/RedisMapEntityStoreTest.java          | 23 ++---
 extensions/entitystore-riak/build.gradle        | 19 +++--
 .../riak/RiakHttpMapEntityStoreAssembler.java   |  6 --
 .../RiakProtobufMapEntityStoreAssembler.java    |  6 --
 .../riak/RiakHttpMapEntityStoreTest.java        | 20 ++---
 .../riak/RiakProtobufMapEntityStoreTest.java    | 20 ++---
 extensions/entitystore-sql/build.gradle         |  1 +
 .../AbstractSQLEntityStoreAssembler.java        |  5 --
 .../sql/DerbySQLEntityStoreTest.java            |  2 +
 .../entitystore/sql/H2SQLEntityStoreTest.java   |  2 +
 .../entitystore/sql/MySQLEntityStoreTest.java   |  2 +
 .../sql/PostgreSQLEntityStoreTest.java          |  2 +
 .../entitystore/sql/SQLiteEntityStoreTest.java  |  2 +
 extensions/entitystore-voldemort/build.gradle   | 40 ++++-----
 .../voldemort/assembly/VoldemortAssembler.java  | 12 +--
 .../entitystore/voldemort/VoldemortTest.java    | 17 ++--
 extensions/indexing-rdf/build.gradle            |  1 +
 .../org/qi4j/index/rdf/qi95/Qi95IssueTest.java  | 13 +--
 .../valueserialization-jackson/dev-status.xml   |  2 +-
 .../JacksonValueSerializationAssembler.java     | 67 +++++++++++++++
 .../JacksonCollectionSerializationTest.java     |  4 +-
 .../jackson/JacksonJsonDateFormatTest.java      | 17 +++-
 .../JacksonPlainValueSerializationTest.java     |  5 +-
 .../JacksonValueCompositeSerializationTest.java |  2 +-
 .../valueserialization-orgjson/build.gradle     | 15 ++++
 .../valueserialization-orgjson/dev-status.xml   | 17 ++++
 .../OrgJsonValueSerializationAssembler.java     | 67 +++++++++++++++
 .../valueserialization/orgjson/package.html     |  5 ++
 .../OrgJsonCollectionSerializationTest.java     | 33 ++++++++
 .../orgjson/OrgJsonDateFormatTest.java          | 33 ++++++++
 .../OrgJsonPlainValueSerializationTest.java     | 34 ++++++++
 .../OrgJsonValueCompositeSerializationTest.java | 33 ++++++++
 .../valueserialization-stax/dev-status.xml      |  2 +-
 .../stax/StaxValueSerializationAssembler.java   | 67 +++++++++++++++
 .../stax/StaxCollectionSerializationTest.java   |  2 +-
 .../stax/StaxPlainValueSerializationTest.java   |  5 +-
 .../StaxValueCompositeSerializationTest.java    |  2 +-
 libraries/eventsourcing-jdbm/build.gradle       |  1 +
 .../source/jdbm/JdbmEventStoreServiceTest.java  | 16 ++--
 libraries/rdf/build.gradle                      |  1 +
 .../rdf/entity/EntitySerializerTest.java        |  9 +-
 libraries/rest-client/build.gradle              | 17 ++--
 .../library/rest/client/ClientAssembler.java    |  4 -
 .../ContextResourceClientFactoryTest.java       |  8 +-
 .../rest/client/ContinuousIntegrationTest.java  |  3 +-
 .../qi4j/library/rest/client/RssReaderTest.java |  3 +-
 .../server/assembler/RestServerAssembler.java   |  4 -
 libraries/rest/build.gradle                     | 27 +++---
 .../qi4j/library/rest/admin/RestAssembler.java  |  2 -
 .../qi4j/library/rest/admin/RDFAssembler.java   |  5 +-
 samples/dci-cargo/dcisample_a/build.gradle      |  1 +
 samples/dci-cargo/dcisample_b/build.gradle      |  1 +
 settings.gradle                                 |  1 +
 tests/performance/build.gradle                  | 27 +++---
 .../MemoryEntityStorePerformanceTest.java       |  6 +-
 101 files changed, 908 insertions(+), 594 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/api/build.gradle
----------------------------------------------------------------------
diff --git a/core/api/build.gradle b/core/api/build.gradle
index ba92f7d..ccaa0f2 100644
--- a/core/api/build.gradle
+++ b/core/api/build.gradle
@@ -7,6 +7,7 @@ dependencies {
 
   testCompile project( ':org.qi4j.core:org.qi4j.core.testsupport' )
   testCompile project( ':org.qi4j.libraries:org.qi4j.library.constraints' )
+  testCompile project( 
':org.qi4j.extensions:org.qi4j.extension.valueserialization-orgjson' )
 
   testRuntime project( ':org.qi4j.core:org.qi4j.core.runtime' )
   testRuntime libraries.slf4j_simple

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/api/src/main/java/org/qi4j/api/type/CollectionType.java
----------------------------------------------------------------------
diff --git a/core/api/src/main/java/org/qi4j/api/type/CollectionType.java 
b/core/api/src/main/java/org/qi4j/api/type/CollectionType.java
index 9ee85de..7e051f5 100644
--- a/core/api/src/main/java/org/qi4j/api/type/CollectionType.java
+++ b/core/api/src/main/java/org/qi4j/api/type/CollectionType.java
@@ -32,6 +32,20 @@ public final class CollectionType
         return cl.equals( Collection.class ) || cl.equals( List.class ) || 
cl.equals( Set.class );
     }
 
+    public static CollectionType collectionOf( Class<?> collectedType )
+    {
+        return new CollectionType( Collection.class, ValueType.of( 
collectedType ) );
+    }
+
+    public static CollectionType listOf( Class<?> collectedType )
+    {
+        return new CollectionType( List.class, ValueType.of( collectedType ) );
+    }
+
+    public static CollectionType setOf( Class<?> collectedType )
+    {
+        return new CollectionType( Set.class, ValueType.of( collectedType ) );
+    }
     private ValueType collectedType;
 
     public CollectionType( Class<?> type, ValueType collectedType )

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/api/src/main/java/org/qi4j/api/type/EnumType.java
----------------------------------------------------------------------
diff --git a/core/api/src/main/java/org/qi4j/api/type/EnumType.java 
b/core/api/src/main/java/org/qi4j/api/type/EnumType.java
index f6190df..f535a6b 100644
--- a/core/api/src/main/java/org/qi4j/api/type/EnumType.java
+++ b/core/api/src/main/java/org/qi4j/api/type/EnumType.java
@@ -32,6 +32,11 @@ public final class EnumType
         return false;
     }
 
+    public static EnumType of( Class<?> type )
+    {
+        return new EnumType( type );
+    }
+
     public EnumType( Class<?> type )
     {
         super( type );

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/api/src/main/java/org/qi4j/api/type/MapType.java
----------------------------------------------------------------------
diff --git a/core/api/src/main/java/org/qi4j/api/type/MapType.java 
b/core/api/src/main/java/org/qi4j/api/type/MapType.java
index d63ddb6..546fada 100644
--- a/core/api/src/main/java/org/qi4j/api/type/MapType.java
+++ b/core/api/src/main/java/org/qi4j/api/type/MapType.java
@@ -33,6 +33,11 @@ public final class MapType
         return Map.class.isAssignableFrom( cl );
     }
 
+    public static MapType of( Class<?> keyType, Class<?> valueType )
+    {
+        return new MapType( Map.class, ValueType.of( keyType ), ValueType.of( 
valueType ) );
+    }
+
     public MapType( Class<?> type, ValueType keyType, ValueType valueType )
     {
         super( type );

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/api/src/main/java/org/qi4j/api/type/ValueType.java
----------------------------------------------------------------------
diff --git a/core/api/src/main/java/org/qi4j/api/type/ValueType.java 
b/core/api/src/main/java/org/qi4j/api/type/ValueType.java
index a6a6963..92e7857 100644
--- a/core/api/src/main/java/org/qi4j/api/type/ValueType.java
+++ b/core/api/src/main/java/org/qi4j/api/type/ValueType.java
@@ -30,49 +30,9 @@ public class ValueType
     implements HasTypes
 {
 
-    protected final Iterable<Class<?>> types;
-
-    public ValueType( Class<?> type )
-    {
-        this( Collections.singleton( type ) );
-    }
-
-    @SuppressWarnings( "unchecked" )
-    public ValueType( Iterable<? extends Class<?>> types )
-    {
-        this.types = (Iterable<Class<?>>) types;
-    }
-
-    public Class<?> mainType()
+    public static ValueType of( Class<?> type )
     {
-        return first( types );
-    }
-
-    @Override
-    public Iterable<Class<?>> types()
-    {
-        return types;
-    }
-
-    @Override
-    public String toString()
-    {
-        String name = Iterables.toString(
-            types,
-            new Function<Class<?>, String>()
-            {
-                @Override
-                public String map( Class<?> item )
-                {
-                    return item.getName();
-                }
-            },
-            "," );
-        if( name.contains( "," ) )
-        {
-            name = "{" + name + "}";
-        }
-        return name;
+        return new ValueType( type );
     }
 
     /**
@@ -145,4 +105,48 @@ public class ValueType
         }
         return false;
     }
+    protected final Iterable<Class<?>> types;
+
+    public ValueType( Class<?> type )
+    {
+        this( Collections.singleton( type ) );
+    }
+
+    @SuppressWarnings( "unchecked" )
+    public ValueType( Iterable<? extends Class<?>> types )
+    {
+        this.types = (Iterable<Class<?>>) types;
+    }
+
+    public Class<?> mainType()
+    {
+        return first( types );
+    }
+
+    @Override
+    public Iterable<Class<?>> types()
+    {
+        return types;
+    }
+
+    @Override
+    public String toString()
+    {
+        String name = Iterables.toString(
+            types,
+            new Function<Class<?>, String>()
+            {
+                @Override
+                public String map( Class<?> item )
+                {
+                    return item.getName();
+                }
+            },
+            "," );
+        if( name.contains( "," ) )
+        {
+            name = "{" + name + "}";
+        }
+        return name;
+    }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/api/src/main/java/org/qi4j/api/value/ValueDeserializer.java
----------------------------------------------------------------------
diff --git a/core/api/src/main/java/org/qi4j/api/value/ValueDeserializer.java 
b/core/api/src/main/java/org/qi4j/api/value/ValueDeserializer.java
index b75886a..b40c56a 100644
--- a/core/api/src/main/java/org/qi4j/api/value/ValueDeserializer.java
+++ b/core/api/src/main/java/org/qi4j/api/value/ValueDeserializer.java
@@ -28,9 +28,10 @@ import org.qi4j.functional.Function2;
  * </p>
  * <ul>
  *     <li>a ValueComposite,</li>
+ *     <li>an EntityReference,</li>
  *     <li>a Collection,</li>
  *     <li>a Map,</li>
- *     <li>a plain value.</li>
+ *     <li>a Plain Value.</li>
  * </ul>
  * <p>
  *     Nested plain values, EntityReferences, Collections, Maps, 
ValueComposites are supported.
@@ -41,13 +42,13 @@ import org.qi4j.functional.Function2;
  * </p>
  * <ul>
  *     <li>String,</li>
- *     <li>Boolean,</li>
- *     <li>Integer,</li>
- *     <li>Long,</li>
- *     <li>Short,</li>
- *     <li>Byte,</li>
- *     <li>Float,</li>
- *     <li>Double,</li>
+ *     <li>Boolean or boolean,</li>
+ *     <li>Integer or int,</li>
+ *     <li>Long or long,</li>
+ *     <li>Short or short,</li>
+ *     <li>Byte or byte,</li>
+ *     <li>Float or float,</li>
+ *     <li>Double or double,</li>
  *     <li>BigInteger,</li>
  *     <li>BigDecimal,</li>
  *     <li>Date,</li>

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/api/src/main/java/org/qi4j/api/value/ValueSerialization.java
----------------------------------------------------------------------
diff --git a/core/api/src/main/java/org/qi4j/api/value/ValueSerialization.java 
b/core/api/src/main/java/org/qi4j/api/value/ValueSerialization.java
index aec213d..503aa5c 100644
--- a/core/api/src/main/java/org/qi4j/api/value/ValueSerialization.java
+++ b/core/api/src/main/java/org/qi4j/api/value/ValueSerialization.java
@@ -16,7 +16,9 @@
 package org.qi4j.api.value;
 
 /**
- * A ValueSerialization is both a {@link ValueSerializer} and a {@link 
ValueDeserializer}.
+ * ValueSerialization API.
+ *
+ * See {@link ValueSerializer} and {@link ValueDeserializer}.
  */
 public interface ValueSerialization
     extends ValueSerializer, ValueDeserializer
@@ -24,6 +26,11 @@ public interface ValueSerialization
 
     /**
      * Serialization format @Service tags.
+     *
+     * <p>
+     *     ValueSerialization implementations should be tagged with theses at 
assembly time so that consumers can
+     *     specify which format they need.
+     * </p>
      */
     interface Formats
     {

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/api/src/main/java/org/qi4j/api/value/ValueSerializer.java
----------------------------------------------------------------------
diff --git a/core/api/src/main/java/org/qi4j/api/value/ValueSerializer.java 
b/core/api/src/main/java/org/qi4j/api/value/ValueSerializer.java
index b8968e3..a18f4db 100644
--- a/core/api/src/main/java/org/qi4j/api/value/ValueSerializer.java
+++ b/core/api/src/main/java/org/qi4j/api/value/ValueSerializer.java
@@ -27,9 +27,10 @@ import org.qi4j.functional.Function;
  * </p>
  * <ul>
  *     <li>a ValueComposite,</li>
+ *     <li>an EntityComposite or EntityReference,</li>
  *     <li>an Iterable,</li>
  *     <li>a Map,</li>
- *     <li>a plain value.</li>
+ *     <li>a Plain Value.</li>
  * </ul>
  * <p>
  *     Nested plain values, EntityReferences, Iterables, Maps, ValueComposites 
and EntityComposites are supported.
@@ -40,13 +41,13 @@ import org.qi4j.functional.Function;
  * </p>
  * <ul>
  *     <li>String,</li>
- *     <li>Boolean,</li>
- *     <li>Integer,</li>
- *     <li>Long,</li>
- *     <li>Short,</li>
- *     <li>Byte,</li>
- *     <li>Float,</li>
- *     <li>Double,</li>
+ *     <li>Boolean or boolean,</li>
+ *     <li>Integer or int,</li>
+ *     <li>Long or long,</li>
+ *     <li>Short or short,</li>
+ *     <li>Byte or byte,</li>
+ *     <li>Float or float,</li>
+ *     <li>Double or double,</li>
  *     <li>BigInteger,</li>
  *     <li>BigDecimal,</li>
  *     <li>Date,</li>

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/io/src/main/java/org/qi4j/io/Inputs.java
----------------------------------------------------------------------
diff --git a/core/io/src/main/java/org/qi4j/io/Inputs.java 
b/core/io/src/main/java/org/qi4j/io/Inputs.java
index 45f4e9c..8cb2893 100644
--- a/core/io/src/main/java/org/qi4j/io/Inputs.java
+++ b/core/io/src/main/java/org/qi4j/io/Inputs.java
@@ -22,6 +22,7 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.io.InputStreamReader;
 import java.io.OutputStream;
+import java.io.Reader;
 import java.net.URL;
 import java.net.URLConnection;
 import java.nio.ByteBuffer;
@@ -74,6 +75,42 @@ public class Inputs
     // START SNIPPET: method
 
     /**
+     * Read lines from a Reader.
+     *
+     * @param source lines
+     *
+     * @return Input that provides lines from the string as strings
+     */
+    public static Input<String, RuntimeException> text( final Reader source )
+    // END SNIPPET: method
+    {
+        return new Input<String, RuntimeException>()
+        {
+            @Override
+            public <ReceiverThrowableType extends Throwable> void transferTo( 
Output<? super String, ReceiverThrowableType> output )
+                throws RuntimeException, ReceiverThrowableType
+            {
+
+                output.receiveFrom( new Sender<String, RuntimeException>()
+                {
+                    @Override
+                    public <ReceiverThrowableType extends Throwable> void 
sendTo( Receiver<? super String, ReceiverThrowableType> receiver )
+                        throws ReceiverThrowableType, RuntimeException
+                    {
+                        Scanner scanner = new Scanner( source );
+                        while( scanner.hasNextLine() )
+                        {
+                            receiver.receive( scanner.nextLine() );
+                        }
+                    }
+                } );
+            }
+        };
+    }
+
+    // START SNIPPET: method
+
+    /**
      * Read lines from a UTF-8 encoded textfile.
      *
      * If the filename ends with .gz, then the data is automatically unzipped 
when read.

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/runtime/src/test/java/org/qi4j/runtime/value/ValueVisibilityTest.java
----------------------------------------------------------------------
diff --git 
a/core/runtime/src/test/java/org/qi4j/runtime/value/ValueVisibilityTest.java 
b/core/runtime/src/test/java/org/qi4j/runtime/value/ValueVisibilityTest.java
index 2344f4f..a9cfe1c 100644
--- a/core/runtime/src/test/java/org/qi4j/runtime/value/ValueVisibilityTest.java
+++ b/core/runtime/src/test/java/org/qi4j/runtime/value/ValueVisibilityTest.java
@@ -36,7 +36,6 @@ import org.qi4j.bootstrap.Assembler;
 import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.Energy4Java;
 import org.qi4j.bootstrap.ModuleAssembly;
-import org.qi4j.entitystore.memory.MemoryEntityStoreService;
 import org.qi4j.test.EntityTestAssembler;
 
 public class ValueVisibilityTest

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/spi/src/main/java/org/qi4j/spi/value/ValueDeserializerAdapter.java
----------------------------------------------------------------------
diff --git 
a/core/spi/src/main/java/org/qi4j/spi/value/ValueDeserializerAdapter.java 
b/core/spi/src/main/java/org/qi4j/spi/value/ValueDeserializerAdapter.java
index c8afe2b..f27dd5b 100644
--- a/core/spi/src/main/java/org/qi4j/spi/value/ValueDeserializerAdapter.java
+++ b/core/spi/src/main/java/org/qi4j/spi/value/ValueDeserializerAdapter.java
@@ -71,13 +71,13 @@ import static org.qi4j.functional.Iterables.*;
  * </p>
  * <ul>
  *     <li>String,</li>
- *     <li>Boolean,</li>
- *     <li>Integer,</li>
- *     <li>Long,</li>
- *     <li>Short,</li>
- *     <li>Byte,</li>
- *     <li>Float,</li>
- *     <li>Double</li>
+ *     <li>Boolean or boolean,</li>
+ *     <li>Integer or int,</li>
+ *     <li>Long or long,</li>
+ *     <li>Short or short,</li>
+ *     <li>Byte or byte,</li>
+ *     <li>Float or float,</li>
+ *     <li>Double or double.</li>
  * </ul>
  *
  * @param <InputType> Implementor pull-parser type

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/spi/src/main/java/org/qi4j/spi/value/ValueSerializerAdapter.java
----------------------------------------------------------------------
diff --git 
a/core/spi/src/main/java/org/qi4j/spi/value/ValueSerializerAdapter.java 
b/core/spi/src/main/java/org/qi4j/spi/value/ValueSerializerAdapter.java
index 6eca7ee..fa39a6a 100644
--- a/core/spi/src/main/java/org/qi4j/spi/value/ValueSerializerAdapter.java
+++ b/core/spi/src/main/java/org/qi4j/spi/value/ValueSerializerAdapter.java
@@ -61,13 +61,13 @@ import static org.qi4j.functional.Iterables.*;
  * </p>
  * <ul>
  *     <li>String,</li>
- *     <li>Boolean,</li>
- *     <li>Integer,</li>
- *     <li>Long,</li>
- *     <li>Short,</li>
- *     <li>Byte,</li>
- *     <li>Float,</li>
- *     <li>Double</li>
+ *     <li>Boolean or boolean,</li>
+ *     <li>Integer or int,</li>
+ *     <li>Long or long,</li>
+ *     <li>Short or short,</li>
+ *     <li>Byte or byte,</li>
+ *     <li>Float or float,</li>
+ *     <li>Double or double.</li>
  * </ul>
  *
  * @param <OutputType> Implementor output type

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonCollectionSerializationTest.java
----------------------------------------------------------------------
diff --git 
a/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonCollectionSerializationTest.java
 
b/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonCollectionSerializationTest.java
deleted file mode 100644
index 76ccf51..0000000
--- 
a/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonCollectionSerializationTest.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (c) 2012, Paul Merlin. All Rights Reserved.
- *
- * 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.
- */
-package org.qi4j.valueserialization.orgjson;
-
-import org.qi4j.bootstrap.AssemblyException;
-import org.qi4j.bootstrap.ModuleAssembly;
-import org.qi4j.test.value.AbstractCollectionSerializationTest;
-
-public class OrgJsonCollectionSerializationTest
-    extends AbstractCollectionSerializationTest
-{
-
-    @Override
-    public void assemble( ModuleAssembly module )
-        throws AssemblyException
-    {
-        super.assemble( module );
-        module.services( OrgJsonValueSerializationService.class );
-    }
-}

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonDateFormatTest.java
----------------------------------------------------------------------
diff --git 
a/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonDateFormatTest.java
 
b/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonDateFormatTest.java
deleted file mode 100644
index 50d040e..0000000
--- 
a/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonDateFormatTest.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package org.qi4j.valueserialization.orgjson;
-
-import org.qi4j.bootstrap.AssemblyException;
-import org.qi4j.bootstrap.ModuleAssembly;
-import org.qi4j.test.value.AbstractJsonDateFormatTest;
-
-public class OrgJsonDateFormatTest
-    extends AbstractJsonDateFormatTest
-{
-
-    @Override
-    public void assemble( ModuleAssembly module )
-        throws AssemblyException
-    {
-        super.assemble( module );
-        module.services( OrgJsonValueSerializationService.class );
-    }
-}

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonPlainValueSerializationTest.java
----------------------------------------------------------------------
diff --git 
a/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonPlainValueSerializationTest.java
 
b/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonPlainValueSerializationTest.java
deleted file mode 100644
index 8fbce90..0000000
--- 
a/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonPlainValueSerializationTest.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (c) 2012, Paul Merlin. All Rights Reserved.
- *
- * 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.
- */
-package org.qi4j.valueserialization.orgjson;
-
-import org.qi4j.bootstrap.AssemblyException;
-import org.qi4j.bootstrap.ModuleAssembly;
-import org.qi4j.test.value.AbstractPlainValueSerializationTest;
-
-public class OrgJsonPlainValueSerializationTest
-    extends AbstractPlainValueSerializationTest
-{
-
-    @Override
-    public void assemble( ModuleAssembly module )
-        throws AssemblyException
-    {
-        super.assemble( module );
-        module.services( OrgJsonValueSerializationService.class );
-    }
-}

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonValueCompositeSerializationTest.java
----------------------------------------------------------------------
diff --git 
a/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonValueCompositeSerializationTest.java
 
b/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonValueCompositeSerializationTest.java
deleted file mode 100644
index 9a43fe9..0000000
--- 
a/core/spi/src/test/java/org/qi4j/valueserialization/orgjson/OrgJsonValueCompositeSerializationTest.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Copyright (c) 2012, Paul Merlin. All Rights Reserved.
- *
- * 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.
- */
-package org.qi4j.valueserialization.orgjson;
-
-import org.qi4j.bootstrap.AssemblyException;
-import org.qi4j.bootstrap.ModuleAssembly;
-import org.qi4j.test.value.AbstractValueCompositeSerializationTest;
-
-public class OrgJsonValueCompositeSerializationTest
-    extends AbstractValueCompositeSerializationTest
-{
-
-    @Override
-    public void assemble( ModuleAssembly module )
-        throws AssemblyException
-    {
-        super.assemble( module );
-        module.services( OrgJsonValueSerializationService.class );
-    }
-}

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/core/testsupport/src/main/java/org/qi4j/test/value/AbstractPlainValueSerializationTest.java
----------------------------------------------------------------------
diff --git 
a/core/testsupport/src/main/java/org/qi4j/test/value/AbstractPlainValueSerializationTest.java
 
b/core/testsupport/src/main/java/org/qi4j/test/value/AbstractPlainValueSerializationTest.java
index abb6a65..f4aca44 100644
--- 
a/core/testsupport/src/main/java/org/qi4j/test/value/AbstractPlainValueSerializationTest.java
+++ 
b/core/testsupport/src/main/java/org/qi4j/test/value/AbstractPlainValueSerializationTest.java
@@ -27,8 +27,6 @@ import org.junit.Test;
 import org.qi4j.api.entity.EntityReference;
 import org.qi4j.api.injection.scope.Service;
 import org.qi4j.api.value.ValueSerialization;
-import org.qi4j.bootstrap.AssemblyException;
-import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.test.AbstractQi4jTest;
 
 import static org.hamcrest.CoreMatchers.*;
@@ -38,16 +36,10 @@ import static org.junit.Assert.*;
 /**
  * Assert that ValueSerialization behaviour on plain values is correct.
  */
-public class AbstractPlainValueSerializationTest
+public abstract class AbstractPlainValueSerializationTest
     extends AbstractQi4jTest
 {
 
-    @Override
-    public void assemble( ModuleAssembly module )
-        throws AssemblyException
-    {
-    }
-
     @Before
     public void before()
     {

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-file/build.gradle
----------------------------------------------------------------------
diff --git a/extensions/entitystore-file/build.gradle 
b/extensions/entitystore-file/build.gradle
index a7edb3a..321a1ec 100644
--- a/extensions/entitystore-file/build.gradle
+++ b/extensions/entitystore-file/build.gradle
@@ -2,14 +2,15 @@ jar { manifest { name = "Qi4j Extension - EntityStore - File 
system" }}
 
 dependencies {
 
-  compile(project(":org.qi4j.core:org.qi4j.core.spi"))
-  compile(project(":org.qi4j.core:org.qi4j.core.bootstrap"))
-  compile(project(":org.qi4j.libraries:org.qi4j.library.constraints"))
-  compile(project(":org.qi4j.libraries:org.qi4j.library.locking"))
-  compile(project(":org.qi4j.libraries:org.qi4j.library.fileconfig"))
+    compile(project(":org.qi4j.core:org.qi4j.core.spi"))
+    compile(project(":org.qi4j.core:org.qi4j.core.bootstrap"))
+    compile(project(":org.qi4j.libraries:org.qi4j.library.constraints"))
+    compile(project(":org.qi4j.libraries:org.qi4j.library.locking"))
+    compile(project(":org.qi4j.libraries:org.qi4j.library.fileconfig"))
 
-  testCompile(project(":org.qi4j.core:org.qi4j.core.testsupport"))
+    testCompile(project(":org.qi4j.core:org.qi4j.core.testsupport"))
+    
testCompile(project(":org.qi4j.extensions:org.qi4j.extension.valueserialization-orgjson"))
 
-  testRuntime(project(":org.qi4j.core:org.qi4j.core.runtime"))
-  testRuntime(libraries.logback)
+    testRuntime(project(":org.qi4j.core:org.qi4j.core.runtime"))
+    testRuntime(libraries.logback)
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-file/src/main/java/org/qi4j/entitystore/file/assembly/FileEntityStoreAssembler.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-file/src/main/java/org/qi4j/entitystore/file/assembly/FileEntityStoreAssembler.java
 
b/extensions/entitystore-file/src/main/java/org/qi4j/entitystore/file/assembly/FileEntityStoreAssembler.java
index 1df9a2b..ec9c35f 100644
--- 
a/extensions/entitystore-file/src/main/java/org/qi4j/entitystore/file/assembly/FileEntityStoreAssembler.java
+++ 
b/extensions/entitystore-file/src/main/java/org/qi4j/entitystore/file/assembly/FileEntityStoreAssembler.java
@@ -18,19 +18,23 @@
 package org.qi4j.entitystore.file.assembly;
 
 import org.qi4j.api.common.Visibility;
-import org.qi4j.api.value.ValueSerialization;
 import org.qi4j.bootstrap.Assembler;
 import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.entitystore.file.FileEntityStoreService;
 import org.qi4j.spi.uuid.UuidIdentityGeneratorService;
-import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationService;
 
 public class FileEntityStoreAssembler
     implements Assembler
 {
+
     private Visibility visibility;
 
+    public FileEntityStoreAssembler()
+    {
+        this.visibility = Visibility.module;
+    }
+
     public FileEntityStoreAssembler( Visibility visibility )
     {
         this.visibility = visibility;
@@ -42,6 +46,5 @@ public class FileEntityStoreAssembler
     {
         module.services( FileEntityStoreService.class ).visibleIn( visibility 
);
         module.services( UuidIdentityGeneratorService.class ).visibleIn( 
visibility );
-        module.services( OrgJsonValueSerializationService.class ).taggedWith( 
ValueSerialization.Formats.JSON );
     }
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-file/src/test/java/org/qi4j/entitystore/file/FileEntityStoreTest.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-file/src/test/java/org/qi4j/entitystore/file/FileEntityStoreTest.java
 
b/extensions/entitystore-file/src/test/java/org/qi4j/entitystore/file/FileEntityStoreTest.java
index 532fdbf..38c3e38 100644
--- 
a/extensions/entitystore-file/src/test/java/org/qi4j/entitystore/file/FileEntityStoreTest.java
+++ 
b/extensions/entitystore-file/src/test/java/org/qi4j/entitystore/file/FileEntityStoreTest.java
@@ -23,15 +23,16 @@ import 
org.qi4j.entitystore.file.assembly.FileEntityStoreAssembler;
 import org.qi4j.library.fileconfig.FileConfigurationService;
 import org.qi4j.test.EntityTestAssembler;
 import org.qi4j.test.entity.AbstractEntityStoreTest;
+import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
 
 public class FileEntityStoreTest
-        extends AbstractEntityStoreTest
+    extends AbstractEntityStoreTest
 {
 
     @Override
     // START SNIPPET: assembly
     public void assemble( ModuleAssembly module )
-            throws AssemblyException
+        throws AssemblyException
     {
         // END SNIPPET: assembly
         super.assemble( module );
@@ -39,9 +40,9 @@ public class FileEntityStoreTest
         ModuleAssembly config = module.layer().module( "config" );
         new EntityTestAssembler().assemble( config );
         // START SNIPPET: assembly
-        new FileEntityStoreAssembler( Visibility.module ).assemble( module );
+        new OrgJsonValueSerializationAssembler().assemble( module );
+        new FileEntityStoreAssembler().assemble( module );
         config.entities( FileEntityStoreConfiguration.class ).visibleIn( 
Visibility.layer );
     }
     // END SNIPPET: assembly
-
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-hazelcast/build.gradle
----------------------------------------------------------------------
diff --git a/extensions/entitystore-hazelcast/build.gradle 
b/extensions/entitystore-hazelcast/build.gradle
index 5a5b3b8..d4dfa43 100644
--- a/extensions/entitystore-hazelcast/build.gradle
+++ b/extensions/entitystore-hazelcast/build.gradle
@@ -3,13 +3,17 @@ description = "Qi4j Hazelcast EntityStore Extension"
 jar { manifest { name = "Qi4j Extension - EntityStore - Hazelcast" }}
 
 dependencies {
-  compile(project(":org.qi4j.core:org.qi4j.core.api"))
-  compile(project(":org.qi4j.core:org.qi4j.core.spi"))
-  compile(project(":org.qi4j.core:org.qi4j.core.bootstrap"))
-  compile(project(":org.qi4j.libraries:org.qi4j.library.locking"))
-  compile(libraries.hazelcast)
-  testCompile(project(":org.qi4j.core:org.qi4j.core.testsupport"))
-  testRuntime(project(":org.qi4j.core:org.qi4j.core.runtime"))
-  testRuntime(libraries.logback)
-}
 
+    compile(project(":org.qi4j.core:org.qi4j.core.api"))
+    compile(project(":org.qi4j.core:org.qi4j.core.spi"))
+    compile(project(":org.qi4j.core:org.qi4j.core.bootstrap"))
+    compile(project(":org.qi4j.libraries:org.qi4j.library.locking"))
+    compile(libraries.hazelcast)
+
+    testCompile(project(":org.qi4j.core:org.qi4j.core.testsupport"))
+    
testCompile(project(":org.qi4j.extensions:org.qi4j.extension.valueserialization-orgjson"))
+
+    testRuntime(project(":org.qi4j.core:org.qi4j.core.runtime"))
+    testRuntime(libraries.logback)
+
+}

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-hazelcast/src/main/java/org/qi4j/entitystore/hazelcast/assembly/HazelcastEntityStoreAssembler.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-hazelcast/src/main/java/org/qi4j/entitystore/hazelcast/assembly/HazelcastEntityStoreAssembler.java
 
b/extensions/entitystore-hazelcast/src/main/java/org/qi4j/entitystore/hazelcast/assembly/HazelcastEntityStoreAssembler.java
index e38926d..06a0b6a 100644
--- 
a/extensions/entitystore-hazelcast/src/main/java/org/qi4j/entitystore/hazelcast/assembly/HazelcastEntityStoreAssembler.java
+++ 
b/extensions/entitystore-hazelcast/src/main/java/org/qi4j/entitystore/hazelcast/assembly/HazelcastEntityStoreAssembler.java
@@ -19,23 +19,19 @@
 package org.qi4j.entitystore.hazelcast.assembly;
 
 import org.qi4j.api.common.Visibility;
-import org.qi4j.api.value.ValueSerialization;
 import org.qi4j.bootstrap.Assembler;
 import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.entitystore.hazelcast.HazelcastConfiguration;
 import org.qi4j.entitystore.hazelcast.HazelcastEntityStoreService;
 import org.qi4j.spi.uuid.UuidIdentityGeneratorService;
-import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationService;
 
 public class HazelcastEntityStoreAssembler
-        implements Assembler
+    implements Assembler
 {
 
     private final Visibility visibility;
-
     private ModuleAssembly config;
-
     private Visibility configVisibility;
 
     public HazelcastEntityStoreAssembler()
@@ -57,14 +53,13 @@ public class HazelcastEntityStoreAssembler
 
     @Override
     public void assemble( ModuleAssembly module )
-            throws AssemblyException
+        throws AssemblyException
     {
         module.services( HazelcastEntityStoreService.class ).visibleIn( 
visibility ).instantiateOnStartup();
         module.services( UuidIdentityGeneratorService.class ).visibleIn( 
visibility );
-        module.services( OrgJsonValueSerializationService.class ).taggedWith( 
ValueSerialization.Formats.JSON );
-        if ( config != null ) {
+        if( config != null )
+        {
             config.entities( HazelcastConfiguration.class ).visibleIn( 
configVisibility );
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-hazelcast/src/test/java/org/qi4j/entitystore/hazelcast/HazelcastEntityStoreTest.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-hazelcast/src/test/java/org/qi4j/entitystore/hazelcast/HazelcastEntityStoreTest.java
 
b/extensions/entitystore-hazelcast/src/test/java/org/qi4j/entitystore/hazelcast/HazelcastEntityStoreTest.java
index 9afdba9..e8635c1 100644
--- 
a/extensions/entitystore-hazelcast/src/test/java/org/qi4j/entitystore/hazelcast/HazelcastEntityStoreTest.java
+++ 
b/extensions/entitystore-hazelcast/src/test/java/org/qi4j/entitystore/hazelcast/HazelcastEntityStoreTest.java
@@ -20,30 +20,29 @@ package org.qi4j.entitystore.hazelcast;
 
 import org.junit.After;
 import org.junit.Test;
-
 import org.qi4j.api.common.Visibility;
 import org.qi4j.api.unitofwork.UnitOfWorkCompletionException;
 import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.entitystore.hazelcast.assembly.HazelcastEntityStoreAssembler;
-import org.qi4j.entitystore.memory.MemoryEntityStoreService;
 import org.qi4j.test.EntityTestAssembler;
 import org.qi4j.test.entity.AbstractEntityStoreTest;
+import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
 
 public class HazelcastEntityStoreTest
-        extends AbstractEntityStoreTest
+    extends AbstractEntityStoreTest
 {
 
     @Override
     // START SNIPPET: assembly
     public void assemble( ModuleAssembly module )
-            throws AssemblyException
+        throws AssemblyException
     {
         // END SNIPPET: assembly
         super.assemble( module );
         ModuleAssembly configModule = module.layer().module( "config" );
         new EntityTestAssembler().assemble( configModule );
-
+        new OrgJsonValueSerializationAssembler().assemble( module );
         // START SNIPPET: assembly
         new HazelcastEntityStoreAssembler().withConfigIn( configModule, 
Visibility.layer ).assemble( module );
     }
@@ -52,7 +51,7 @@ public class HazelcastEntityStoreTest
     @Test
     @Override
     public void 
givenConcurrentUnitOfWorksWhenUoWCompletesThenCheckConcurrentModification()
-            throws UnitOfWorkCompletionException
+        throws UnitOfWorkCompletionException
     {
         
super.givenConcurrentUnitOfWorksWhenUoWCompletesThenCheckConcurrentModification();
     }
@@ -60,10 +59,9 @@ public class HazelcastEntityStoreTest
     @After
     @Override
     public void tearDown()
-            throws Exception
+        throws Exception
     {
         super.tearDown();
         // TODO : delete test data
     }
-
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-jclouds/build.gradle
----------------------------------------------------------------------
diff --git a/extensions/entitystore-jclouds/build.gradle 
b/extensions/entitystore-jclouds/build.gradle
index acb24e8..7b5e1e9 100644
--- a/extensions/entitystore-jclouds/build.gradle
+++ b/extensions/entitystore-jclouds/build.gradle
@@ -4,17 +4,18 @@ jar { manifest { name = "Qi4j Extension - EntityStore - 
JClouds" }}
 
 dependencies {
 
-  compile project( ":org.qi4j.core:org.qi4j.core.bootstrap" )
-  compile project( ":org.qi4j.libraries:org.qi4j.library.locking" )
-  compile libraries.guava
-  compile libraries.jclouds_core
-  compile libraries.jclouds_blobstore
+    compile project( ":org.qi4j.core:org.qi4j.core.bootstrap" )
+    compile project( ":org.qi4j.libraries:org.qi4j.library.locking" )
+    compile libraries.guava
+    compile libraries.jclouds_core
+    compile libraries.jclouds_blobstore
 
-  testCompile project( ":org.qi4j.core:org.qi4j.core.testsupport" )
-  testCompile libraries.jclouds_filesystem
+    testCompile project( ":org.qi4j.core:org.qi4j.core.testsupport" )
+    
testCompile(project(":org.qi4j.extensions:org.qi4j.extension.valueserialization-orgjson"))
+    testCompile libraries.jclouds_filesystem
 
-  testRuntime project( ":org.qi4j.core:org.qi4j.core.runtime" )
-  testRuntime libraries.logback
+    testRuntime project( ":org.qi4j.core:org.qi4j.core.runtime" )
+    testRuntime libraries.logback
 
 }
 

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-jclouds/src/main/java/org/qi4j/entitystore/jclouds/JCloudsMapEntityStoreAssembler.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-jclouds/src/main/java/org/qi4j/entitystore/jclouds/JCloudsMapEntityStoreAssembler.java
 
b/extensions/entitystore-jclouds/src/main/java/org/qi4j/entitystore/jclouds/JCloudsMapEntityStoreAssembler.java
index b544e9b..1ab802e 100644
--- 
a/extensions/entitystore-jclouds/src/main/java/org/qi4j/entitystore/jclouds/JCloudsMapEntityStoreAssembler.java
+++ 
b/extensions/entitystore-jclouds/src/main/java/org/qi4j/entitystore/jclouds/JCloudsMapEntityStoreAssembler.java
@@ -14,23 +14,18 @@
 package org.qi4j.entitystore.jclouds;
 
 import org.qi4j.api.common.Visibility;
-import org.qi4j.api.value.ValueSerialization;
 import org.qi4j.bootstrap.Assembler;
 import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.spi.uuid.UuidIdentityGeneratorService;
-import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationService;
 
 public class JCloudsMapEntityStoreAssembler
-        implements Assembler
+    implements Assembler
 {
 
     private final Visibility visibility;
-
     private String identity;
-
     private ModuleAssembly config;
-
     private Visibility configVisibility;
 
     public JCloudsMapEntityStoreAssembler()
@@ -58,17 +53,17 @@ public class JCloudsMapEntityStoreAssembler
 
     @Override
     public void assemble( ModuleAssembly module )
-            throws AssemblyException
+        throws AssemblyException
     {
         module.services( UuidIdentityGeneratorService.class );
-        module.services( OrgJsonValueSerializationService.class ).taggedWith( 
ValueSerialization.Formats.JSON );
         module.services( JCloudsMapEntityStoreService.class ).visibleIn( 
visibility ).instantiateOnStartup();
-        if ( identity != null && identity.length() > 0 ) {
+        if( identity != null && identity.length() > 0 )
+        {
             module.services( JCloudsMapEntityStoreService.class 
).identifiedBy( identity );
         }
-        if ( config != null ) {
+        if( config != null )
+        {
             config.entities( JCloudsMapEntityStoreConfiguration.class 
).visibleIn( configVisibility );
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-jclouds/src/test/java/org/qi4j/entitystore/jclouds/JCloudsFilesystemTest.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-jclouds/src/test/java/org/qi4j/entitystore/jclouds/JCloudsFilesystemTest.java
 
b/extensions/entitystore-jclouds/src/test/java/org/qi4j/entitystore/jclouds/JCloudsFilesystemTest.java
index 071bbf4..2a96236 100644
--- 
a/extensions/entitystore-jclouds/src/test/java/org/qi4j/entitystore/jclouds/JCloudsFilesystemTest.java
+++ 
b/extensions/entitystore-jclouds/src/test/java/org/qi4j/entitystore/jclouds/JCloudsFilesystemTest.java
@@ -22,6 +22,7 @@ import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.test.EntityTestAssembler;
 import org.qi4j.test.entity.AbstractEntityStoreTest;
+import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
 
 public class JCloudsFilesystemTest
         extends AbstractEntityStoreTest
@@ -34,6 +35,7 @@ public class JCloudsFilesystemTest
         super.assemble( module );
         ModuleAssembly config = module.layer().module( "config" );
         new EntityTestAssembler().assemble( config );
+        new OrgJsonValueSerializationAssembler().assemble( module );
         new JCloudsMapEntityStoreAssembler().withConfigIn( config, 
Visibility.layer ).assemble( module );
         JCloudsMapEntityStoreConfiguration defaults = config.forMixin( 
JCloudsMapEntityStoreConfiguration.class ).declareDefaults();
         defaults.provider().set( "filesystem" );

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-jclouds/src/test/java/org/qi4j/entitystore/jclouds/JCloudsTransientTest.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-jclouds/src/test/java/org/qi4j/entitystore/jclouds/JCloudsTransientTest.java
 
b/extensions/entitystore-jclouds/src/test/java/org/qi4j/entitystore/jclouds/JCloudsTransientTest.java
index 44ddc5b..b109559 100644
--- 
a/extensions/entitystore-jclouds/src/test/java/org/qi4j/entitystore/jclouds/JCloudsTransientTest.java
+++ 
b/extensions/entitystore-jclouds/src/test/java/org/qi4j/entitystore/jclouds/JCloudsTransientTest.java
@@ -18,6 +18,7 @@ import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.test.EntityTestAssembler;
 import org.qi4j.test.entity.AbstractEntityStoreTest;
+import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
 
 public class JCloudsTransientTest
         extends AbstractEntityStoreTest
@@ -30,6 +31,7 @@ public class JCloudsTransientTest
         super.assemble( module );
         ModuleAssembly config = module.layer().module( "config" );
         new EntityTestAssembler().assemble( config );
+        new OrgJsonValueSerializationAssembler().assemble( module );
         // START SNIPPET: assembly
         new JCloudsMapEntityStoreAssembler().withConfigIn( config, 
Visibility.layer ).assemble( module );
         // END SNIPPET: assembly

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-jdbm/build.gradle
----------------------------------------------------------------------
diff --git a/extensions/entitystore-jdbm/build.gradle 
b/extensions/entitystore-jdbm/build.gradle
index f1ba3a5..9400cb6 100644
--- a/extensions/entitystore-jdbm/build.gradle
+++ b/extensions/entitystore-jdbm/build.gradle
@@ -11,6 +11,7 @@ dependencies {
   compile libraries.jdbm
 
   testCompile project( ":org.qi4j.core:org.qi4j.core.testsupport" )
+  
testCompile(project(":org.qi4j.extensions:org.qi4j.extension.valueserialization-orgjson"))
 
   testRuntime project( ":org.qi4j.core:org.qi4j.core.runtime" )
   testRuntime libraries.logback

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-jdbm/src/main/java/org/qi4j/entitystore/jdbm/assembly/JdbmEntityStoreAssembler.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-jdbm/src/main/java/org/qi4j/entitystore/jdbm/assembly/JdbmEntityStoreAssembler.java
 
b/extensions/entitystore-jdbm/src/main/java/org/qi4j/entitystore/jdbm/assembly/JdbmEntityStoreAssembler.java
index 2bc217e..f10ef46 100644
--- 
a/extensions/entitystore-jdbm/src/main/java/org/qi4j/entitystore/jdbm/assembly/JdbmEntityStoreAssembler.java
+++ 
b/extensions/entitystore-jdbm/src/main/java/org/qi4j/entitystore/jdbm/assembly/JdbmEntityStoreAssembler.java
@@ -18,30 +18,28 @@
 package org.qi4j.entitystore.jdbm.assembly;
 
 import org.qi4j.api.common.Visibility;
-import org.qi4j.api.value.ValueSerialization;
 import org.qi4j.bootstrap.Assembler;
 import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.entitystore.jdbm.JdbmEntityStoreService;
 import org.qi4j.spi.uuid.UuidIdentityGeneratorService;
-import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationService;
 
 public class JdbmEntityStoreAssembler
-        implements Assembler
+    implements Assembler
 {
-   private Visibility visibility;
 
-   public JdbmEntityStoreAssembler(Visibility visibility)
-   {
-      this.visibility = visibility;
-   }
+    private Visibility visibility;
+
+    public JdbmEntityStoreAssembler( Visibility visibility )
+    {
+        this.visibility = visibility;
+    }
 
     @Override
-   public void assemble(ModuleAssembly module)
-           throws AssemblyException
-   {
-      module.services(JdbmEntityStoreService.class).visibleIn(visibility);
-      
module.services(UuidIdentityGeneratorService.class).visibleIn(visibility);
-      module.services( OrgJsonValueSerializationService.class ).taggedWith( 
ValueSerialization.Formats.JSON );
-   }
+    public void assemble( ModuleAssembly module )
+        throws AssemblyException
+    {
+        module.services( JdbmEntityStoreService.class ).visibleIn( visibility 
);
+        module.services( UuidIdentityGeneratorService.class ).visibleIn( 
visibility );
+    }
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-jdbm/src/test/java/org/qi4j/entitystore/jdbm/JdbmEntityStoreTest.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-jdbm/src/test/java/org/qi4j/entitystore/jdbm/JdbmEntityStoreTest.java
 
b/extensions/entitystore-jdbm/src/test/java/org/qi4j/entitystore/jdbm/JdbmEntityStoreTest.java
index 42e0558..3faabc8 100644
--- 
a/extensions/entitystore-jdbm/src/test/java/org/qi4j/entitystore/jdbm/JdbmEntityStoreTest.java
+++ 
b/extensions/entitystore-jdbm/src/test/java/org/qi4j/entitystore/jdbm/JdbmEntityStoreTest.java
@@ -24,60 +24,58 @@ import 
org.qi4j.api.unitofwork.UnitOfWorkCompletionException;
 import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.entitystore.jdbm.assembly.JdbmEntityStoreAssembler;
-import org.qi4j.entitystore.memory.MemoryEntityStoreService;
 import org.qi4j.library.fileconfig.FileConfigurationService;
-import org.qi4j.spi.uuid.UuidIdentityGeneratorService;
 import org.qi4j.test.EntityTestAssembler;
 import org.qi4j.test.entity.AbstractEntityStoreTest;
+import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
 
-/**
- * JAVADOC
- */
 public class JdbmEntityStoreTest
-        extends AbstractEntityStoreTest
+    extends AbstractEntityStoreTest
 {
-   public void assemble(ModuleAssembly module)
-           throws AssemblyException
-   {
-      super.assemble(module);
-      module.services(FileConfigurationService.class).instantiateOnStartup();
-      new JdbmEntityStoreAssembler( Visibility.module ).assemble( module );
 
-      ModuleAssembly config = module.layer().module("config");
-      config.entities(JdbmConfiguration.class).visibleIn(Visibility.layer);
-      new EntityTestAssembler().assemble( config );
-   }
+    @Override
+    public void assemble( ModuleAssembly module )
+        throws AssemblyException
+    {
+        super.assemble( module );
+        module.services( FileConfigurationService.class 
).instantiateOnStartup();
+        new JdbmEntityStoreAssembler( Visibility.module ).assemble( module );
 
-   @Test
-   @Override
-   public void 
givenConcurrentUnitOfWorksWhenUoWCompletesThenCheckConcurrentModification()
-           throws UnitOfWorkCompletionException
-   {
-      
super.givenConcurrentUnitOfWorksWhenUoWCompletesThenCheckConcurrentModification();
-   }
+        ModuleAssembly config = module.layer().module( "config" );
+        config.entities( JdbmConfiguration.class ).visibleIn( Visibility.layer 
);
+        new EntityTestAssembler().assemble( config );
+        new OrgJsonValueSerializationAssembler().assemble( module );
+    }
 
-   @Override
-   @After
-   public void tearDown()
-           throws Exception
-   {
-      super.tearDown();
-      File dbFile = new File("qi4j.data.db");
-      boolean success = true;
-      if (dbFile.exists())
-      {
-         success = dbFile.delete();
-      }
+    @Test
+    @Override
+    public void 
givenConcurrentUnitOfWorksWhenUoWCompletesThenCheckConcurrentModification()
+        throws UnitOfWorkCompletionException
+    {
+        
super.givenConcurrentUnitOfWorksWhenUoWCompletesThenCheckConcurrentModification();
+    }
 
-      File logFile = new File("qi4j.data.lg");
-      if (logFile.exists())
+    @Override
+    @After
+    public void tearDown()
+        throws Exception
+    {
+        super.tearDown();
+        File dbFile = new File( "qi4j.data.db" );
+        boolean success = true;
+        if( dbFile.exists() )
+        {
+            success = dbFile.delete();
+        }
 
-      {
-         success = success & logFile.delete();
-      }
-      if (!success)
-      {
-         throw new Exception("Could not delete test data");
-      }
-   }
+        File logFile = new File( "qi4j.data.lg" );
+        if( logFile.exists() )
+        {
+            success = success & logFile.delete();
+        }
+        if( !success )
+        {
+            throw new Exception( "Could not delete test data" );
+        }
+    }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-leveldb/build.gradle
----------------------------------------------------------------------
diff --git a/extensions/entitystore-leveldb/build.gradle 
b/extensions/entitystore-leveldb/build.gradle
index 68cb7d0..cc4f3e9 100644
--- a/extensions/entitystore-leveldb/build.gradle
+++ b/extensions/entitystore-leveldb/build.gradle
@@ -13,6 +13,7 @@ dependencies {
     runtime libraries.leveldb_jni_all
 
     testCompile project( ":org.qi4j.core:org.qi4j.core.testsupport" )
+    
testCompile(project(":org.qi4j.extensions:org.qi4j.extension.valueserialization-orgjson"))
 
     testRuntime project( ":org.qi4j.core:org.qi4j.core.runtime" )
     testRuntime libraries.logback

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-leveldb/src/main/java/org/qi4j/entitystore/leveldb/LevelDBEntityStoreAssembler.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-leveldb/src/main/java/org/qi4j/entitystore/leveldb/LevelDBEntityStoreAssembler.java
 
b/extensions/entitystore-leveldb/src/main/java/org/qi4j/entitystore/leveldb/LevelDBEntityStoreAssembler.java
index 86a9019..414a15a 100644
--- 
a/extensions/entitystore-leveldb/src/main/java/org/qi4j/entitystore/leveldb/LevelDBEntityStoreAssembler.java
+++ 
b/extensions/entitystore-leveldb/src/main/java/org/qi4j/entitystore/leveldb/LevelDBEntityStoreAssembler.java
@@ -1,12 +1,10 @@
 package org.qi4j.entitystore.leveldb;
 
 import org.qi4j.api.common.Visibility;
-import org.qi4j.api.value.ValueSerialization;
 import org.qi4j.bootstrap.Assembler;
 import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.spi.uuid.UuidIdentityGeneratorService;
-import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationService;
 
 /**
  * LevelDB EntityStore assembly.
@@ -48,7 +46,6 @@ public class LevelDBEntityStoreAssembler
             configModule = module;
         }
         module.services( UuidIdentityGeneratorService.class );
-        module.services( OrgJsonValueSerializationService.class ).taggedWith( 
ValueSerialization.Formats.JSON );
         module.services( LevelDBEntityStoreService.class ).visibleIn( 
visibility );
         configModule.entities( LevelDBEntityStoreConfiguration.class 
).visibleIn( configVisibility );
         if( identity != null )
@@ -56,5 +53,4 @@ public class LevelDBEntityStoreAssembler
             module.services( LevelDBEntityStoreService.class ).identifiedBy( 
identity );
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-leveldb/src/test/java/org/qi4j/entitystore/leveldb/JavaLevelDBEntityStoreTest.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-leveldb/src/test/java/org/qi4j/entitystore/leveldb/JavaLevelDBEntityStoreTest.java
 
b/extensions/entitystore-leveldb/src/test/java/org/qi4j/entitystore/leveldb/JavaLevelDBEntityStoreTest.java
index d1d1606..d153c99 100644
--- 
a/extensions/entitystore-leveldb/src/test/java/org/qi4j/entitystore/leveldb/JavaLevelDBEntityStoreTest.java
+++ 
b/extensions/entitystore-leveldb/src/test/java/org/qi4j/entitystore/leveldb/JavaLevelDBEntityStoreTest.java
@@ -23,6 +23,7 @@ import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.library.fileconfig.FileConfigurationService;
 import org.qi4j.test.EntityTestAssembler;
 import org.qi4j.test.entity.AbstractEntityStoreTest;
+import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
 
 public class JavaLevelDBEntityStoreTest
     extends AbstractEntityStoreTest
@@ -37,6 +38,8 @@ public class JavaLevelDBEntityStoreTest
         super.assemble( module );
         ModuleAssembly config = module.layer().module( "config" );
         new EntityTestAssembler( Visibility.module ).assemble( config );
+        new OrgJsonValueSerializationAssembler().assemble( module );
+
         module.services( FileConfigurationService.class );
 
         // START SNIPPET: assembly
@@ -50,5 +53,4 @@ public class JavaLevelDBEntityStoreTest
         // START SNIPPET: assembly
     }
     // END SNIPPET: assembly
-
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-leveldb/src/test/java/org/qi4j/entitystore/leveldb/JniLevelDBEntityStoreTest.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-leveldb/src/test/java/org/qi4j/entitystore/leveldb/JniLevelDBEntityStoreTest.java
 
b/extensions/entitystore-leveldb/src/test/java/org/qi4j/entitystore/leveldb/JniLevelDBEntityStoreTest.java
index 3541939..21420c6 100644
--- 
a/extensions/entitystore-leveldb/src/test/java/org/qi4j/entitystore/leveldb/JniLevelDBEntityStoreTest.java
+++ 
b/extensions/entitystore-leveldb/src/test/java/org/qi4j/entitystore/leveldb/JniLevelDBEntityStoreTest.java
@@ -23,6 +23,7 @@ import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.library.fileconfig.FileConfigurationService;
 import org.qi4j.test.EntityTestAssembler;
 import org.qi4j.test.entity.AbstractEntityStoreTest;
+import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
 
 public class JniLevelDBEntityStoreTest
     extends AbstractEntityStoreTest
@@ -36,6 +37,7 @@ public class JniLevelDBEntityStoreTest
 
         ModuleAssembly config = module.layer().module( "config" );
         new EntityTestAssembler( Visibility.module ).assemble( config );
+        new OrgJsonValueSerializationAssembler().assemble( module );
 
         module.services( FileConfigurationService.class );
 
@@ -46,5 +48,4 @@ public class JniLevelDBEntityStoreTest
 
         config.forMixin( LevelDBEntityStoreConfiguration.class 
).declareDefaults().flavour().set( "jni" );
     }
-
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-mongodb/build.gradle
----------------------------------------------------------------------
diff --git a/extensions/entitystore-mongodb/build.gradle 
b/extensions/entitystore-mongodb/build.gradle
index c3cff2b..32e99c8 100644
--- a/extensions/entitystore-mongodb/build.gradle
+++ b/extensions/entitystore-mongodb/build.gradle
@@ -3,12 +3,15 @@ description = "Qi4j MongoDB EntityStore Extension"
 jar { manifest { name = "Qi4j Extension - EntityStore - MongoDB" }}
 
 dependencies {
+
     compile project( ":org.qi4j.core:org.qi4j.core.bootstrap" )
     compile project( ":org.qi4j.libraries:org.qi4j.library.locking" )
     compile libraries.mongodb
 
     testCompile project( ":org.qi4j.core:org.qi4j.core.testsupport" )
+    
testCompile(project(":org.qi4j.extensions:org.qi4j.extension.valueserialization-orgjson"))
 
     testRuntime project( ":org.qi4j.core:org.qi4j.core.runtime" )
     testRuntime libraries.logback
+
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-mongodb/src/main/java/org/qi4j/entitystore/mongodb/MongoEntityStoreConfiguration.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-mongodb/src/main/java/org/qi4j/entitystore/mongodb/MongoEntityStoreConfiguration.java
 
b/extensions/entitystore-mongodb/src/main/java/org/qi4j/entitystore/mongodb/MongoEntityStoreConfiguration.java
index c4e33ce..92763ac 100644
--- 
a/extensions/entitystore-mongodb/src/main/java/org/qi4j/entitystore/mongodb/MongoEntityStoreConfiguration.java
+++ 
b/extensions/entitystore-mongodb/src/main/java/org/qi4j/entitystore/mongodb/MongoEntityStoreConfiguration.java
@@ -26,7 +26,7 @@ import org.qi4j.api.property.Property;
 
 // START SNIPPET: config
 public interface MongoEntityStoreConfiguration
-        extends ConfigurationComposite
+    extends ConfigurationComposite
 {
 
     @Optional

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-mongodb/src/main/java/org/qi4j/entitystore/mongodb/MongoMapEntityStoreAssembler.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-mongodb/src/main/java/org/qi4j/entitystore/mongodb/MongoMapEntityStoreAssembler.java
 
b/extensions/entitystore-mongodb/src/main/java/org/qi4j/entitystore/mongodb/MongoMapEntityStoreAssembler.java
index 7b672cb..ffd4ec4 100644
--- 
a/extensions/entitystore-mongodb/src/main/java/org/qi4j/entitystore/mongodb/MongoMapEntityStoreAssembler.java
+++ 
b/extensions/entitystore-mongodb/src/main/java/org/qi4j/entitystore/mongodb/MongoMapEntityStoreAssembler.java
@@ -22,34 +22,24 @@ import java.net.UnknownHostException;
 import java.util.ArrayList;
 import java.util.List;
 import org.qi4j.api.common.Visibility;
-import org.qi4j.api.value.ValueSerialization;
 import org.qi4j.bootstrap.Assembler;
 import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.entitystore.mongodb.MongoEntityStoreConfiguration.WriteConcern;
 import org.qi4j.spi.uuid.UuidIdentityGeneratorService;
-import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationService;
 
 public class MongoMapEntityStoreAssembler
-        implements Assembler
+    implements Assembler
 {
 
     private Visibility visibility = Visibility.application;
-
     private ModuleAssembly configModule;
-
     private Visibility configVisibility = Visibility.layer;
-
     private String hostname = "127.0.0.1";
-
     private Integer port = 27017;
-
     private String database;
-
     private String collection;
-
     private WriteConcern writeConcern;
-
     private List<ServerAddress> serverAddresses;
 
     public MongoMapEntityStoreAssembler withVisibility( Visibility visibility )
@@ -76,11 +66,12 @@ public class MongoMapEntityStoreAssembler
      * Calling this method once disable the default behavior that use the 
MongoDB defaults: 127.0.0.1 27017
      */
     public MongoMapEntityStoreAssembler addHostnameAndPort( String hostname, 
Integer port )
-            throws UnknownHostException
+        throws UnknownHostException
     {
         this.hostname = null;
         this.port = null;
-        if ( serverAddresses == null ) {
+        if( serverAddresses == null )
+        {
             serverAddresses = new ArrayList<ServerAddress>();
         }
         serverAddresses.add( new ServerAddress( hostname, port ) );
@@ -107,9 +98,10 @@ public class MongoMapEntityStoreAssembler
 
     @Override
     public void assemble( ModuleAssembly module )
-            throws AssemblyException
+        throws AssemblyException
     {
-        if ( configModule == null ) {
+        if( configModule == null )
+        {
             configModule = module;
         }
         onAssemble( module, visibility, configModule, configVisibility );
@@ -119,28 +111,32 @@ public class MongoMapEntityStoreAssembler
     {
         module.services( MongoMapEntityStoreService.class ).visibleIn( 
visibility );
         module.services( UuidIdentityGeneratorService.class ).visibleIn( 
visibility );
-        module.services( OrgJsonValueSerializationService.class ).taggedWith( 
ValueSerialization.Formats.JSON );
 
         configModule.entities( MongoEntityStoreConfiguration.class 
).visibleIn( configVisibility );
         MongoEntityStoreConfiguration mongoConfig = configModule.forMixin( 
MongoEntityStoreConfiguration.class ).declareDefaults();
-        if ( hostname != null ) {
+        if( hostname != null )
+        {
             mongoConfig.hostname().set( hostname );
         }
-        if ( port != null ) {
+        if( port != null )
+        {
             mongoConfig.port().set( port );
         }
-        if ( database != null ) {
+        if( database != null )
+        {
             mongoConfig.database().set( database );
         }
-        if ( collection != null ) {
+        if( collection != null )
+        {
             mongoConfig.collection().set( collection );
         }
-        if ( writeConcern != null ) {
+        if( writeConcern != null )
+        {
             mongoConfig.writeConcern().set( writeConcern );
         }
-        if ( serverAddresses != null ) {
+        if( serverAddresses != null )
+        {
             mongoConfig.nodes().set( serverAddresses );
         }
     }
-
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-mongodb/src/main/java/org/qi4j/entitystore/mongodb/MongoMapEntityStoreMixin.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-mongodb/src/main/java/org/qi4j/entitystore/mongodb/MongoMapEntityStoreMixin.java
 
b/extensions/entitystore-mongodb/src/main/java/org/qi4j/entitystore/mongodb/MongoMapEntityStoreMixin.java
index 71d48be..0c444f8 100644
--- 
a/extensions/entitystore-mongodb/src/main/java/org/qi4j/entitystore/mongodb/MongoMapEntityStoreMixin.java
+++ 
b/extensions/entitystore-mongodb/src/main/java/org/qi4j/entitystore/mongodb/MongoMapEntityStoreMixin.java
@@ -224,14 +224,12 @@ public class MongoMapEntityStoreMixin
 
         changes.visitMap( new MapChanger()
         {
-
             @Override
             public Writer newEntity( final EntityReference ref, 
EntityDescriptor entityDescriptor )
                 throws IOException
             {
                 return new StringWriter( 1000 )
                 {
-
                     @Override
                     public void close()
                         throws IOException
@@ -256,7 +254,6 @@ public class MongoMapEntityStoreMixin
                         entity.put( STATE_COLUMN, bsonState );
                         entities.save( entity, writeConcern );
                     }
-
                 };
             }
 
@@ -266,7 +263,6 @@ public class MongoMapEntityStoreMixin
             {
                 return new StringWriter( 1000 )
                 {
-
                     @Override
                     public void close()
                         throws IOException
@@ -280,7 +276,6 @@ public class MongoMapEntityStoreMixin
                         entity.put( STATE_COLUMN, bsonState );
                         entities.update( byIdentity( ref ), entity, true, 
false, writeConcern );
                     }
-
                 };
             }
 
@@ -295,7 +290,6 @@ public class MongoMapEntityStoreMixin
                 }
                 entities.remove( entity, writeConcern );
             }
-
         } );
 
         db.requestDone();
@@ -306,14 +300,12 @@ public class MongoMapEntityStoreMixin
     {
         return new Input<Reader, IOException>()
         {
-
             @Override
             public <ReceiverThrowableType extends Throwable> void transferTo( 
Output<? super Reader, ReceiverThrowableType> output )
                 throws IOException, ReceiverThrowableType
             {
                 output.receiveFrom( new Sender<Reader, IOException>()
                 {
-
                     @Override
                     public <ReceiverThrowableType extends Throwable> void 
sendTo( Receiver<? super Reader, ReceiverThrowableType> receiver )
                         throws ReceiverThrowableType, IOException
@@ -331,10 +323,8 @@ public class MongoMapEntityStoreMixin
 
                         db.requestDone();
                     }
-
                 } );
             }
-
         };
     }
 
@@ -342,5 +332,4 @@ public class MongoMapEntityStoreMixin
     {
         return new BasicDBObject( IDENTITY_COLUMN, entityReference.identity() 
);
     }
-
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-mongodb/src/test/java/org/qi4j/entitystore/mongodb/MongoMapEntityStoreTest.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-mongodb/src/test/java/org/qi4j/entitystore/mongodb/MongoMapEntityStoreTest.java
 
b/extensions/entitystore-mongodb/src/test/java/org/qi4j/entitystore/mongodb/MongoMapEntityStoreTest.java
index 411033b..d1db76f 100644
--- 
a/extensions/entitystore-mongodb/src/test/java/org/qi4j/entitystore/mongodb/MongoMapEntityStoreTest.java
+++ 
b/extensions/entitystore-mongodb/src/test/java/org/qi4j/entitystore/mongodb/MongoMapEntityStoreTest.java
@@ -23,6 +23,7 @@ import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.entitystore.memory.MemoryEntityStoreService;
 import org.qi4j.test.entity.AbstractEntityStoreTest;
+import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
 
 /**
  * Test the MongoMapEntityStoreService.
@@ -34,13 +35,13 @@ import org.qi4j.test.entity.AbstractEntityStoreTest;
  */
 @Ignore( "This test is ignored because it needs a MongoDB instance" )
 public class MongoMapEntityStoreTest
-        extends AbstractEntityStoreTest
+    extends AbstractEntityStoreTest
 {
 
     @Override
     // START SNIPPET: assembly
     public void assemble( ModuleAssembly module )
-            throws AssemblyException
+        throws AssemblyException
     {
         // END SNIPPET: assembly
         super.assemble( module );
@@ -48,6 +49,8 @@ public class MongoMapEntityStoreTest
         ModuleAssembly config = module.layer().module( "config" );
         config.services( MemoryEntityStoreService.class );
 
+        new OrgJsonValueSerializationAssembler().assemble( module );
+
         // START SNIPPET: assembly
         new MongoMapEntityStoreAssembler().withConfigModule( config 
).assemble( module );
         // END SNIPPET: assembly
@@ -59,14 +62,12 @@ public class MongoMapEntityStoreTest
         // START SNIPPET: assembly
     }
     // END SNIPPET: assembly
-
     private Mongo mongo;
-
     private String dbName;
 
     @Override
     public void setUp()
-            throws Exception
+        throws Exception
     {
         super.setUp();
         MongoMapEntityStoreService es = module.findService( 
MongoMapEntityStoreService.class ).get();
@@ -77,10 +78,9 @@ public class MongoMapEntityStoreTest
 
     @Override
     public void tearDown()
-            throws Exception
+        throws Exception
     {
         mongo.dropDatabase( dbName );
         super.tearDown();
     }
-
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-neo4j/build.gradle
----------------------------------------------------------------------
diff --git a/extensions/entitystore-neo4j/build.gradle 
b/extensions/entitystore-neo4j/build.gradle
index bd977f1..4fff878 100644
--- a/extensions/entitystore-neo4j/build.gradle
+++ b/extensions/entitystore-neo4j/build.gradle
@@ -9,6 +9,7 @@ dependencies {
   compile(libraries.neo4j)
 
   testCompile(project(":org.qi4j.core:org.qi4j.core.testsupport"))
+  
testCompile(project(":org.qi4j.extensions:org.qi4j.extension.valueserialization-orgjson"))
 
   testRuntime(project(":org.qi4j.core:org.qi4j.core.runtime"))
   testRuntime(libraries.logback)

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-neo4j/src/test/java/org/qi4j/entitystore/neo4j/test/SimpleNeoStoreTest.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-neo4j/src/test/java/org/qi4j/entitystore/neo4j/test/SimpleNeoStoreTest.java
 
b/extensions/entitystore-neo4j/src/test/java/org/qi4j/entitystore/neo4j/test/SimpleNeoStoreTest.java
index 068d006..f7841e3 100644
--- 
a/extensions/entitystore-neo4j/src/test/java/org/qi4j/entitystore/neo4j/test/SimpleNeoStoreTest.java
+++ 
b/extensions/entitystore-neo4j/src/test/java/org/qi4j/entitystore/neo4j/test/SimpleNeoStoreTest.java
@@ -1,7 +1,6 @@
 package org.qi4j.entitystore.neo4j.test;
 
 import org.qi4j.api.common.Visibility;
-import org.qi4j.api.value.ValueSerialization;
 import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.entitystore.neo4j.NeoConfiguration;
@@ -9,29 +8,30 @@ import org.qi4j.entitystore.neo4j.NeoEntityStoreService;
 import org.qi4j.library.fileconfig.FileConfigurationService;
 import org.qi4j.test.EntityTestAssembler;
 import org.qi4j.test.entity.AbstractEntityStoreTest;
-import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationService;
+import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
 
 public class SimpleNeoStoreTest
-        extends AbstractEntityStoreTest
+    extends AbstractEntityStoreTest
 {
-   public void assemble(ModuleAssembly module)
-           throws AssemblyException
-   {
-      module.layer().application().setName("SimpleNeoTest");
 
-      super.assemble(module);
-      module.services(FileConfigurationService.class);
+    public void assemble( ModuleAssembly module )
+        throws AssemblyException
+    {
+        module.layer().application().setName( "SimpleNeoTest" );
 
-      module.services(NeoEntityStoreService.class);
-      module.services( OrgJsonValueSerializationService.class ).taggedWith( 
ValueSerialization.Formats.JSON );
+        super.assemble( module );
+        module.services( FileConfigurationService.class );
 
-      ModuleAssembly configModule = module.layer().module("config");
-      
configModule.entities(NeoConfiguration.class).visibleIn(Visibility.layer);
-      new EntityTestAssembler().assemble( configModule );
-   }
+        module.services( NeoEntityStoreService.class );
 
-   @Override
-   public void 
givenConcurrentUnitOfWorksWhenUoWCompletesThenCheckConcurrentModification()
-   {
-   }
+        ModuleAssembly configModule = module.layer().module( "config" );
+        configModule.entities( NeoConfiguration.class ).visibleIn( 
Visibility.layer );
+        new EntityTestAssembler().assemble( configModule );
+        new OrgJsonValueSerializationAssembler().assemble( module );
+    }
+
+    @Override
+    public void 
givenConcurrentUnitOfWorksWhenUoWCompletesThenCheckConcurrentModification()
+    {
+    }
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-preferences/build.gradle
----------------------------------------------------------------------
diff --git a/extensions/entitystore-preferences/build.gradle 
b/extensions/entitystore-preferences/build.gradle
index 38d2763..4992c84 100644
--- a/extensions/entitystore-preferences/build.gradle
+++ b/extensions/entitystore-preferences/build.gradle
@@ -4,11 +4,14 @@ description = "Qi4j Preferences EntityStore Extension"
 jar { manifest { name = "Qi4j Extension - EntityStore - Preferences" }}
 
 dependencies {
-  compile(project(":org.qi4j.core:org.qi4j.core.bootstrap"))
+    
+    compile(project(":org.qi4j.core:org.qi4j.core.bootstrap"))
 
-  testCompile(project(":org.qi4j.core:org.qi4j.core.testsupport"))
+    testCompile(project(":org.qi4j.core:org.qi4j.core.testsupport"))
+    
testCompile(project(":org.qi4j.extensions:org.qi4j.extension.valueserialization-orgjson"))
+
+    testRuntime(project(":org.qi4j.core:org.qi4j.core.runtime"))
+    testRuntime(libraries.logback)
 
-  testRuntime(project(":org.qi4j.core:org.qi4j.core.runtime"))
-  testRuntime(libraries.logback)
 }
 

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-preferences/src/main/java/org/qi4j/entitystore/prefs/assembly/PreferenceEntityStoreAssembler.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-preferences/src/main/java/org/qi4j/entitystore/prefs/assembly/PreferenceEntityStoreAssembler.java
 
b/extensions/entitystore-preferences/src/main/java/org/qi4j/entitystore/prefs/assembly/PreferenceEntityStoreAssembler.java
index 216782e..e4b2188 100644
--- 
a/extensions/entitystore-preferences/src/main/java/org/qi4j/entitystore/prefs/assembly/PreferenceEntityStoreAssembler.java
+++ 
b/extensions/entitystore-preferences/src/main/java/org/qi4j/entitystore/prefs/assembly/PreferenceEntityStoreAssembler.java
@@ -19,18 +19,17 @@ package org.qi4j.entitystore.prefs.assembly;
 
 import java.util.prefs.Preferences;
 import org.qi4j.api.common.Visibility;
-import org.qi4j.api.value.ValueSerialization;
 import org.qi4j.bootstrap.Assembler;
 import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.entitystore.prefs.PreferencesEntityStoreInfo;
 import org.qi4j.entitystore.prefs.PreferencesEntityStoreService;
 import org.qi4j.spi.uuid.UuidIdentityGeneratorService;
-import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationService;
 
 public class PreferenceEntityStoreAssembler
     implements Assembler
 {
+
     private Visibility visibility;
 
     public PreferenceEntityStoreAssembler( Visibility visibility )
@@ -52,6 +51,5 @@ public class PreferenceEntityStoreAssembler
             .visibleIn( visibility )
             .instantiateOnStartup();
         module.services( UuidIdentityGeneratorService.class ).visibleIn( 
visibility );
-        module.services( OrgJsonValueSerializationService.class ).taggedWith( 
ValueSerialization.Formats.JSON );
     }
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-preferences/src/test/java/org/qi4j/entitystore/PreferencesEntityStoreTest.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-preferences/src/test/java/org/qi4j/entitystore/PreferencesEntityStoreTest.java
 
b/extensions/entitystore-preferences/src/test/java/org/qi4j/entitystore/PreferencesEntityStoreTest.java
index bf65b9b..01bb36d 100644
--- 
a/extensions/entitystore-preferences/src/test/java/org/qi4j/entitystore/PreferencesEntityStoreTest.java
+++ 
b/extensions/entitystore-preferences/src/test/java/org/qi4j/entitystore/PreferencesEntityStoreTest.java
@@ -11,25 +11,21 @@
  * limitations under the License.
  *
  */
-
 package org.qi4j.entitystore;
 
+import java.util.prefs.Preferences;
 import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.entitystore.prefs.PreferencesEntityStoreInfo;
 import org.qi4j.entitystore.prefs.PreferencesEntityStoreService;
 import org.qi4j.test.entity.AbstractEntityStoreTest;
+import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
 
-import java.util.prefs.Preferences;
-import org.qi4j.api.value.ValueSerialization;
-import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationService;
-
-/**
- * JAVADOC
- */
 public class PreferencesEntityStoreTest
     extends AbstractEntityStoreTest
 {
+
+    @Override
     public void assemble( ModuleAssembly module )
         throws AssemblyException
     {
@@ -41,6 +37,6 @@ public class PreferencesEntityStoreTest
         PreferencesEntityStoreInfo metaInfo = new PreferencesEntityStoreInfo( 
Preferences.userNodeForPackage( getClass() ) );
         Thread.currentThread().setContextClassLoader( cl );
         module.services( PreferencesEntityStoreService.class ).setMetaInfo( 
metaInfo ).instantiateOnStartup();
-        module.services( OrgJsonValueSerializationService.class ).taggedWith( 
ValueSerialization.Formats.JSON );
+        new OrgJsonValueSerializationAssembler().assemble( module );
     }
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-redis/build.gradle
----------------------------------------------------------------------
diff --git a/extensions/entitystore-redis/build.gradle 
b/extensions/entitystore-redis/build.gradle
index e0fe376..6416e28 100644
--- a/extensions/entitystore-redis/build.gradle
+++ b/extensions/entitystore-redis/build.gradle
@@ -3,13 +3,16 @@ description = "Qi4j Redis EntityStore Extension"
 jar { manifest { name = "Qi4j Extension - EntityStore - Redis" }}
 
 dependencies {
-  compile(project(":org.qi4j.core:org.qi4j.core.bootstrap"))
-  compile(project(":org.qi4j.libraries:org.qi4j.library.locking"))
-  compile(libraries.jedis)
+    
+    compile(project(":org.qi4j.core:org.qi4j.core.bootstrap"))
+    compile(project(":org.qi4j.libraries:org.qi4j.library.locking"))
+    compile(libraries.jedis)
 
-  testCompile(project(":org.qi4j.core:org.qi4j.core.testsupport"))
+    testCompile(project(":org.qi4j.core:org.qi4j.core.testsupport"))
+    
testCompile(project(":org.qi4j.extensions:org.qi4j.extension.valueserialization-orgjson"))
+
+    testRuntime(project(":org.qi4j.core:org.qi4j.core.runtime"))
+    testRuntime(libraries.logback)
 
-  testRuntime(project(":org.qi4j.core:org.qi4j.core.runtime"))
-  testRuntime(libraries.logback)
 }
 

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-redis/src/main/java/org/qi4j/entitystore/redis/RedisMapEntityStoreAssembler.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-redis/src/main/java/org/qi4j/entitystore/redis/RedisMapEntityStoreAssembler.java
 
b/extensions/entitystore-redis/src/main/java/org/qi4j/entitystore/redis/RedisMapEntityStoreAssembler.java
index dbc24ef..a126a9a 100644
--- 
a/extensions/entitystore-redis/src/main/java/org/qi4j/entitystore/redis/RedisMapEntityStoreAssembler.java
+++ 
b/extensions/entitystore-redis/src/main/java/org/qi4j/entitystore/redis/RedisMapEntityStoreAssembler.java
@@ -18,12 +18,10 @@
 package org.qi4j.entitystore.redis;
 
 import org.qi4j.api.common.Visibility;
-import org.qi4j.api.value.ValueSerialization;
 import org.qi4j.bootstrap.Assembler;
 import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
 import org.qi4j.spi.uuid.UuidIdentityGeneratorService;
-import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationService;
 
 /**
  * Redis EntityStore assembly.
@@ -69,8 +67,6 @@ public class RedisMapEntityStoreAssembler
     {
         module.services( RedisMapEntityStoreService.class ).visibleIn( 
visibility );
         module.services( UuidIdentityGeneratorService.class ).visibleIn( 
visibility );
-        module.services( OrgJsonValueSerializationService.class ).taggedWith( 
ValueSerialization.Formats.JSON );
         configModule.entities( RedisEntityStoreConfiguration.class 
).visibleIn( configVisibility );
     }
-
 }

http://git-wip-us.apache.org/repos/asf/zest-qi4j/blob/bb5fcda3/extensions/entitystore-redis/src/test/java/org/qi4j/entitystore/redis/RedisMapEntityStoreTest.java
----------------------------------------------------------------------
diff --git 
a/extensions/entitystore-redis/src/test/java/org/qi4j/entitystore/redis/RedisMapEntityStoreTest.java
 
b/extensions/entitystore-redis/src/test/java/org/qi4j/entitystore/redis/RedisMapEntityStoreTest.java
index 33ec5b1..089f0ae 100644
--- 
a/extensions/entitystore-redis/src/test/java/org/qi4j/entitystore/redis/RedisMapEntityStoreTest.java
+++ 
b/extensions/entitystore-redis/src/test/java/org/qi4j/entitystore/redis/RedisMapEntityStoreTest.java
@@ -20,35 +20,36 @@ package org.qi4j.entitystore.redis;
 import org.junit.Ignore;
 import org.qi4j.bootstrap.AssemblyException;
 import org.qi4j.bootstrap.ModuleAssembly;
-import org.qi4j.entitystore.memory.MemoryEntityStoreService;
+import org.qi4j.test.EntityTestAssembler;
 import org.qi4j.test.entity.AbstractEntityStoreTest;
+import org.qi4j.valueserialization.orgjson.OrgJsonValueSerializationAssembler;
 import redis.clients.jedis.Jedis;
 import redis.clients.jedis.JedisPool;
 
 @Ignore( "This test is ignored because it needs a Redis instance" )
 public class RedisMapEntityStoreTest
-        extends AbstractEntityStoreTest
+    extends AbstractEntityStoreTest
 {
 
     @Override
     // START SNIPPET: assembly
     public void assemble( ModuleAssembly module )
-            throws AssemblyException
+        throws AssemblyException
     {
         // END SNIPPET: assembly
         super.assemble( module );
         ModuleAssembly config = module.layer().module( "config" );
-        config.services( MemoryEntityStoreService.class );
+        new EntityTestAssembler().assemble( config );
+        new OrgJsonValueSerializationAssembler().assemble( module );
         // START SNIPPET: assembly
         new RedisMapEntityStoreAssembler().withConfigModule( config 
).assemble( module );
     }
     // END SNIPPET: assembly
-
     private JedisPool jedisPool;
 
     @Override
     public void setUp()
-            throws Exception
+        throws Exception
     {
         super.setUp();
         RedisMapEntityStoreService es = module.findService( 
RedisMapEntityStoreService.class ).get();
@@ -58,15 +59,17 @@ public class RedisMapEntityStoreTest
 
     @Override
     public void tearDown()
-            throws Exception
+        throws Exception
     {
         Jedis jedis = jedisPool.getResource();
-        try {
+        try
+        {
             jedis.flushDB();
-        } finally {
+        }
+        finally
+        {
             jedisPool.returnResource( jedis );
         }
         super.tearDown();
     }
-
 }

Reply via email to