package org.gcube.portlet.user.userstatisticsportlet.shared;

import com.google.gwt.user.client.rpc.SerializationException;
import com.google.gwt.user.client.rpc.SerializationStreamReader;
import com.google.gwt.user.client.rpc.SerializationStreamWriter;
import com.google.gwt.user.client.rpc.impl.ReflectionHelper;

@SuppressWarnings("deprecation")
public class UserInformation_FieldSerializer implements com.google.gwt.user.client.rpc.impl.TypeHandler {
  private static native java.lang.String getAccountURL(org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation instance) /*-{
    return instance.@org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation::accountURL;
  }-*/;
  
  private static native void setAccountURL(org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation instance, java.lang.String value) 
  /*-{
    instance.@org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation::accountURL = value;
  }-*/;
  
  private static native java.lang.String getActualVre(org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation instance) /*-{
    return instance.@org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation::actualVre;
  }-*/;
  
  private static native void setActualVre(org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation instance, java.lang.String value) 
  /*-{
    instance.@org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation::actualVre = value;
  }-*/;
  
  private static native java.lang.String getDisplayName(org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation instance) /*-{
    return instance.@org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation::displayName;
  }-*/;
  
  private static native void setDisplayName(org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation instance, java.lang.String value) 
  /*-{
    instance.@org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation::displayName = value;
  }-*/;
  
  private static native boolean getIsRoot(org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation instance) /*-{
    return instance.@org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation::isRoot;
  }-*/;
  
  private static native void setIsRoot(org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation instance, boolean value) 
  /*-{
    instance.@org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation::isRoot = value;
  }-*/;
  
  private static native java.lang.String getUrlAvatar(org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation instance) /*-{
    return instance.@org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation::urlAvatar;
  }-*/;
  
  private static native void setUrlAvatar(org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation instance, java.lang.String value) 
  /*-{
    instance.@org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation::urlAvatar = value;
  }-*/;
  
  public static void deserialize(SerializationStreamReader streamReader, org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation instance) throws SerializationException {
    setAccountURL(instance, streamReader.readString());
    setActualVre(instance, streamReader.readString());
    setDisplayName(instance, streamReader.readString());
    setIsRoot(instance, streamReader.readBoolean());
    setUrlAvatar(instance, streamReader.readString());
    
  }
  
  public static org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation instantiate(SerializationStreamReader streamReader) throws SerializationException {
    return new org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation();
  }
  
  public static void serialize(SerializationStreamWriter streamWriter, org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation instance) throws SerializationException {
    streamWriter.writeString(getAccountURL(instance));
    streamWriter.writeString(getActualVre(instance));
    streamWriter.writeString(getDisplayName(instance));
    streamWriter.writeBoolean(getIsRoot(instance));
    streamWriter.writeString(getUrlAvatar(instance));
    
  }
  
  public Object create(SerializationStreamReader reader) throws SerializationException {
    return org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation_FieldSerializer.instantiate(reader);
  }
  
  public void deserial(SerializationStreamReader reader, Object object) throws SerializationException {
    org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation_FieldSerializer.deserialize(reader, (org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation)object);
  }
  
  public void serial(SerializationStreamWriter writer, Object object) throws SerializationException {
    org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation_FieldSerializer.serialize(writer, (org.gcube.portlet.user.userstatisticsportlet.shared.UserInformation)object);
  }
  
}
