From e4643f33aa3fb32d1acb0603b04d2b378dd23f8e Mon Sep 17 00:00:00 2001 From: Artur Signell Date: Thu, 1 Mar 2012 18:39:39 +0200 Subject: [PATCH] VaadinSerializer -> JSONSerializer --- .../{VaadinSerializer.java => JSONSerializer.java} | 14 +++++++++----- .../gwt/client/communication/JsonDecoder.java | 2 +- .../gwt/client/communication/JsonEncoder.java | 2 +- .../gwt/client/communication/SerializerMap.java | 4 ++-- .../gwt/widgetsetutils/SerializerGenerator.java | 4 ++-- .../gwt/widgetsetutils/SerializerMapGenerator.java | 4 ++-- 6 files changed, 17 insertions(+), 13 deletions(-) rename src/com/vaadin/terminal/gwt/client/communication/{VaadinSerializer.java => JSONSerializer.java} (75%) diff --git a/src/com/vaadin/terminal/gwt/client/communication/VaadinSerializer.java b/src/com/vaadin/terminal/gwt/client/communication/JSONSerializer.java similarity index 75% rename from src/com/vaadin/terminal/gwt/client/communication/VaadinSerializer.java rename to src/com/vaadin/terminal/gwt/client/communication/JSONSerializer.java index f201e507e3..ee03323618 100644 --- a/src/com/vaadin/terminal/gwt/client/communication/VaadinSerializer.java +++ b/src/com/vaadin/terminal/gwt/client/communication/JSONSerializer.java @@ -5,19 +5,23 @@ package com.vaadin.terminal.gwt.client.communication; import com.google.gwt.json.client.JSONObject; -import com.google.gwt.json.client.JSONValue; import com.vaadin.terminal.gwt.client.ConnectorMap; import com.vaadin.terminal.gwt.server.JsonCodec; /** - * Serializer that can deserialize custom objects received from the server. + * Implementors of this interface knows how to serialize an Object of a given + * type to JSON and how to deserialize the JSON back into an object. * - * Each serializer can handle objects of a single type - see - * {@link SerializerMap}. + * The {@link #serialize(Object, ConnectorMap)} and + * {@link #deserialize(JSONObject, ConnectorMap)} methods must be symmetric so + * they can be chained and produce the original result (or an equal result). + * + * Each {@link JSONSerializer} implementation can handle an object of a single + * type - see {@link SerializerMap}. * * @since 7.0 */ -public interface VaadinSerializer { +public interface JSONSerializer { /** * Creates and deserializes an object received from the server. Must be diff --git a/src/com/vaadin/terminal/gwt/client/communication/JsonDecoder.java b/src/com/vaadin/terminal/gwt/client/communication/JsonDecoder.java index 6682faa69d..444faa6276 100644 --- a/src/com/vaadin/terminal/gwt/client/communication/JsonDecoder.java +++ b/src/com/vaadin/terminal/gwt/client/communication/JsonDecoder.java @@ -80,7 +80,7 @@ public class JsonDecoder { val = idMapper.getConnector(String.valueOf(value)); } else { // object, class name as type - VaadinSerializer serializer = serializerMap + JSONSerializer serializer = serializerMap .getSerializer(variableType); // TODO handle case with no serializer found Object object = serializer diff --git a/src/com/vaadin/terminal/gwt/client/communication/JsonEncoder.java b/src/com/vaadin/terminal/gwt/client/communication/JsonEncoder.java index 3013cc9060..faa701f2db 100644 --- a/src/com/vaadin/terminal/gwt/client/communication/JsonEncoder.java +++ b/src/com/vaadin/terminal/gwt/client/communication/JsonEncoder.java @@ -100,7 +100,7 @@ public class JsonEncoder { // Try to find a generated serializer object, class name is the // type String type = value.getClass().getName(); - VaadinSerializer serializer = JsonDecoder.serializerMap + JSONSerializer serializer = JsonDecoder.serializerMap .getSerializer(type); // TODO handle case with no serializer found diff --git a/src/com/vaadin/terminal/gwt/client/communication/SerializerMap.java b/src/com/vaadin/terminal/gwt/client/communication/SerializerMap.java index 12983d3579..0750474d24 100644 --- a/src/com/vaadin/terminal/gwt/client/communication/SerializerMap.java +++ b/src/com/vaadin/terminal/gwt/client/communication/SerializerMap.java @@ -8,7 +8,7 @@ import com.vaadin.terminal.gwt.widgetsetutils.SerializerMapGenerator; /** * Provide a mapping from a type (communicated between the server and the - * client) and a {@link VaadinSerializer} instance. + * client) and a {@link JSONSerializer} instance. * * An implementation of this class is created at GWT compilation time by * {@link SerializerMapGenerator}, so this interface can be instantiated with @@ -29,6 +29,6 @@ public interface SerializerMap { * if no serializer is found */ // TODO better error handling in javadoc and in generator - public VaadinSerializer getSerializer(String type); + public JSONSerializer getSerializer(String type); } diff --git a/src/com/vaadin/terminal/gwt/widgetsetutils/SerializerGenerator.java b/src/com/vaadin/terminal/gwt/widgetsetutils/SerializerGenerator.java index 39a38b5428..f992b3ff2c 100644 --- a/src/com/vaadin/terminal/gwt/widgetsetutils/SerializerGenerator.java +++ b/src/com/vaadin/terminal/gwt/widgetsetutils/SerializerGenerator.java @@ -28,7 +28,7 @@ import com.vaadin.terminal.gwt.client.ConnectorMap; import com.vaadin.terminal.gwt.client.communication.JsonDecoder; import com.vaadin.terminal.gwt.client.communication.JsonEncoder; import com.vaadin.terminal.gwt.client.communication.SerializerMap; -import com.vaadin.terminal.gwt.client.communication.VaadinSerializer; +import com.vaadin.terminal.gwt.client.communication.JSONSerializer; /** * GWT generator for creating serializer classes for custom classes sent from @@ -105,7 +105,7 @@ public class SerializerGenerator extends Generator { composer.addImport(JsonDecoder.class.getName()); // composer.addImport(VaadinSerializer.class.getName()); - composer.addImplementedInterface(VaadinSerializer.class.getName()); + composer.addImplementedInterface(JSONSerializer.class.getName()); SourceWriter sourceWriter = composer.createSourceWriter(context, printWriter); diff --git a/src/com/vaadin/terminal/gwt/widgetsetutils/SerializerMapGenerator.java b/src/com/vaadin/terminal/gwt/widgetsetutils/SerializerMapGenerator.java index 4d93675af6..8282547eb0 100644 --- a/src/com/vaadin/terminal/gwt/widgetsetutils/SerializerMapGenerator.java +++ b/src/com/vaadin/terminal/gwt/widgetsetutils/SerializerMapGenerator.java @@ -25,7 +25,7 @@ import com.vaadin.terminal.gwt.client.communication.ClientRpc; import com.vaadin.terminal.gwt.client.communication.SerializerMap; import com.vaadin.terminal.gwt.client.communication.ServerRpc; import com.vaadin.terminal.gwt.client.communication.SharedState; -import com.vaadin.terminal.gwt.client.communication.VaadinSerializer; +import com.vaadin.terminal.gwt.client.communication.JSONSerializer; /** * GWT generator that creates a {@link SerializerMap} implementation (mapper @@ -98,7 +98,7 @@ public class SerializerMapGenerator extends Generator { printWriter); sourceWriter.indent(); - sourceWriter.println("public " + VaadinSerializer.class.getName() + sourceWriter.println("public " + JSONSerializer.class.getName() + " getSerializer(String type) {"); sourceWriter.indent(); -- 2.39.5