org.ofbiz.entity.model
Class ModelViewEntity

java.lang.Object
  extended by org.ofbiz.entity.model.ModelInfo
      extended by org.ofbiz.entity.model.ModelEntity
          extended by org.ofbiz.entity.model.ModelViewEntity
All Implemented Interfaces:
java.io.Serializable, java.lang.Comparable<ModelEntity>

public class ModelViewEntity
extends ModelEntity

This class extends ModelEntity and provides additional information appropriate to view entities

See Also:
Serialized Form

Nested Class Summary
static class ModelViewEntity.ComplexAlias
           
static class ModelViewEntity.ComplexAliasField
           
static interface ModelViewEntity.ComplexAliasMember
           
static class ModelViewEntity.ModelAlias
           
static class ModelViewEntity.ModelAliasAll
           
 class ModelViewEntity.ModelConversion
           
static class ModelViewEntity.ModelMemberEntity
           
static class ModelViewEntity.ModelViewLink
           
 
Field Summary
protected  java.util.List<ModelViewEntity.ModelAliasAll> aliasAlls
          List of alias-alls which act as a shortcut for easily pulling over member entity fields
protected  ModelEntity aliasedModelEntity
           
protected  java.util.List<ModelViewEntity.ModelAlias> aliases
          List of aliases with information in addition to what is in the standard field list
protected  java.util.List<ModelViewEntity.ModelMemberEntity> allModelMemberEntities
          A list of all ModelMemberEntity entries; this is mainly used to preserve the original order of member entities from the XML file
protected  java.util.Map<java.lang.String,java.util.Map<java.lang.String,ModelViewEntity.ModelConversion>> conversions
           
static java.util.Map<java.lang.String,java.lang.String> functionPrefixMap
           
protected  java.util.List<ModelField> groupBys
          A List of the Field objects for the View Entity, one for each GROUP BY field
protected  java.util.Map<java.lang.String,ModelEntity> memberModelEntities
          Contains member-entity ModelEntities: key is alias, value is ModelEntity; populated with fields
protected  java.util.Map<java.lang.String,ModelViewEntity.ModelMemberEntity> memberModelMemberEntities
          Contains member-entity alias name definitions: key is alias, value is ModelMemberEntity
static java.lang.String module
           
protected  java.util.List<ModelViewEntity.ModelViewLink> viewLinks
          List of view links to define how entities are connected (or "joined")
 
Fields inherited from class org.ofbiz.entity.model.ModelEntity
autoClearCache, CREATE_STAMP_FIELD, CREATE_STAMP_TX_FIELD, defaultResourceName, dependentOn, doLock, entityName, fields, fieldsMap, hasFieldWithAuditLog, indexes, location, modelReader, neverCache, noAutoStamp, nopks, packageName, pks, relations, sequenceBankSize, STAMP_FIELD, STAMP_TX_FIELD, tableName, viewEntities
 
Fields inherited from class org.ofbiz.entity.model.ModelInfo
author, copyright, def, DEFAULT, description, title, version
 
Constructor Summary
ModelViewEntity(DynamicViewEntity dynamicViewEntity, ModelReader modelReader)
           
ModelViewEntity(ModelReader reader, org.w3c.dom.Element entityElement, UtilTimer utilTimer, ModelInfo def)
           
 
Method Summary
 void addMemberModelMemberEntity(ModelViewEntity.ModelMemberEntity modelMemberEntity)
           
 void addViewLink(ModelViewEntity.ModelViewLink viewLink)
           
 java.lang.String colNameString(java.util.List<ModelField> flds, java.lang.String separator, java.lang.String afterLast, boolean alias)
           
 java.lang.String colNameString(java.lang.String separator, java.lang.String afterLast, boolean alias, ModelField... flds)
           
 java.util.List<java.util.Map<java.lang.String,java.lang.Object>> convert(java.lang.String fromEntityName, java.util.Map<java.lang.String,java.lang.Object> data)
           
 ModelViewEntity.ModelAlias getAlias(int index)
          List of aliases with information in addition to what is in the standard field list
 ModelViewEntity.ModelAlias getAlias(java.lang.String name)
           
 ModelEntity getAliasedEntity(java.lang.String entityAlias, ModelReader modelReader)
           
 ModelField getAliasedField(ModelEntity aliasedEntity, java.lang.String field, ModelReader modelReader)
           
 ModelEntity getAliasedModelEntity()
           
 java.util.List<ModelViewEntity.ModelAlias> getAliasesCopy()
           
 java.util.Iterator<ModelViewEntity.ModelAlias> getAliasesIterator()
           
 int getAliasesSize()
           
 java.util.List<ModelViewEntity.ModelMemberEntity> getAllModelMemberEntities()
           
 java.lang.String getColNameOrAlias(java.lang.String fieldName)
          The col-name of the Field, the alias of the field if this is on a view-entity
 java.util.List<ModelField> getGroupBysCopy()
           
 java.util.List<ModelField> getGroupBysCopy(java.util.List<ModelField> selectFields)
           
 ModelEntity getMemberModelEntity(java.lang.String alias)
           
 java.util.Map<java.lang.String,ModelViewEntity.ModelMemberEntity> getMemberModelMemberEntities()
           
 ModelViewEntity.ModelMemberEntity getMemberModelMemberEntity(java.lang.String alias)
           
