From 5ed8ea783305378d0ac1b61f94a0e3e449def1b0 Mon Sep 17 00:00:00 2001 From: Peter Lawrey Date: Sun, 17 May 2015 12:22:42 +0100 Subject: [PATCH] fix tests for chronicle map on engine. --- .../chronicle/map/MapStatelessClient.java | 20 +++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/src/main/java/net/openhft/chronicle/map/MapStatelessClient.java b/src/main/java/net/openhft/chronicle/map/MapStatelessClient.java index 0465d1bcb..b6908e323 100644 --- a/src/main/java/net/openhft/chronicle/map/MapStatelessClient.java +++ b/src/main/java/net/openhft/chronicle/map/MapStatelessClient.java @@ -3,13 +3,16 @@ 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.ValueIn; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import java.util.function.Function; + /** * Created by Rob Austin */ -public abstract class MapStatelessClient< E extends ParameterizeWireKey> extends AbstactStatelessClient { +public abstract class MapStatelessClient extends AbstactStatelessClient { /** * @param channelName @@ -28,14 +31,19 @@ public abstract class MapStatelessClient< E extends ParameterizeWireKey> extends @Nullable protected R proxyReturnTypedObject( @NotNull final E eventId, + R usingValue, @NotNull final Class resultType, @Nullable Object... args) { + Function consumerIn = resultType == CharSequence.class && usingValue != null + ? f -> { + f.text((StringBuilder) usingValue); + return usingValue; + } + : f -> f.object(resultType); return proxyReturnWireConsumerInOut(eventId, - CoreFields.reply, toParameters(eventId, args), - f -> f.object(resultType)); - + CoreFields.reply, + toParameters(eventId, args), + consumerIn); } - - }