public abstract class DataObjectPropertyDefinition<E extends DataObject<E>> extends DataObjectElementDefinition<FieldSchema,E>
Modifier and Type | Class and Description |
---|---|
static class |
DataObjectPropertyDefinition.ExternalFieldByJoinQuery
This class regroups the list of all external fields, and the related join
query condition to get the side data.
|
static class |
DataObjectPropertyDefinition.FieldSchemaForDisplay<E extends DataObject<E>>
This class allows to define a field to display for this property
|
Modifier and Type | Field and Description |
---|---|
protected NamedList<ExternalFieldSchema> |
allexternalfields |
protected java.util.ArrayList<DataObjectPropertyDefinition.ExternalFieldByJoinQuery> |
externalfieldsbyjoinquery |
protected DataObjectDefinition<E> |
parentobject |
Constructor and Description |
---|
DataObjectPropertyDefinition(DataObjectDefinition<E> parentobject,
java.lang.String name)
creates a property definition
|
Modifier and Type | Method and Description |
---|---|
protected void |
addStoredFieldSchema(StoredFieldSchema field)
adds a stored field schema to this property.
|
abstract java.util.ArrayList<ExternalFieldSchema<?>> |
generateExternalSchema() |
NamedList<ExternalFieldSchema> |
getAllExternalFields() |
<F extends DataObject<F>> |
getDataObjectFieldDefinition(NamedList<DisplayProfile<F>> activeprofiles) |
DataObjectPropertyDefinition.ExternalFieldByJoinQuery[] |
getExternalFieldsByJoinQueries() |
protected DataObjectFieldMarker |
getFieldMarker(DataObjectDefinition objectdef,
java.lang.String fieldname) |
abstract FlatFileLoaderColumn<E> |
getFlatFileLoaderColumn(DataObjectDefinition<E> objectdefinition,
java.lang.String[] columnattributes,
PropertyExtractor<E> propertyextractor,
ChoiceValue<ApplocaleChoiceDefinition> locale)
generates the flat file loader for this property
|
abstract java.lang.String[] |
getLoaderFieldList() |
abstract java.lang.String[] |
getLoaderFieldSample(java.lang.String name) |
DataObjectDefinition<E> |
getParentObject() |
CustomloaderDefinition.CustomloaderHelper<E> |
getTransientLoaderHelper()
This method is called once at the beginning of a file loading.
|
abstract QueryCondition |
getUniversalQueryCondition(java.lang.String alias)
each property can define query conditions to be applied by all other
properties on an object.
|
void |
initiateExternalFieldSchema()
initiates and sorts proeperly all external schemas
|
abstract DataObjectPropertyDefinition.FieldSchemaForDisplay[] |
setFieldSchemaToDisplay()
each property should define the list of fields to display as read-only fields
of the object.
|
addFieldSchema, addIndex, dropfieldnamelist, getDefinition, getFieldSchema, getFieldSchemaByName, getFieldSchemaNumber, getIndexAt, getIndexNumber, getTriggerlist, initiateFieldInstance, isFormulaElement, setTriggerOnUpdate
changeName, cleanName, equals, getName
protected DataObjectDefinition<E extends DataObject<E>> parentobject
protected java.util.ArrayList<DataObjectPropertyDefinition.ExternalFieldByJoinQuery> externalfieldsbyjoinquery
protected NamedList<ExternalFieldSchema> allexternalfields
public DataObjectPropertyDefinition(DataObjectDefinition<E> parentobject, java.lang.String name)
parentobject
- parent object definitionname
- name of the property (should be unique for the object)public DataObjectDefinition<E> getParentObject()
public NamedList<ExternalFieldSchema> getAllExternalFields()
protected void addStoredFieldSchema(StoredFieldSchema field)
field
- the field to addpublic CustomloaderDefinition.CustomloaderHelper<E> getTransientLoaderHelper()
public DataObjectPropertyDefinition.ExternalFieldByJoinQuery[] getExternalFieldsByJoinQueries()
public abstract java.util.ArrayList<ExternalFieldSchema<?>> generateExternalSchema()
public void initiateExternalFieldSchema()
public abstract QueryCondition getUniversalQueryCondition(java.lang.String alias)
alias
- alias for which the query condition should be created;public abstract DataObjectPropertyDefinition.FieldSchemaForDisplay[] setFieldSchemaToDisplay()
public <F extends DataObject<F>> DataObjectFieldDefinition<F>[] getDataObjectFieldDefinition(NamedList<DisplayProfile<F>> activeprofiles)
protected DataObjectFieldMarker getFieldMarker(DataObjectDefinition objectdef, java.lang.String fieldname)
objectdef
- definition of the objectfieldname
- name of the fieldpublic abstract FlatFileLoaderColumn<E> getFlatFileLoaderColumn(DataObjectDefinition<E> objectdefinition, java.lang.String[] columnattributes, PropertyExtractor<E> propertyextractor, ChoiceValue<ApplocaleChoiceDefinition> locale)
objectdefinition
- definition of the objectcolumnattributes
- column attributespropertyextractor
- an extractor providing this property from the objectlocale
- locale if loaded by CSVpublic abstract java.lang.String[] getLoaderFieldList()
public abstract java.lang.String[] getLoaderFieldSample(java.lang.String name)
name
- name as returned by the function getLoaderFieldList