diff options
| author | Keith Wall <kwall@apache.org> | 2014-03-18 11:31:52 +0000 |
|---|---|---|
| committer | Keith Wall <kwall@apache.org> | 2014-03-18 11:31:52 +0000 |
| commit | e5e3a215f30176a60661ad263331df1f5f3f896d (patch) | |
| tree | 5f7b7f1eea736222e8cc7a76d8c7fc4ba5b48932 /qpid/java/bdbstore | |
| parent | 451d05e9b7e7cc8070482983e511d703b4a2961f (diff) | |
| parent | eba5294974fb2a73b4e765c74196ba4a63079f03 (diff) | |
| download | qpid-python-e5e3a215f30176a60661ad263331df1f5f3f896d.tar.gz | |
NO-JIRA: Merged changes from trunk with command:
svn merge https://svn.apache.org/repos/asf/qpid/trunk
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/java-broker-bdb-ha2@1578827 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/bdbstore')
3 files changed, 33 insertions, 11 deletions
diff --git a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStore.java b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStore.java index c8550b2114..8be037eb7b 100644 --- a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStore.java +++ b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStore.java @@ -760,12 +760,6 @@ public class BDBMessageStore implements MessageStore, DurableConfigurationStore } @Override - public void update(ConfiguredObjectRecord... records) throws StoreException - { - update(false, records); - } - - @Override public void update(boolean createIfNecessary, ConfiguredObjectRecord... records) throws StoreException { com.sleepycat.je.Transaction txn = _environmentFacade.getEnvironment().beginTransaction(null, null); diff --git a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuple/ConfiguredObjectBinding.java b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuple/ConfiguredObjectBinding.java index a408732e2f..bc3beeb78b 100644 --- a/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuple/ConfiguredObjectBinding.java +++ b/qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuple/ConfiguredObjectBinding.java @@ -24,6 +24,8 @@ import java.io.IOException; import java.io.StringWriter; import java.util.Map; import java.util.UUID; + +import org.apache.qpid.server.model.ConfiguredObject; import org.apache.qpid.server.store.ConfiguredObjectRecord; import com.sleepycat.bind.tuple.TupleBinding; @@ -31,14 +33,42 @@ import com.sleepycat.bind.tuple.TupleInput; import com.sleepycat.bind.tuple.TupleOutput; import org.apache.qpid.server.store.StoreException; import org.codehaus.jackson.JsonGenerationException; +import org.codehaus.jackson.JsonGenerator; +import org.codehaus.jackson.JsonProcessingException; +import org.codehaus.jackson.Version; import org.codehaus.jackson.map.JsonMappingException; +import org.codehaus.jackson.map.JsonSerializer; +import org.codehaus.jackson.map.Module; import org.codehaus.jackson.map.ObjectMapper; +import org.codehaus.jackson.map.SerializerProvider; +import org.codehaus.jackson.map.module.SimpleModule; public class ConfiguredObjectBinding extends TupleBinding<ConfiguredObjectRecord> { private static final ConfiguredObjectBinding INSTANCE = new ConfiguredObjectBinding(null); + private final UUID _uuid; + private static final Module _module; + static + { + SimpleModule module= new SimpleModule("ConfiguredObjectSerializer", new Version(1,0,0,null)); + + final JsonSerializer<ConfiguredObject> serializer = new JsonSerializer<ConfiguredObject>() + { + @Override + public void serialize(final ConfiguredObject value, + final JsonGenerator jgen, + final SerializerProvider provider) + throws IOException, JsonProcessingException + { + jgen.writeString(value.getId().toString()); + } + }; + module.addSerializer(ConfiguredObject.class, serializer); + + _module = module; + } public static ConfiguredObjectBinding getInstance() { @@ -74,7 +104,9 @@ public class ConfiguredObjectBinding extends TupleBinding<ConfiguredObjectRecord try { StringWriter writer = new StringWriter(); - new ObjectMapper().writeValue(writer, object.getAttributes()); + final ObjectMapper objectMapper = new ObjectMapper(); + objectMapper.registerModule(_module); + objectMapper.writeValue(writer, object.getAttributes()); tupleOutput.writeString(object.getType()); tupleOutput.writeString(writer.toString()); } diff --git a/qpid/java/bdbstore/systests/pom.xml b/qpid/java/bdbstore/systests/pom.xml index 7d4913ebcd..e8620d3426 100644 --- a/qpid/java/bdbstore/systests/pom.xml +++ b/qpid/java/bdbstore/systests/pom.xml @@ -67,8 +67,4 @@ </dependency> </dependencies> - <build> - <testSourceDirectory>src/main/java</testSourceDirectory> - </build> - </project> |
