org.apache.cayenne.map
Class Embeddable

java.lang.Object
  extended by org.apache.cayenne.map.Embeddable
All Implemented Interfaces:
Serializable, XMLSerializable

public class Embeddable
extends Object
implements XMLSerializable, Serializable

A mapping descriptor of an embeddable class. Embeddable is a persistent class that doesn't have its own identity and is embedded in other persistent classes. It can be viewed as a custom type mapped to one or more database columns. Embeddable mapping can include optional default column names that can be overriden by the owning entity.

Since:
3.0
See Also:
Serialized Form

Field Summary
protected  SortedMap<String,EmbeddableAttribute> attributes
           
protected  String className
           
protected  DataMap dataMap
           
 
Constructor Summary
Embeddable()
           
Embeddable(String className)
           
 
Method Summary
 void addAttribute(EmbeddableAttribute attribute)
          Adds new embeddable attribute to the entity, setting its parent embeddable to be this object.
 void encodeAsXML(XMLEncoder encoder)
          XMLSerializable implementation that generates XML for embeddable.
 EmbeddableAttribute getAttribute(String name)
           
 EmbeddableAttribute getAttributeForDbPath(String dbPath)
          Returns EmbeddableAttribute of this Embeddable that maps to dbAttribute parameter.
 SortedMap<String,EmbeddableAttribute> getAttributeMap()
          Returns an unmodifiable sorted map of embeddable attributes.
 Collection<EmbeddableAttribute> getAttributes()
          Returns an unmodifiable collection of embeddable attributes.
 String getClassName()
           
 DataMap getDataMap()
           
 Class<?> getJavaClass()
          Returns Java class of the embeddable.
 void removeAttribute(String name)
           
 void setClassName(String className)
           
 void setDataMap(DataMap dataMap)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

className

protected String className

attributes

protected SortedMap<String,EmbeddableAttribute> attributes

dataMap

protected DataMap dataMap
Constructor Detail

Embeddable

public Embeddable()

Embeddable

public Embeddable(String className)
Method Detail

getDataMap

public DataMap getDataMap()

setDataMap

public void setDataMap(DataMap dataMap)

getJavaClass

public Class<?> getJavaClass()
Returns Java class of the embeddable.


getAttributeForDbPath

public EmbeddableAttribute getAttributeForDbPath(String dbPath)
Returns EmbeddableAttribute of this Embeddable that maps to dbAttribute parameter. Returns null if no such attribute is found.


getAttributeMap

public SortedMap<String,EmbeddableAttribute> getAttributeMap()
Returns an unmodifiable sorted map of embeddable attributes.


getAttributes

public Collection<EmbeddableAttribute> getAttributes()
Returns an unmodifiable collection of embeddable attributes.


addAttribute

public void addAttribute(EmbeddableAttribute attribute)
Adds new embeddable attribute to the entity, setting its parent embeddable to be this object. If attribute has no name, IllegalArgumentException is thrown.


getAttribute

public EmbeddableAttribute getAttribute(String name)

removeAttribute

public void removeAttribute(String name)

getClassName

public String getClassName()

setClassName

public void setClassName(String className)

encodeAsXML

public void encodeAsXML(XMLEncoder encoder)
XMLSerializable implementation that generates XML for embeddable.

Specified by:
encodeAsXML in interface XMLSerializable


Copyright © 2001-2011 Apache Cayenne. All Rights Reserved.