org.objectweb.jorm.metainfo.lib
Class BasicNameDef

java.lang.Object
  extended byorg.objectweb.jorm.metainfo.lib.BasicMetaObject
      extended byorg.objectweb.jorm.metainfo.lib.BasicNameDef
All Implemented Interfaces:
Loggable, MetaObject, NameDef, java.io.Serializable

public class BasicNameDef
extends BasicMetaObject
implements NameDef

The BasicNameDef object describes the mapping of a reference field, It can be the PName of a Class. It can be a Field which is an attribute of the class and is a reference; in this case, the reference can be to another Class (ClassObject) or to a GenClass.

Author:
X. Spengler
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.objectweb.jorm.metainfo.lib.BasicMetaObject
debug, logger, loggerFactory, parent
 
Constructor Summary
BasicNameDef(MetaObject parent)
          Builds a new BasicNameDef objects.
 
Method Summary
 NameRef createNameRef(CompositeName cn_Class)
          Build a reference toward a composite name describing the namedef.
protected  java.util.Collection getChildren()
           
 java.lang.String getFieldName()
          Retrieve the name of the field describing the namedef.
 int getFieldNumber()
          Returns the number of hidden fields which composed the current object.
 java.lang.String getName()
          Returns the name of the NameDef object.
 NameRef getNameRef()
          Retrieves the nameref if the namedef is a composite one.
 boolean isFieldName()
          allow to know if the namedef is describe by a single field.
 boolean isNameRef()
          allow to know if the namedef is describe by a composite name.
 boolean isSystem()
          Allows to know if the mapping of the referenced field is defined by another system (could be defined by Versant system for instance).
 java.util.Iterator iterateField()
          Returns an iterator on all fields (HiddenFields and FieldRef).
 void setFieldName(java.lang.String fieldname)
          Allow to set the fieldname describing the namedef single field.
 void setName(java.lang.String name)
          Sets the name of the NameDef object.
 void setSystem(boolean system)
          Allows to set if the current NameDef is system defined (defined outside jorm) or not.
 
Methods inherited from class org.objectweb.jorm.metainfo.lib.BasicMetaObject
getLogger, getLoggerFactory, getManager, getParent, setLogger, setLoggerFactory, setLoggingOnChild, setParent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.objectweb.jorm.metainfo.api.MetaObject
getParent, setParent
 

Constructor Detail

BasicNameDef

public BasicNameDef(MetaObject parent)
Builds a new BasicNameDef objects. This object is defined by its name, if it is defined outside jorm or not, and its parent.

Parameters:
parent - the parent object of the current NameDef object
Method Detail

getFieldNumber

public int getFieldNumber()
Returns the number of hidden fields which composed the current object.

Specified by:
getFieldNumber in interface NameDef
Returns:
the number of hidden fields

isSystem

public boolean isSystem()
Allows to know if the mapping of the referenced field is defined by another system (could be defined by Versant system for instance).

Specified by:
isSystem in interface NameDef
Returns:
true, if the mapping is defined by another system, else false, if the mapping is defined inside JORM (by ScalarField(s) and FieldName(s)).

setSystem

public void setSystem(boolean system)
Allows to set if the current NameDef is system defined (defined outside jorm) or not.

Specified by:
setSystem in interface NameDef
Parameters:
system - true, if the mapping is defined by another system, else false, if the mapping is defined inside JORM (by ScalarField(s) and FieldName(s)).

isNameRef

public boolean isNameRef()
allow to know if the namedef is describe by a composite name.

Specified by:
isNameRef in interface NameDef
Returns:
true the namedef is a composite one.

isFieldName

public boolean isFieldName()
allow to know if the namedef is describe by a single field.

Specified by:
isFieldName in interface NameDef
Returns:
true the namedef is a single one.

createNameRef

public NameRef createNameRef(CompositeName cn_Class)
Build a reference toward a composite name describing the namedef.

Specified by:
createNameRef in interface NameDef
Parameters:
cn_Class - the meta object representing the composite name.
Returns:
the nameref metaobject describing the reference.

getNameRef

public NameRef getNameRef()
Retrieves the nameref if the namedef is a composite one.

Specified by:
getNameRef in interface NameDef
Returns:
the nameref or null if the namedef is a single one or system.

getFieldName

public java.lang.String getFieldName()
Retrieve the name of the field describing the namedef. The fieldname can be the name of a field or an hiddenfield.

Specified by:
getFieldName in interface NameDef
Returns:
the fieldname or null is the namedef is a system or a composite one.

setFieldName

public void setFieldName(java.lang.String fieldname)
Allow to set the fieldname describing the namedef single field.

Specified by:
setFieldName in interface NameDef
Parameters:
fieldname - the fieldname

getName

public java.lang.String getName()
Returns the name of the NameDef object.

Specified by:
getName in interface NameDef
Returns:
the name of the NameDef object.

setName

public void setName(java.lang.String name)
Sets the name of the NameDef object.

Specified by:
setName in interface NameDef
Parameters:
name - the name of the NameDef object.

iterateField

public java.util.Iterator iterateField()
Returns an iterator on all fields (HiddenFields and FieldRef). This iterator contains FieldName and ScalarField objects. If no object fields exists, an empty iterator is returned.

Specified by:
iterateField in interface NameDef
Returns:
an iterator on field

getChildren

protected java.util.Collection getChildren()
Overrides:
getChildren in class BasicMetaObject