List of usage examples for com.google.gwt.user.client.rpc CustomFieldSerializer serializeInstance
public abstract void serializeInstance(SerializationStreamWriter streamWriter, T instance) throws SerializationException;
From source file:com.foo.server.rpc230.ServerSerializationStreamWriterSenasa.java
License:Apache License
private void serializeImpl(Object instance, Class<?> instanceClass) throws SerializationException { assert (instance != null); Class<?> customSerializer = SerializabilityUtil.hasCustomFieldSerializer(instanceClass); if (customSerializer != null) { // Use custom field serializer @SuppressWarnings("unchecked") CustomFieldSerializer<Object> customFieldSerializer = (CustomFieldSerializer<Object>) SerializabilityUtil .loadCustomFieldSerializer(customSerializer); if (customFieldSerializer == null) { serializeWithCustomSerializer(customSerializer, instance, instanceClass); } else {/*from w ww . j a v a 2s .c om*/ customFieldSerializer.serializeInstance(this, instance); } } else if (instanceClass.isArray()) { serializeArray(instanceClass, instance); } else if (instanceClass.isEnum()) { writeInt(((Enum<?>) instance).ordinal()); } else { // Regular class instance serializeClass(instance, instanceClass); } }