import java.util.Date;
public class Product {
private long id;
private String name;
private float price;
private String description;
private String status;
private String picture;
private String publisher;
private Date createTime;
private int preference;
public final static int DEFAULT_PREFERENCE = 10;
public Product(){}
public Product(String name, float price, String publisher){
this(name, price, publisher, DEFAULT_PREFERENCE);
}
public Product(String name, float price, String publisher, int
preference){
this.name = name;
this.price = price;
this.publisher = publisher;
this.preference = preference;
}
public long getId(){
return id;
}
public void setId(long id){
this.id = id;
}
public String getName(){
return name;
}
public void setName(String name){
this.name = name;
}
public String getDescription(){
return description;
}
public void setDescription(String description){
this.description = description;
}
public float getPrice(){
return price;
}
public void setPrice(float price){
this.price = price;
}
public String getStatus(){
return status;
}
public void setStatus(String status){
this.status = status;
}
public String getPicture(){
return picture;
}
public void setPicture(String picture){
this.picture = picture;
}
public String getPublisher(){
return publisher;
}
public int getPreference(){
return preference;
}
public Date getCreateTime(){
return createTime;
}
public void setCreateTime(Date createTime){
this.createTime = createTime;
}
}
//first write your Java Object
import java.util.Date;
//import com.google.gwt.user.client.rpc.IsSerializable;
public class Product /*implements IsSerializable */{
private String picture;
public void setPublisher(String publisher){
this.publisher = publisher;
}
public int getPreference(){
return preference;
}
public Date getCreateTime(){
return createTime;
}
public void setCreateTime(Date createTime){
this.createTime = createTime;
}
}
//second write Serializer Class Name is Product_CustomFieldSerializer
import com.google.gwt.user.client.rpc.SerializationException;
import com.google.gwt.user.client.rpc.SerializationStreamReader;
import com.google.gwt.user.client.rpc.SerializationStreamWriter;
/**
* Custom field serializer for the Java Byte class. If we have a class
that is
* final and not default constructable that has a custom serializer
*/
public final class Product_CustomFieldSerializer {
/**
* Save an object state into a stream.
*
* @param streamWriter
* @param instance
*/
public static void serialize(SerializationStreamWriter streamWriter,
Product instance) throws SerializationException {
streamWriter.writeObject(instance.getName());
streamWriter.writeFloat(instance.getPrice());
streamWriter.writeObject(instance.getPublisher());
}
/**
*
* @param streamReader
* @param instance
*/
public static void deserialize(SerializationStreamReader
streamReader,
Product instance) throws SerializationException {
String name = (String)streamReader.readObject();
float price = streamReader.readFloat();
String publisher = (String)streamReader.readObject();
instance.setName(name);
instance.setPrice(price);
instance.setPublisher(publisher);
}
}