de.schwarzrot.data.meta
Class ColumnDefinition
java.lang.Object
com.jgoodies.binding.beans.Model
de.schwarzrot.data.support.AbstractEntity
de.schwarzrot.data.meta.support.AbstractMetaEntity<N>
de.schwarzrot.data.meta.support.AbstractMetaChildEntity<String,TableDefinition>
de.schwarzrot.data.meta.ColumnDefinition
- All Implemented Interfaces:
- com.jgoodies.binding.beans.Observable, ChildEntity<TableDefinition>, Entity, MetaEntity<String>, NamedChildEntity<String,TableDefinition>, NamedEntity<String>, Serializable, Comparable<Entity>
public class ColumnDefinition
- extends AbstractMetaChildEntity<String,TableDefinition>
- See Also:
- Serialized Form
| Methods inherited from class de.schwarzrot.data.support.AbstractEntity |
adoptChildren, adoptChildren, adoptGroupedChildren, equals, getCModified, getCode, getDtCreated, getDtModified, getId, getLogger, getSkipList, getSystemClass, getUCreated, getUModified, getUserAttributes, getVariantColumnName, getVariantTypeMap, hashCode, isDirty, isUserType, isVirtual, setCModified, setDtCreated, setDtModified, setId, setSchemaName, setUCreated, setUModified, validate |
| Methods inherited from class com.jgoodies.binding.beans.Model |
addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, addVetoableChangeListener, equals, fireIndexedPropertyChange, fireIndexedPropertyChange, fireIndexedPropertyChange, fireMultiplePropertiesChanged, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, getPropertyChangeListeners, getPropertyChangeListeners, getVetoableChangeListeners, getVetoableChangeListeners, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, removeVetoableChangeListener |
| Methods inherited from interface de.schwarzrot.data.Entity |
getCModified, getDtCreated, getDtModified, getId, getSchemaName, getSkipList, getSystemClass, getUCreated, getUModified, getUserAttributes, getVariantColumnName, getVariantTypeMap, isDirty, isUserType, isVirtual, setCModified, setDtCreated, setDtModified, setId, setUCreated, setUModified, validate |
| Methods inherited from interface com.jgoodies.binding.beans.Observable |
addPropertyChangeListener, removePropertyChangeListener |
ColumnDefinition
public ColumnDefinition()
ColumnDefinition
public ColumnDefinition(ColumnDefinition other)
cloneFrom
public void cloneFrom(ColumnDefinition other)
compareTo
public int compareTo(Entity other)
- Specified by:
compareTo in interface Comparable<Entity>- Overrides:
compareTo in class AbstractMetaChildEntity<String,TableDefinition>
getDecimals
public final int getDecimals()
getDefaultOrder
public List<SortInfo> getDefaultOrder()
- Description copied from interface:
Entity
- returns a list of
SortInfo, that build the order for default
list-queries.
- Specified by:
getDefaultOrder in interface Entity- Overrides:
getDefaultOrder in class AbstractEntity
- Returns:
- a list of property names
getDefaultValue
public final String getDefaultValue()
getDomain
public final AttributeDomain getDomain()
- Returns:
- the domain
getLogicalName
public final String getLogicalName()
- Specified by:
getLogicalName in interface MetaEntity<String>- Overrides:
getLogicalName in class AbstractMetaEntity<String>
- Returns:
- the logicalName
getMappings
public Map<String,String> getMappings()
- Description copied from interface:
Entity
- returns a map with mappings of logical property names to physical
property names (column names in database terms).
Every implementation should respect the parents mappings. The following
sample shows different mapping types:
public Map<String, String> getMappings() {
Map<String, String> mappings = super.getMappings();
mappings.put("title", "name");
mappings.put("streams", Stream.class.getName());
mappings.put("pageDefinitions", "pageType|" + ThemeElement.class.getName());
return mappings;
}
The mappings explained:
- "title" -> "name"
- the logical "title"-attribute is stored to persistence with a
physical name "name"
- "streams" -> Stream.class.getName()
- the "streams" property holds related children. Unknown children are
hold in a
List, known (named) children are hold in a Map.
The mapped value is used as classname to create child instances.
- "pageDefinitions" -> "pageType|" + ThemeElement.class.getName()
- pageDefinitions is a property of type
Map, that holds grouped
children. Known children are hold by a Map, unknown children by a
List, so "pageDefinitions" may contain elements of type
Map, or List. pageType, a property of
ThemeElement, is used to group the children. The word before the
'|' is the property name used as key value for grouping and the type
after '|' is used to create instances.
- Specified by:
getMappings in interface Entity- Overrides:
getMappings in class AbstractMetaEntity<String>
- Returns:
- a
Map with property names as keys and column
names as values.
getParentType
public Class<TableDefinition> getParentType()
- Description copied from interface:
ChildEntity
- returns the type of the parent entity
- Returns:
- the parent entity
getPersistenceName
public String getPersistenceName()
- Description copied from interface:
Entity
- returns the name of the entity for persistance. Normally it would be the
same result as
getClass().getSimpleName(), but some storage may
have size limitations, or don't support case sensitive names, so this
call is to deal with that kind of limitations.
- Specified by:
getPersistenceName in interface Entity- Overrides:
getPersistenceName in class AbstractEntity
- Returns:
- the entity-name used for persistence
getSize
public final int getSize()
getType
public final ColumnType getType()
getUniqColumnNames
public List<String> getUniqColumnNames()
- Description copied from interface:
Entity
- returns a list of property names, which serve to detect a uniq instance
without the usage of the primary key. In database context this list is
used to decide, whether a save operation needs an update or an insert.
- Specified by:
getUniqColumnNames in interface Entity- Overrides:
getUniqColumnNames in class AbstractMetaEntity<String>
- Returns:
- a list of property names
getWeight
public final int getWeight()
- Returns:
- the weight
isAutoincrement
public final boolean isAutoincrement()
isInternal
public boolean isInternal()
isNullable
public final boolean isNullable()
isVirtualAttribute
public final boolean isVirtualAttribute()
- Returns:
- the virtual
setDefaultValue
public final void setDefaultValue(String defaultValue)
setDomain
public final void setDomain(AttributeDomain domain)
- Parameters:
domain - the domain to set
setLogicalName
public final void setLogicalName(String logicalName)
- Parameters:
logicalName - the logicalName to set
setName
public final void setName(String name)
- Specified by:
setName in interface NamedEntity<String>- Overrides:
setName in class AbstractMetaEntity<String>
setNullable
public final void setNullable(boolean nullable)
setVirtualAttribute
public final void setVirtualAttribute(boolean virtual)
- Parameters:
virtual - the virtual to set
setWeight
public final void setWeight(int weight)
- Parameters:
weight - the weight to set
toString
public String toString()
- Overrides:
toString in class AbstractEntity
Submit
a bug or request a feature
SRJRCFrames is published according to the
GNU General Public License
Copyright 2005-2012
Reinhard Mantey - some rights reserved.