
com.extjs.gxt.ui.client.data.RpcMap Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of gxt Show documentation
Show all versions of gxt Show documentation
Rich Internet Application Framework for GWT
/*
* Sencha GXT 2.3.1 - Sencha for GWT
* Copyright(c) 2007-2013, Sencha, Inc.
* [email protected]
*
* http://www.sencha.com/products/gxt/license/
*/
package com.extjs.gxt.ui.client.data;
import java.io.Serializable;
import java.util.Collection;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Set;
import com.extjs.gxt.ui.client.core.FastMap;
/**
* RpcMap is used to workaround a part of GWT RPC system.
*
*
* The GWT RPC rebinder generates field serializers for every type that is
* assignable to any type in the RPC interfaces.
*
*
* If BaseModel was to use "Map<String, Serializable> map" this would
* trigger the RPC system to generate field serializers for EVERY Serializable
* type in your GWT Module's class path.
*
*
* Therefore BaseModel uses "Map<String, RpcField> map" and relies on type
* erasure (cast to Map<Object,Object>) to work around this.
*
*
* The only drawback is that if you have to ensure that field serializers are
* generated for any type you add to this map.
*
*
* RpcMap ensures that the following types are supported Byte, Short, Integer,
* Long, Float, Double, Date, Boolean, and arrays of these types. As well as
* List, Set and Map
*/
@SuppressWarnings("unused")
public class RpcMap implements Serializable {
private Byte _byte;
private Short _short;
private Integer _integer;
private Long _long;
private Float _float;
private Double _double;
private Date _date;
private Boolean _boolean;
private Byte[] _bytes;
private Short[] _shorts;
private Integer[] _integers;
private Long[] _longs;
private Float[] _floats;
private Double[] _doubles;
private Date[] _dates;
private Boolean[] _booleans;
private List _list;
private Set _set;
private Map _map;
private transient FastMap
© 2015 - 2025 Weber Informatics LLC | Privacy Policy