public abstract class AbstractDefinition extends java.lang.Object implements DataControlDefinition
There are several ways that this class can be generated.
load to load from the metadata definition.
 Once the definition is loaded, it calls the createDataControl() to
 create the data control instance.
 
 Note: When the definition loaded at the runtime, runtime sets the name
 of the definition as stored in the metadata. The implementation of this
 class MUST use getName() to get the name of the definition.
AbstractAdapter| Modifier and Type | Field and Description | 
|---|---|
static int | 
CACHE_TO_SOURCEPATH  | 
static int | 
DONT_CACHE  | 
protected DataControlConfiguration | 
mDCConfiguration  | 
protected java.lang.String | 
mFullName  | 
protected java.lang.String | 
mName  | 
protected java.lang.String | 
mRootDefName  | 
TYPE_ACCESSOR, TYPE_ATTRIBUTE, TYPE_CRITERIA, TYPE_CRITERIA_ITEM, TYPE_CRITERIA_OPERATOR, TYPE_CRITERIA_ROW, TYPE_DATACONTROL, TYPE_DEFINITION, TYPE_DEFINITIONCONTEXT, TYPE_NAMED, TYPE_OPERATION, TYPE_OPERATIONRETURN, TYPE_PARAMETER, TYPE_STRUCTURE, TYPE_VARIABLE| Constructor and Description | 
|---|
AbstractDefinition()  | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
addParameter(java.lang.String name,
            java.lang.String val)  | 
boolean | 
assignDefaultPackage()
Data controls which do not already have their own package structure
 need to use a default package. 
 | 
abstract DataControl | 
createDataControl()
Creates an instance of data control generated from the metadata definition. 
 | 
boolean | 
createDuplicateDetailIterator()
If the data control needs a distinct iterator to be created  for the control binding, this method should 
 return true. 
 | 
void | 
disableSharing()  | 
void | 
enableSharing()  | 
AdapterContext | 
getAdapterContext()
Gets the adapter context. 
 | 
java.lang.String | 
getAdapterType()
Returns the name of the corresponding adapter type, if any. 
 | 
int | 
getCachingMode()  | 
DataControlConfiguration | 
getConfiguration()
Returns the dcx configuration for the data control. 
 | 
java.lang.String | 
getConfigurationFullName()  | 
protected abstract java.lang.String | 
getDCName()
Returns the name of the data control. 
 | 
java.lang.String | 
getDefClassName()
Returns the class name of the definition class that will load the metadata
 that describes the data control. 
 | 
Definition | 
getDefinitionParent()
Returns the parent of this metadata definition, which is the Definition
 that contains this Definition. 
 | 
int | 
getDefinitionType()
Type of definition 
 | 
java.lang.String | 
getFactoryClassName()
Advanced internal placeholder method. 
 | 
java.lang.String | 
getFullName()
Returns the full name of this Definition, which includes the name of any parent
 objects. 
 | 
java.lang.String | 
getJUDTDataControlName()  | 
abstract org.w3c.dom.Node | 
getMetadata()
Returns the element that defines the metadata for the data control. 
 | 
java.lang.String | 
getName()
Gets the name of the data control. 
 | 
java.lang.String | 
getParameter(java.lang.String name)  | 
java.util.Map<java.lang.String,java.lang.String> | 
getParameterCollection()  | 
ParameterDefinition[] | 
getParameters()
Returns the parameters that are defined for the data control metadata. 
 | 
java.util.Hashtable | 
getProperties()
Gets a hashtable of all properties. 
 | 
java.lang.Object | 
getProperty(java.lang.String name)
Gets a property value. 
 | 
java.lang.String | 
getRootStructureName()
Gets the root structure definition name 
 | 
protected java.util.Map | 
getRuntimeParameters()
Returns the Parameters entry from the dcx node for this datacontrol definition. 
 | 
abstract StructureDefinition | 
getStructure()
Gets the structure definition of the output data. 
 | 
boolean | 
isStructureDirty(boolean refresh)
The implementation should return true if the structure of the back end data
 is changed. 
 | 
boolean | 
isSupported(java.lang.String flag)
Indicates if the adapter support things like sorting, transaction etc. 
 | 
abstract void | 
loadFromMetadata(org.w3c.dom.Node node,
                java.util.Map params)
Loads the definition from a metadata  
Node. | 
void | 
removeParameter(java.lang.String name)  | 
void | 
setAdapterContext(AdapterContext ctx)
Sets the adapter context. 
 | 
void | 
setCachingMode(int cachingMode)  | 
void | 
setCompileProjectOnCreate(boolean flag)
Sets the flag to indicate the requirement of compilation when a data 
 control will be created from this definition. 
 | 