protected  ModelViewEntity.ModelConversion getOrCreateModelConversion(java.lang.String aliasName)
           
 ModelViewEntity.ModelViewLink getViewLink(int index)
          List of view links to define how entities are connected (or "joined")
 java.util.List<ModelViewEntity.ModelViewLink> getViewLinksCopy()
           
 java.util.Iterator<ModelViewEntity.ModelViewLink> getViewLinksIterator()
           
 int getViewLinksSize()
           
 void populateFields(ModelReader modelReader)
           
 void populateFieldsBasic(ModelReader modelReader)
           
 void populateReverseLinks()
           
 void removeMemberModelMemberEntity(java.lang.String alias)
           
 java.lang.String toString()
           
 
Methods inherited from class org.ofbiz.entity.model.ModelEntity
addExtendEntity, addField, addIndex, addRelation, addViewEntity, areFields, classNameString, classNameString, classNameString, classNameString, colNameString, colNameString, compareTo, containsAllPkFieldNames, convertFieldMapInPlace, convertFieldValue, convertFieldValue, convertFieldValue, convertToViewValues, createEoModelMap, createFieldsMap, fieldNameString, fieldNameString, fieldsStringList, fieldsStringList, fieldsStringList, fieldsStringList, fieldsStringList, fieldsStringList, fieldTypeNameString, finderQueryString, finderQueryString, getAllFieldNames, getAutoClearCache, getDefaultResourceName, getDependentOn, getDoLock, getEntityName, getField, getField, getFieldNamesFromFieldVector, getFieldNamesFromFieldVector, getFieldsCopy, getFieldsIterator, getFieldsSize, getFieldsUnmodifiable, getFirstPkFieldName, getHasFieldWithAuditLog, getIndex, getIndex, getIndexesIterator, getIndexesSize, getLocation, getModelReader, getNeverCache, getNoAutoStamp, getNopk, getNoPkFieldNames, getNopksCopy, getNopksIterator, getNopksSize, getOnlyPk, getPackageName, getPk, getPkFieldNames, getPkFieldsUnmodifiable, getPksCopy, getPksIterator, getPksSize, getPlainTableName, getRelation, getRelation, getRelationsIterator, getRelationsList, getRelationsManyList, getRelationsOneList, getRelationsOneSize, getRelationsSize, getSequenceBankSize, getTableName, getTableName, getViewConvertorsIterator, getViewEntitiesSize, getViewEntity, httpArgList, httpArgList, httpArgListFromClass, httpArgListFromClass, httpArgListFromClass, httpArgListFromClass, httpRelationArgList, httpRelationArgList, isField, lock, nameString, nameString, nonPkNullList, pkNameString, pkNameString, populateBasicInfo, populateIndexes, populateRelated, primKeyClassNameString, removeField, removeField, removeIndex, removeRelation, removeViewEntity, removeViewEntity, setAutoClearCache, setDefaultResourceName, setDependentOn, setDoLock, setEntityName, setLocation, setNeverCache, setNoAutoStamp, setPackageName, setTableName, toXmlElement, toXmlElement, typeNameString, typeNameString, typeNameStringRelatedAndMain, typeNameStringRelatedAndMain, typeNameStringRelatedNoMapped, typeNameStringRelatedNoMapped, updatePkLists, writeEoModelText
 
Methods inherited from class org.ofbiz.entity.model.ModelInfo
getAuthor, getCopyright, getDescription, getTitle, getVersion, populateFromAttributes, populateFromElements, setAuthor, setCopyright, setDescription, setTitle, setVersion
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

module

public static final java.lang.String module

functionPrefixMap

public static java.util.Map<java.lang.String,java.lang.String> functionPrefixMap

memberModelMemberEntities

protected java.util.Map<java.lang.String,ModelViewEntity.ModelMemberEntity> memberModelMemberEntities
Contains member-entity alias name definitions: key is alias, value is ModelMemberEntity


allModelMemberEntities

protected java.util.List<ModelViewEntity.ModelMemberEntity> allModelMemberEntities
A list of all ModelMemberEntity entries; this is mainly used to preserve the original order of member entities from the XML file


memberModelEntities

