
com.extjs.gxt.ui.client.data.BaseModelData Maven / Gradle / Ivy
/*
* Ext GWT - Ext for GWT
* Copyright(c) 2007-2009, Ext JS, LLC.
* [email protected]
*
* http://extjs.com/license
*/
package com.extjs.gxt.ui.client.data;
import java.io.Serializable;
import java.util.Collection;
import java.util.Map;
import java.util.Set;
import com.extjs.gxt.ui.client.core.FastMap;
import com.extjs.gxt.ui.client.core.FastSet;
/**
* Default ModelData
implementation.
*/
public class BaseModelData implements ModelData, Serializable {
protected RpcMap map;
protected boolean allowNestedValues = true;
/**
* Creates a new model data instance.
*/
public BaseModelData() {
}
/**
* Creates a new model with the given properties.
*
* @param properties the initial properties
*/
public BaseModelData(Map properties) {
super();
setProperties(properties);
}
@SuppressWarnings("unchecked")
public X get(String property) {
if (allowNestedValues && NestedModelUtil.isNestedProperty(property)) {
return (X) NestedModelUtil.getNestedValue(this, property);
}
return map == null ? null : (X) map.get(property);
}
/**
* Returns a property value.
*
* @param property the property name
* @param valueWhenNull
* @return the value
*/
@SuppressWarnings("unchecked")
public X get(String property, X valueWhenNull) {
X value = (X) get(property);
return (value == null) ? valueWhenNull : value;
}
public Map getProperties() {
Map newMap = new FastMap
© 2015 - 2025 Weber Informatics LLC | Privacy Policy