X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fbe%2Fnikiroo%2Futils%2Fserial%2Fserver%2FServerString.java;h=6fe4ad0df1a6aeb4d37aaba4de6a5f5bdf1ce306;hb=388f4a2513c45fc1c316dc3a291094a2e92fdcd7;hp=9d8d008e02a3907f3c0a386ca165c1c8e4b12352;hpb=8468bb79f0fc9c88fa21355509731625732eb10e;p=nikiroo-utils.git diff --git a/src/be/nikiroo/utils/serial/server/ServerString.java b/src/be/nikiroo/utils/serial/server/ServerString.java index 9d8d008..6fe4ad0 100644 --- a/src/be/nikiroo/utils/serial/server/ServerString.java +++ b/src/be/nikiroo/utils/serial/server/ServerString.java @@ -4,8 +4,6 @@ import java.io.IOException; import java.net.Socket; import java.net.UnknownHostException; -import be.nikiroo.utils.Version; - /** * This class implements a simple server that can listen for connections and * send/receive Strings. @@ -68,11 +66,12 @@ abstract public class ServerString extends Server { protected ConnectActionServer createConnectActionServer(Socket s) { return new ConnectActionServerString(s, key) { @Override - public void action(Version clientVersion) throws Exception { + public void action() throws Exception { + long id = getNextId(); for (String data = rec(); data != null; data = rec()) { String rep = null; try { - rep = onRequest(this, clientVersion, data); + rep = onRequest(this, data, id); if (isClosing()) { return; } @@ -83,9 +82,10 @@ abstract public class ServerString extends Server { if (rep == null) { rep = ""; } - send(rep); } + + onRequestDone(id, getBytesReceived(), getBytesSent()); } @Override @@ -103,10 +103,11 @@ abstract public class ServerString extends Server { * * @param action * the client action - * @param clientVersion - * the client version * @param data * the data sent by the client + * @param id + * an ID to identify this request (will also be re-used for + * {@link ServerObject#onRequestDone(long, long, long)}. * * @return the answer to return to the client * @@ -114,5 +115,5 @@ abstract public class ServerString extends Server { * in case of an exception, the error will only be logged */ abstract protected String onRequest(ConnectActionServerString action, - Version clientVersion, String data) throws Exception; + String data, long id) throws Exception; }