protected java.util.Map<java.lang.String,ModelEntity> memberModelEntities
Contains member-entity ModelEntities: key is alias, value is ModelEntity; populated with fields


aliasAlls

protected java.util.List<ModelViewEntity.ModelAliasAll> aliasAlls
List of alias-alls which act as a shortcut for easily pulling over member entity fields


aliases

protected java.util.List<ModelViewEntity.ModelAlias> aliases
List of aliases with information in addition to what is in the standard field list


viewLinks

protected java.util.List<ModelViewEntity.ModelViewLink> viewLinks
List of view links to define how entities are connected (or "joined")


groupBys

protected java.util.List<ModelField> groupBys
A List of the Field objects for the View Entity, one for each GROUP BY field


conversions

protected java.util.Map<java.lang.String,java.util.Map<java.lang.String,ModelViewEntity.ModelConversion>> conversions

aliasedModelEntity

protected ModelEntity aliasedModelEntity
Constructor Detail

ModelViewEntity

public ModelViewEntity(ModelReader reader,
                       org.w3c.dom.Element entityElement,
                       UtilTimer utilTimer,
                       ModelInfo def)

ModelViewEntity

public ModelViewEntity(DynamicViewEntity dynamicViewEntity,
                       ModelReader modelReader)
Method Detail

getMemberModelMemberEntities

public java.util.Map<java.lang.String,ModelViewEntity.ModelMemberEntity> getMemberModelMemberEntities()

getAllModelMemberEntities

public java.util.List<ModelViewEntity.ModelMemberEntity> getAllModelMemberEntities()

getMemberModelMemberEntity

public ModelViewEntity.ModelMemberEntity getMemberModelMemberEntity(java.lang.String alias)

getMemberModelEntity

public ModelEntity getMemberModelEntity(java.lang.String alias)

addMemberModelMemberEntity

public void addMemberModelMemberEntity(ModelViewEntity.ModelMemberEntity modelMemberEntity)

removeMemberModelMemberEntity

public void removeMemberModelMemberEntity(java.lang.String alias)

getColNameOrAlias

public java.lang.String getColNameOrAlias(java.lang.String fieldName)
The col-name of the Field, the alias of the field if this is on a view-entity

Overrides:
getColNameOrAlias in class ModelEntity

getAlias

public ModelViewEntity.ModelAlias getAlias(int index)
List of aliases with information in addition to what is in the standard field list


getAlias

public ModelViewEntity.ModelAlias getAlias(java.lang.String name)

getAliasesSize

public int getAliasesSize()

getAliasesIterator

public java.util.Iterator<ModelViewEntity.ModelAlias> getAliasesIterator()

getAliasesCopy

public java.util.List<ModelViewEntity.ModelAlias> getAliasesCopy()

getGroupBysCopy

public java.util.List<ModelField> getGroupBysCopy()

getGroupBysCopy

public java.util.List<ModelField> getGroupBysCopy(java.util.List<ModelField> selectFields)

getViewLink

public ModelViewEntity.ModelViewLink getViewLink(int index)
List of view links to define how entities are connected (or "joined")


getViewLinksSize

public int getViewLinksSize()

getViewLinksIterator

public java.util.Iterator<ModelViewEntity.ModelViewLink> getViewLinksIterator()

getViewLinksCopy

public java.util.List<ModelViewEntity.ModelViewLink> getViewLinksCopy()

addViewLink

public void addViewLink(ModelViewEntity.ModelViewLink viewLink)

colNameString

public java.lang.String colNameString(java.lang.String separator,
                                      java.lang.String afterLast,
                                      boolean alias,
                                      ModelField... flds)
Overrides:
colNameString in class ModelEntity

colNameString

public java.lang.String colNameString(java.util.List<ModelField> flds,
                                      java.lang.String separator,
                                      java.lang.String afterLast,
                                      boolean alias)
Overrides:
colNameString in class ModelEntity

getAliasedModelEntity

public ModelEntity getAliasedModelEntity()

getAliasedEntity

public ModelEntity getAliasedEntity(java.lang.String entityAlias,
                                    ModelReader modelReader)

getAliasedField

public ModelField getAliasedField(ModelEntity aliasedEntity,
                                  java.lang.String field,
                                  ModelReader modelReader)

populateFields

public void populateFields(ModelReader modelReader)

populateFieldsBasic

public void populateFieldsBasic(ModelReader modelReader)

getOrCreateModelConversion

protected ModelViewEntity.ModelConversion getOrCreateModelConversion(java.lang.String aliasName)

populateReverseLinks

public void populateReverseLinks()

convert

public java.util.List<java.util.Map<java.lang.String,java.lang.Object>> convert(java.lang.String fromEntityName,
                                                                                java.util.Map<java.lang.String,java.lang.Object> data)

toString

public java.lang.String toString()
Overrides:
toString in class ModelEntity