diff --git a/pom.xml b/pom.xml
index a145073cd..5f7b87c63 100755
--- a/pom.xml
+++ b/pom.xml
@@ -49,7 +49,7 @@
net.openhft
chronicle-bom
pom
- 1.0.5
+ 1.0.6-SNAPSHOT
import
@@ -64,7 +64,8 @@
-
+
+
net.openhft
chronicle-core
diff --git a/src/main/java/net/openhft/chronicle/map/MapStatelessClient.java b/src/main/java/net/openhft/chronicle/map/MapStatelessClient.java
index bdb34b59d..0465d1bcb 100644
--- a/src/main/java/net/openhft/chronicle/map/MapStatelessClient.java
+++ b/src/main/java/net/openhft/chronicle/map/MapStatelessClient.java
@@ -3,7 +3,6 @@ package net.openhft.chronicle.map;
import net.openhft.chronicle.engine.client.ClientWiredStatelessTcpConnectionHub;
import net.openhft.chronicle.wire.CoreFields;
import net.openhft.chronicle.wire.ParameterizeWireKey;
-import net.openhft.chronicle.wire.WireKey;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
@@ -33,32 +32,10 @@ public abstract class MapStatelessClient< E extends ParameterizeWireKey> extends
@Nullable Object... args) {
return proxyReturnWireConsumerInOut(eventId,
- toParameters(eventId, args),
- f -> f.read(CoreFields.reply)
- .object(resultType));
+ CoreFields.reply, toParameters(eventId, args),
+ f -> f.object(resultType));
}
-
-/*
- protected E proxyReturnE(@NotNull final WireKey eventId,
- @Nullable final O arg,
- @NotNull final Class eClass) {
-
-
- return proxyReturnWireConsumerInOut(eventId,
- valueOut -> valueOut.object(arg),
- f -> f.read(CoreFields.reply)
- .object(eClass));
- }
-
- protected E proxyReturnE(@NotNull final WireKey eventId,
- @NotNull final Class eClass) {
- return proxyReturnWireConsumer(eventId,
- f -> f.read(CoreFields.reply)
- .object(eClass));
- } */
-
-
}
diff --git a/src/main/java/net/openhft/chronicle/map/MapWireHandlerProcessor.java b/src/main/java/net/openhft/chronicle/map/MapWireHandlerProcessor.java
index b5620e5f6..c72fdab3f 100644
--- a/src/main/java/net/openhft/chronicle/map/MapWireHandlerProcessor.java
+++ b/src/main/java/net/openhft/chronicle/map/MapWireHandlerProcessor.java
@@ -209,7 +209,7 @@ public class MapWireHandlerProcessor implements
if (clear.contentEquals(eventName)) {
map.clear();
- outWire.writeEventName(reply).marshallable(AbstactStatelessClient.EMPTY);
+
return;
}
@@ -223,7 +223,6 @@ public class MapWireHandlerProcessor implements
}
map.putAll(data);
- outWire.writeEventName(reply).marshallable(AbstactStatelessClient.EMPTY);
return;
}
@@ -436,31 +435,26 @@ public class MapWireHandlerProcessor implements
*/
private void writeData(@NotNull Consumer c) {
- final long position = outWire.bytes().position();
outWire.writeDocument(false, out -> {
- start = outWire.bytes().position();
-
+ final long position = outWire.bytes().position();
try {
c.accept(outWire);
- } catch (Exception e) {
-
- LOG.error("", e);
- out.getValueOut()
- .type(e.getClass().getSimpleName())
- .writeValue().text(e.getMessage());
+ } catch (Exception exception) {
+ outWire.bytes().position(position);
+ outWire.writeEventName(() -> "exception").marshallable(
+ new net.openhft.chronicle.wire.util.ExceptionMarshaller(exception));
}
+
+ // write 'reply : {} ' if no data was sent
+ if (position == outWire.bytes().position()) {
+ outWire.writeEventName(reply).marshallable(AbstactStatelessClient.EMPTY);
+ }
+
});
- // rollback if no data was written
- if (start == outWire.bytes().position()) {
- if (outWire.bytes().position() == start) {
- outWire.bytes().position(position);
- }
-
- }
}