summaryrefslogtreecommitdiff
path: root/qpid/java/bdbstore
diff options
context:
space:
mode:
authorKeith Wall <kwall@apache.org>2014-03-18 11:31:52 +0000
committerKeith Wall <kwall@apache.org>2014-03-18 11:31:52 +0000
commite5e3a215f30176a60661ad263331df1f5f3f896d (patch)
tree5f7b7f1eea736222e8cc7a76d8c7fc4ba5b48932 /qpid/java/bdbstore
parent451d05e9b7e7cc8070482983e511d703b4a2961f (diff)
parenteba5294974fb2a73b4e765c74196ba4a63079f03 (diff)
downloadqpid-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')
-rw-r--r--qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/BDBMessageStore.java6
-rw-r--r--qpid/java/bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuple/ConfiguredObjectBinding.java34
-rw-r--r--qpid/java/bdbstore/systests/pom.xml4
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>