void | 
setConfigurationFullName(java.lang.String configFullName)  | 
void | 
setFullName(java.lang.String fullName)  | 
void | 
setName(java.lang.String name)
Sets the name of the definiiton. 
 | 
void | 
setProperty(java.lang.String name,
           java.lang.Object val)
Stores a property value. 
 | 
void | 
setRootStructureName(java.lang.String rootDefName)
Sets the root structure definition name 
 | 
boolean | 
shouldCompileProjectOnCreate()
Indicates if the project needs to be compiled when a data control is 
 created from this definition. 
 | 
boolean | 
useDefinitionProvider()
Indicates if datacontrol uses DC definition provider 
 | 
boolean | 
usePersistedStructure()
Indicates whether the definition delegates to the framework the task of
 deserializing its StructureDefinition (for example, from bean .xml 
 files on disk). 
 | 
public static final int CACHE_TO_SOURCEPATH
public static final int DONT_CACHE
protected java.lang.String mName
protected java.lang.String mFullName
protected java.lang.String mRootDefName
protected DataControlConfiguration mDCConfiguration
public abstract org.w3c.dom.Node getMetadata()
Node that defines the metadata for this instance.
         This metadata will be used at the runtime to fetch data from the
         data source.public abstract StructureDefinition getStructure()
getStructure in interface DataControlDefinitionprotected java.util.Map getRuntimeParameters()
public int getDefinitionType()
getDefinitionType in interface Definitionpublic int getCachingMode()
public void setCachingMode(int cachingMode)
public abstract void loadFromMetadata(org.w3c.dom.Node node,
                                      java.util.Map params)
Node.node - the metadata node. It can be null if no metadata is defined.params - context parameters.public abstract DataControl createDataControl()
protected abstract java.lang.String getDCName()
public DataControlConfiguration getConfiguration()
DataControlConfiguration that defines the metadata 
 for this DC instance.public java.lang.String getAdapterType()
AdapterDefinitionpublic java.lang.String getDefClassName()
The framework will call this method at the design time to store the definition class name that will load the metadata. The returned class must be a derived class of this astract class. The default implementation returns the class name of this instance only. The derived class needs to override this only if the definition class that may load a metadata is different than this instance.
public boolean usePersistedStructure()
public boolean useDefinitionProvider()
public boolean isStructureDirty(boolean refresh)
getStructure() is this 
 method returns false.refresh - flag to indicate if the refresh is requested for the 
 structure.public ParameterDefinition[] getParameters()
The implementation should override this method if the definition uses parameters. The default implementatiaon returns null.
public java.lang.String getName()
 At runtime, the name is set from the metadata information. At 
 design time it calls getDCName() to get the name of this
 definition.
getName in interface NamedDefinitionpublic boolean isSupported(java.lang.String flag)
flag - one of the values defined in 
        DataControlDefinition.public boolean assignDefaultPackage()
public boolean shouldCompileProjectOnCreate()
 Note:
 If the data control create is invoked from within a UI operation (e.g. you
 are invoking creation of data control while responding to a property change
 action of the data control metadata), this method must return false.
 A data control can be created by calling the method 
 createDataControl on class MetaDef.
public Definition getDefinitionParent()
NamedDefinitiongetDefinitionParent in interface NamedDefinitionpublic java.lang.String getFullName()
NamedDefinitiongetFullName in interface NamedDefinitionpublic void setFullName(java.lang.String fullName)
public final void setProperty(java.lang.String name,
                              java.lang.Object val)
public final java.lang.Object getProperty(java.lang.String name)
getProperty in interface NamedDefinitionname - Name of the property to be retrieved.public final void addParameter(java.lang.String name,
                               java.lang.String val)
public final java.lang.String getParameter(java.lang.String name)
public final void removeParameter(java.lang.String name)
public java.util.Map<java.lang.String,java.lang.String> getParameterCollection()
public void enableSharing()
public void disableSharing()
public java.util.Hashtable getProperties()
getProperties in interface NamedDefinitionpublic final void setName(java.lang.String name)
public final void setAdapterContext(AdapterContext ctx)
public final AdapterContext getAdapterContext()
public void setCompileProjectOnCreate(boolean flag)
public java.lang.String getFactoryClassName()
@Concealed public java.lang.String getJUDTDataControlName()
public boolean createDuplicateDetailIterator()
public java.lang.String getConfigurationFullName()
public void setConfigurationFullName(java.lang.String configFullName)
public java.lang.String getRootStructureName()
public void setRootStructureName(java.lang.String rootDefName)