Class GenericDelegator
- All Implemented Interfaces:
Delegator
Delegator
interface.-
Nested Class Summary
Modifier and TypeClassDescriptionprotected static class
static final class
Nested classes/interfaces inherited from interface org.apache.ofbiz.entity.Delegator
Delegator.OperationType
-
Constructor Summary
ModifierConstructorDescriptionprotected
Only allow creation through the factory methodprotected
GenericDelegator
(String delegatorFullName) Only allow creation through the factory method -
Method Summary
Modifier and TypeMethodDescriptionprotected void
absorbList
(List<GenericValue> lst) Absorb list.void
clearAllCacheLinesByDummyPK
(Collection<GenericPK> dummyPKs) void
void
This method is a shortcut to completely clear all entity engine caches.void
clearAllCaches
(boolean distribute) void
clearCacheLine
(String entityName) Remove all CACHED Generic Entity (List) from the cachevoid
clearCacheLine
(String entityName, Object... fields) Remove a CACHED Generic Entity (List) from the cache, either a PK, ByAnd, or Allvoid
clearCacheLine
(String entityName, Map<String, ? extends Object> fields) Remove a CACHED Generic Entity (List) from the cache, either a PK, ByAnd, or Allvoid
clearCacheLine
(GenericPK primaryKey) Remove a CACHED Generic Entity from the cache by its primary key, does NOT check to see if the passed GenericPK is a complete primary key.void
clearCacheLine
(GenericPK primaryKey, boolean distribute) void
clearCacheLine
(GenericValue value) Remove a CACHED GenericValue from as many caches as it can.void
clearCacheLine
(GenericValue value, boolean distribute) void
clearCacheLineByCondition
(String entityName, EntityCondition condition) void
clearCacheLineByCondition
(String entityName, EntityCondition condition, boolean distribute) void
clearCacheLineFlexible
(GenericEntity dummyPK) Remove a CACHED Generic Entity from the cache by its primary key.void
clearCacheLineFlexible
(GenericEntity dummyPK, boolean distribute) static void
static void
cloneDelegator
(String delegatorFullName) Creates a Entity in the form of a GenericValue and write it to the databaseCreates a Entity in the form of a GenericValue and write it to the databaseCreates a Entity in the form of a GenericValue and write it to the datasourcecreate
(GenericValue value) Creates a Entity in the form of a GenericValue and write it to the datasourceprotected DistributedCacheClear
Create distributed cache clear distributed cache clear.protected void
createEntityAuditLogAll
(GenericValue value, boolean isUpdate, boolean isRemove) Create entity audit log all.protected void
createEntityAuditLogSingle
(GenericValue value, ModelField mf, boolean isUpdate, boolean isRemove, Timestamp nowTimestamp) Create entity audit log single.protected EntityEcaHandler<?>
Create entity eca handler entity eca handler.protected static <T> GenericDelegator.EntityEcaRuleRunner<T>
createEntityEcaRuleRunner
(EntityEcaHandler<T> entityEcaHandler, String entityName) createHelperCallable
(String groupName) Create helper callable callable.createOrStore
(GenericValue value) Creates or stores an EntitycreateSetNextSeqId
(GenericValue value) Sets the sequenced ID (for entity with one primary key field ONLY), and then does a create in the database as normal.createSingle
(String entityName, Object singlePkValue) Creates a Entity in the form of a GenericValue and write it to the databasedecryptFieldValue
(String entityName, ModelField.EncryptMethod encryptMethod, String encValue) encryptFieldValue
(String entityName, ModelField.EncryptMethod encryptMethod, Object fieldValue) find
(String entityName, EntityCondition whereEntityCondition, EntityCondition havingEntityCondition, Set<String> fieldsToSelect, List<String> orderBy, EntityFindOptions findOptions) Finds GenericValues by the conditions specified in the EntityCondition object, the the EntityCondition javadoc for more details.Finds all Generic entitiesfindByAnd
(String entityName, Map<String, ? extends Object> fields, List<String> orderBy, boolean useCache) Finds Generic Entity records by all of the specified fields (ie: combined using AND), looking first in the cache; uses orderBy for lookup, but only keys results on the entityName and fieldsfindByPrimaryKeyPartial
(GenericPK primaryKey, Set<String> keys) Find a Generic Entity by its Primary Key and only returns the values requested by the passed keys (names).long
findCountByCondition
(String entityName, EntityCondition whereEntityCondition, Set<String> fieldsToSelect, EntityCondition havingEntityCondition, EntityFindOptions findOptions) Gets the hit count of GenericValues for the given EntityCondition objects.long
findCountByCondition
(String entityName, EntityCondition whereEntityCondition, EntityCondition havingEntityCondition, EntityFindOptions findOptions) Gets the hit count of GenericValues for the given EntityCondition objects.findList
(String entityName, EntityCondition entityCondition, Set<String> fieldsToSelect, List<String> orderBy, EntityFindOptions findOptions, boolean useCache) Finds GenericValues by the conditions specified in the EntityCondition object, the the EntityCondition javadoc for more details.findList
(String entityName, EntityCondition entityCondition, EntityCondition havingCondition, Set<String> fieldsToSelect, List<String> orderBy, EntityFindOptions findOptions, boolean useCache) Finds GenericValues by the conditions specified in the EntityCondition object, the the EntityCondition javadoc for more details.findListIteratorByCondition
(DynamicViewEntity dynamicViewEntity, EntityCondition whereEntityCondition, EntityCondition havingEntityCondition, Collection<String> fieldsToSelect, List<String> orderBy, EntityFindOptions findOptions) Finds GenericValues by the conditions specified in the EntityCondition object, the the EntityCondition javadoc for more details.Find a Generic Entity by its primary key.Find a Generic Entity by its Primary KeygetCache()
protected DistributedCacheClear
Gets distributed cache clear.protected GenericDelegator.EntityEcaRuleRunner<?>
getEcaRuleRunner
(String entityName) Gets eca rule runner.<T> EntityEcaHandler<T>
getEntityFieldType
(ModelEntity entity, String type) Gets a field type instance by name from the helper that corresponds to the specified entitygetEntityGroupName
(String entityName) Gets the helper name that corresponds to this delegator and the specified entityNamegetEntityHelper
(String entityName) Gets the an instance of helper that corresponds to this delegator and the specified entityNamegetEntityHelper
(ModelEntity entity) Gets the an instance of helper that corresponds to this delegator and the specified entityprotected GenericHelperInfo
getEntityHelperInfo
(String entityName) Gets entity helper info.getEntityHelperName
(String entityName) Gets the helper name that corresponds to this delegator and the specified entityNamegetEntityHelperName
(ModelEntity entity) Gets the helper name that corresponds to this delegator and the specified entitygetFromPrimaryKeyCache
(GenericPK primaryKey) getGroupHelperInfo
(String entityGroupName) getGroupHelperName
(String groupName) Gets the helper name that corresponds to this delegator and the specified entityNamegetModelEntity
(String entityName) Gets the instance of ModelEntity that corresponds to this delegator and the specified entityNamegetModelEntityMapByGroup
(String groupName) Gets a Map of entity name and entity model pairs that are in the named groupgetModelFieldTypeReader
(ModelEntity entity) Gets the instance of ModelGroupReader that corresponds to this delegatorGets the instance of ModelReader that corresponds to this delegatorgetMultiRelation
(GenericValue value, String relationNameOne, String relationNameTwo, List<String> orderBy) Get the named Related Entity for the GenericValue from the persistent store across another Relation.getNextSeqId
(String seqName) Get the next guaranteed unique seq id from the sequence with the given sequence name; if the named sequence doesn't exist, it will be createdgetNextSeqId
(String seqName, long staggerMax) Get the next guaranteed unique seq id from the sequence with the given sequence name; if the named sequence doesn't exist, it will be createdgetNextSeqIdLong
(String seqName) Get the next guaranteed unique seq id from the sequence with the given sequence name; if the named sequence doesn't exist, it will be createdgetNextSeqIdLong
(String seqName, long staggerMax) Get the next guaranteed unique seq id from the sequence with the given sequence name; if the named sequence doesn't exist, it will be createdGets the name of the server configuration that corresponds to this delegatorgetRelated
(String relationName, Map<String, ? extends Object> byAndFields, List<String> orderBy, GenericValue value, boolean useCache) Get the named Related Entity for the GenericValue from the persistent storegetRelatedDummyPK
(String relationName, Map<String, ? extends Object> byAndFields, GenericValue value) Get a dummy primary key for the named Related Entity for the GenericValue.getRelatedOne
(String relationName, GenericValue value, boolean useCache) Get related entity where relation is of type one, uses findByPrimaryKeyvoid
void
Creates a Primary Key in the form of a GenericPK without persisting itCreates a Primary Key in the form of a GenericPK without persisting itCreates a Primary Key in the form of a GenericPK without persisting itmakePKSingle
(String entityName, Object singlePkValue) Creates a Primary Key in the form of a GenericPK without persisting itmakeTestDelegator
(String delegatorName) makeValidValue
(String entityName, Object... fields) Creates a Entity in the form of a GenericValue without persisting it; only valid fields will be pulled from the fields MapmakeValidValue
(String entityName, Map<String, ? extends Object> fields) Creates a Entity in the form of a GenericValue without persisting it; only valid fields will be pulled from the fields MapCreates a Entity in the form of a GenericValue without persisting itCreates a Entity in the form of a GenericValue without persisting itCreates a Entity in the form of a GenericValue without persisting itmakeValues
(Document document) makeValueSingle
(String entityName, Object singlePkValue) Creates a Entity in the form of a GenericValue without persisting itstatic String
static String
static void
pushSessionIdentifier
(String sessionIdentifier) static void
pushUserIdentifier
(String userIdentifier) void
putAllInPrimaryKeyCache
(List<GenericValue> values) void
putInPrimaryKeyCache
(GenericPK primaryKey, GenericValue value) readXmlDocument
(URL url) void
refresh
(GenericValue value) Refresh the Entity for the GenericValue from the persistent storevoid
refreshFromCache
(GenericValue value) Refresh the Entity for the GenericValue from the cachevoid
Refreshes the ID sequencer clearing all cached bank values.int
int
removeAll
(List<? extends GenericEntity> dummyPKs) Remove the Entities from the List from the persistent store.int
removeByAnd
(String entityName, Object... fields) Removes/deletes Generic Entity records found by all of the specified fields (ie: combined using AND)int
removeByAnd
(String entityName, Map<String, ? extends Object> fields) Removes/deletes Generic Entity records found by all of the specified fields (ie: combined using AND)int
removeByCondition
(String entityName, EntityCondition condition) Removes/deletes Generic Entity records found by the conditionint
removeByPrimaryKey
(GenericPK primaryKey) Remove a Generic Entity corresponding to the primaryKeyint
removeRelated
(String relationName, GenericValue value) Remove the named Related Entity for the GenericValue from the persistent storeint
removeValue
(GenericValue value) Remove a Generic Value from the databasevoid
rollback()
protected void
saveEntitySyncRemoveInfo
(GenericEntity dummyPK) Save entity sync remove info.protected void
setDelegatorNames
(String delegatorFullName) Sets delegator names.void
setDistributedCacheClear
(DistributedCacheClear distributedCacheClear) void
setEntityCrypto
(EntityCrypto crypto) <T> void
setEntityEcaHandler
(EntityEcaHandler<T> entityEcaHandler) void
setNextSubSeqId
(GenericValue value, String seqFieldName, int numericPadding, int incrementBy) Look at existing values for a sub-entity with a sequenced secondary ID, and get the highest plus 1void
setSequencer
(SequenceUtil sequencer) Allows you to pass a SequenceUtil class (possibly one that overrides the getNextSeqId method); if null is passed will effectively refresh the sequencer.int
store
(GenericValue value) Store the Entity from the GenericValue to the persistent storeint
storeAll
(List<GenericValue> values) Store the Entities from the List GenericValue instances to the persistent store.int
storeAll
(List<GenericValue> values, EntityStoreOptions storeOptions) Store the Entities from the List GenericValue instances to the persistent store.int
storeByCondition
(String entityName, Map<String, ? extends Object> fieldsToSet, EntityCondition condition) Store a group of values.boolean
Get use of Distributed Cache Clear mechanism status
-
Constructor Details
-
GenericDelegator
protected GenericDelegator()Only allow creation through the factory method -
GenericDelegator
Only allow creation through the factory method- Throws:
GenericEntityException
-
-
Method Details
-
getUserIdentifierStack
-
pushUserIdentifier
-
popUserIdentifier
-
clearUserIdentifierStack
public static void clearUserIdentifierStack() -
getSessionIdentifierStack
-
pushSessionIdentifier
-
popSessionIdentifier
-
clearSessionIdentifierStack
public static void clearSessionIdentifierStack() -
createHelperCallable
Create helper callable callable.- Parameters:
groupName
- the group name- Returns:
- the callable
-
setDelegatorNames
Sets delegator names.- Parameters:
delegatorFullName
- the delegator full name
-
initEntityEcaHandler
public void initEntityEcaHandler()- Specified by:
initEntityEcaHandler
in interfaceDelegator
-
createEntityEcaHandler
Create entity eca handler entity eca handler.- Returns:
- the entity eca handler
-
getDelegatorName
- Specified by:
getDelegatorName
in interfaceDelegator
-
getDelegatorBaseName
- Specified by:
getDelegatorBaseName
in interfaceDelegator
-
getDelegatorTenantId
- Specified by:
getDelegatorTenantId
in interfaceDelegator
-
getOriginalDelegatorName
Description copied from interface:Delegator
Gets the name of the server configuration that corresponds to this delegator- Specified by:
getOriginalDelegatorName
in interfaceDelegator
- Returns:
- server configuration name
-
getModelReader
Description copied from interface:Delegator
Gets the instance of ModelReader that corresponds to this delegator- Specified by:
getModelReader
in interfaceDelegator
- Returns:
- ModelReader that corresponds to this delegator
-
getModelGroupReader
Description copied from interface:Delegator
Gets the instance of ModelGroupReader that corresponds to this delegator- Specified by:
getModelGroupReader
in interfaceDelegator
- Returns:
- ModelGroupReader that corresponds to this delegator
-
getModelEntity
Description copied from interface:Delegator
Gets the instance of ModelEntity that corresponds to this delegator and the specified entityName- Specified by:
getModelEntity
in interfaceDelegator
- Parameters:
entityName
- The name of the entity to get- Returns:
- ModelEntity that corresponds to this delegator and the specified entityName
-
getEntityGroupName
Description copied from interface:Delegator
Gets the helper name that corresponds to this delegator and the specified entityName- Specified by:
getEntityGroupName
in interfaceDelegator
- Parameters:
entityName
- The name of the entity to get the helper for- Returns:
- String with the helper name that corresponds to this delegator and the specified entityName
-
getModelEntityMapByGroup
public Map<String,ModelEntity> getModelEntityMapByGroup(String groupName) throws GenericEntityException Description copied from interface:Delegator
Gets a Map of entity name and entity model pairs that are in the named group- Specified by:
getModelEntityMapByGroup
in interfaceDelegator
- Parameters:
groupName
- The name of the group- Returns:
- Map of entityName String keys and ModelEntity instance values
- Throws:
GenericEntityException
-
getGroupHelperName
Description copied from interface:Delegator
Gets the helper name that corresponds to this delegator and the specified entityName- Specified by:
getGroupHelperName
in interfaceDelegator
- Parameters:
groupName
- The name of the group to get the helper name for- Returns:
- String with the helper name that corresponds to this delegator and the specified entityName
-
getGroupHelperInfo
- Specified by:
getGroupHelperInfo
in interfaceDelegator
-
getEntityHelperInfo
Gets entity helper info.- Parameters:
entityName
- the entity name- Returns:
- the entity helper info
-
getEntityHelperName
Description copied from interface:Delegator
Gets the helper name that corresponds to this delegator and the specified entityName- Specified by:
getEntityHelperName
in interfaceDelegator
- Parameters:
entityName
- The name of the entity to get the helper name for- Returns:
- String with the helper name that corresponds to this delegator and the specified entityName
-
getEntityHelperName
Description copied from interface:Delegator
Gets the helper name that corresponds to this delegator and the specified entity- Specified by:
getEntityHelperName
in interfaceDelegator
- Parameters:
entity
- The entity to get the helper for- Returns:
- String with the helper name that corresponds to this delegator and the specified entity
-
getEntityHelper
Description copied from interface:Delegator
Gets the an instance of helper that corresponds to this delegator and the specified entityName- Specified by:
getEntityHelper
in interfaceDelegator
- Parameters:
entityName
- The name of the entity to get the helper for- Returns:
- GenericHelper that corresponds to this delegator and the specified entityName
- Throws:
GenericEntityException
-
getEntityHelper
Description copied from interface:Delegator
Gets the an instance of helper that corresponds to this delegator and the specified entity- Specified by:
getEntityHelper
in interfaceDelegator
- Parameters:
entity
- The entity to get the helper for- Returns:
- GenericHelper that corresponds to this delegator and the specified entity
- Throws:
GenericEntityException
-
getEntityFieldType
public ModelFieldType getEntityFieldType(ModelEntity entity, String type) throws GenericEntityException Description copied from interface:Delegator
Gets a field type instance by name from the helper that corresponds to the specified entity- Specified by:
getEntityFieldType
in interfaceDelegator
- Parameters:
entity
- The entitytype
- The name of the type- Returns:
- ModelFieldType instance for the named type from the helper that corresponds to the specified entity
- Throws:
GenericEntityException
-
getModelFieldTypeReader
- Specified by:
getModelFieldTypeReader
in interfaceDelegator
-
makeValue
Description copied from interface:Delegator
Creates a Entity in the form of a GenericValue without persisting it -
makeValue
Description copied from interface:Delegator
Creates a Entity in the form of a GenericValue without persisting it -
makeValue
Description copied from interface:Delegator
Creates a Entity in the form of a GenericValue without persisting it -
makeValueSingle
Description copied from interface:Delegator
Creates a Entity in the form of a GenericValue without persisting it- Specified by:
makeValueSingle
in interfaceDelegator
-
makeValidValue
Description copied from interface:Delegator
Creates a Entity in the form of a GenericValue without persisting it; only valid fields will be pulled from the fields Map- Specified by:
makeValidValue
in interfaceDelegator
-
makeValidValue
Description copied from interface:Delegator
Creates a Entity in the form of a GenericValue without persisting it; only valid fields will be pulled from the fields Map- Specified by:
makeValidValue
in interfaceDelegator
-
makePK
Description copied from interface:Delegator
Creates a Primary Key in the form of a GenericPK without persisting it -
makePK
Description copied from interface:Delegator
Creates a Primary Key in the form of a GenericPK without persisting it -
makePK
Description copied from interface:Delegator
Creates a Primary Key in the form of a GenericPK without persisting it -
makePKSingle
Description copied from interface:Delegator
Creates a Primary Key in the form of a GenericPK without persisting it- Specified by:
makePKSingle
in interfaceDelegator
-
create
Description copied from interface:Delegator
Creates a Entity in the form of a GenericValue and write it to the datasource- Specified by:
create
in interfaceDelegator
- Parameters:
primaryKey
- The GenericPK to create a value in the datasource from- Returns:
- GenericValue instance containing the new instance
- Throws:
GenericEntityException
-
create
Description copied from interface:Delegator
Creates a Entity in the form of a GenericValue and write it to the database- Specified by:
create
in interfaceDelegator
- Returns:
- GenericValue instance containing the new instance
- Throws:
GenericEntityException
-
create
public GenericValue create(String entityName, Map<String, ? extends Object> fields) throws GenericEntityExceptionDescription copied from interface:Delegator
Creates a Entity in the form of a GenericValue and write it to the database- Specified by:
create
in interfaceDelegator
- Returns:
- GenericValue instance containing the new instance
- Throws:
GenericEntityException
-
createSingle
public GenericValue createSingle(String entityName, Object singlePkValue) throws GenericEntityException Description copied from interface:Delegator
Creates a Entity in the form of a GenericValue and write it to the database- Specified by:
createSingle
in interfaceDelegator
- Returns:
- GenericValue instance containing the new instance
- Throws:
GenericEntityException
-
createSetNextSeqId
Description copied from interface:Delegator
Sets the sequenced ID (for entity with one primary key field ONLY), and then does a create in the database as normal. The reason to do it this way is that it will retry and fix the sequence if somehow the sequencer is in a bad state and returning a value that already exists.- Specified by:
createSetNextSeqId
in interfaceDelegator
- Parameters:
value
- The GenericValue to create a value in the datasource from- Returns:
- GenericValue instance containing the new instance
- Throws:
GenericEntityException
-
create
Description copied from interface:Delegator
Creates a Entity in the form of a GenericValue and write it to the datasource- Specified by:
create
in interfaceDelegator
- Parameters:
value
- The GenericValue to create a value in the datasource from- Returns:
- GenericValue instance containing the new instance
- Throws:
GenericEntityException
-
createOrStore
Description copied from interface:Delegator
Creates or stores an Entity- Specified by:
createOrStore
in interfaceDelegator
- Parameters:
value
- The GenericValue instance containing the new or existing instance- Returns:
- GenericValue instance containing the new or updated instance
- Throws:
GenericEntityException
-
saveEntitySyncRemoveInfo
Save entity sync remove info.- Parameters:
dummyPK
- the dummy pk- Throws:
GenericEntityException
- the generic entity exception
-
removeByPrimaryKey
Description copied from interface:Delegator
Remove a Generic Entity corresponding to the primaryKey- Specified by:
removeByPrimaryKey
in interfaceDelegator
- Parameters:
primaryKey
- The primary key of the entity to remove.- Returns:
- int representing number of rows effected by this operation
- Throws:
GenericEntityException
-
removeValue
Description copied from interface:Delegator
Remove a Generic Value from the database- Specified by:
removeValue
in interfaceDelegator
- Parameters:
value
- The GenericValue object of the entity to remove.- Returns:
- int representing number of rows effected by this operation
- Throws:
GenericEntityException
-
removeByAnd
Description copied from interface:Delegator
Removes/deletes Generic Entity records found by all of the specified fields (ie: combined using AND)- Specified by:
removeByAnd
in interfaceDelegator
- Parameters:
entityName
- The Name of the Entity as defined in the entity XML filefields
- The fields of the named entity to query by with their corresponding values- Returns:
- int representing number of rows effected by this operation
- Throws:
GenericEntityException
-
removeByAnd
public int removeByAnd(String entityName, Map<String, ? extends Object> fields) throws GenericEntityExceptionDescription copied from interface:Delegator
Removes/deletes Generic Entity records found by all of the specified fields (ie: combined using AND)- Specified by:
removeByAnd
in interfaceDelegator
- Parameters:
entityName
- The Name of the Entity as defined in the entity XML filefields
- The fields of the named entity to query by with their corresponding values- Returns:
- int representing number of rows effected by this operation
- Throws:
GenericEntityException
-
removeByCondition
public int removeByCondition(String entityName, EntityCondition condition) throws GenericEntityException Description copied from interface:Delegator
Removes/deletes Generic Entity records found by the condition- Specified by:
removeByCondition
in interfaceDelegator
- Parameters:
entityName
- The Name of the Entity as defined in the entity XML filecondition
- The condition used to restrict the removing- Returns:
- int representing number of rows effected by this operation
- Throws:
GenericEntityException
-
removeRelated
Description copied from interface:Delegator
Remove the named Related Entity for the GenericValue from the persistent store- Specified by:
removeRelated
in interfaceDelegator
- Parameters:
relationName
- String containing the relation name which is the combination of relation.title and relation.rel-entity-name as specified in the entity XML definition filevalue
- GenericValue instance containing the entity- Returns:
- int representing number of rows effected by this operation
- Throws:
GenericEntityException
-
refresh
Description copied from interface:Delegator
Refresh the Entity for the GenericValue from the persistent store- Specified by:
refresh
in interfaceDelegator
- Parameters:
value
- GenericValue instance containing the entity to refresh- Throws:
GenericEntityException
-
refreshFromCache
Description copied from interface:Delegator
Refresh the Entity for the GenericValue from the cache- Specified by:
refreshFromCache
in interfaceDelegator
- Parameters:
value
- GenericValue instance containing the entity to refresh- Throws:
GenericEntityException
-
storeByCondition
public int storeByCondition(String entityName, Map<String, ? extends Object> fieldsToSet, EntityCondition condition) throws GenericEntityExceptionDescription copied from interface:Delegator
Store a group of values.- Specified by:
storeByCondition
in interfaceDelegator
- Parameters:
entityName
- The name of the Entity as defined in the entity XML filefieldsToSet
- The fields of the named entity to set in the databasecondition
- The condition that restricts the list of stored values- Returns:
- int representing number of rows effected by this operation
- Throws:
GenericEntityException
-
store
Description copied from interface:Delegator
Store the Entity from the GenericValue to the persistent store- Specified by:
store
in interfaceDelegator
- Parameters:
value
- GenericValue instance containing the entity- Returns:
- int representing number of rows effected by this operation
- Throws:
GenericEntityException
-
storeAll
Description copied from interface:Delegator
Store the Entities from the List GenericValue instances to the persistent store.
This is different than the normal store method in that the store method only does an update, while the storeAll method checks to see if each entity exists, then either does an insert or an update as appropriate.
These updates all happen in one transaction, so they will either all succeed or all fail, if the data source supports transactions. This is just like to othersToStore feature of the GenericEntity on a create or store.
- Specified by:
storeAll
in interfaceDelegator
- Parameters:
values
- List of GenericValue instances containing the entities to store- Returns:
- int representing number of rows effected by this operation
- Throws:
GenericEntityException
-
storeAll
public int storeAll(List<GenericValue> values, EntityStoreOptions storeOptions) throws GenericEntityException Description copied from interface:Delegator
Store the Entities from the List GenericValue instances to the persistent store.
This is different than the normal store method in that the store method only does an update, while the storeAll method checks to see if each entity exists, then either does an insert or an update as appropriate.
These updates all happen in one transaction, so they will either all succeed or all fail, if the data source supports transactions. This is just like to othersToStore feature of the GenericEntity on a create or store.
- Specified by:
storeAll
in interfaceDelegator
- Parameters:
values
- List of GenericValue instances containing the entities to storestoreOptions
- An instance of EntityStoreOptions that specifies advanced store options or null for default values. See the EntityStoreOptions JavaDoc for more details.- Returns:
- int representing number of rows effected by this operation
- Throws:
GenericEntityException
-
removeAll
- Specified by:
removeAll
in interfaceDelegator
- Throws:
GenericEntityException
-
removeAll
Description copied from interface:Delegator
Remove the Entities from the List from the persistent store.
The List contains GenericEntity objects, can be either GenericPK or GenericValue.
If a certain entity contains a complete primary key, the entity in the datasource corresponding to that primary key will be removed, this is like a removeByPrimary Key.
On the other hand, if a certain entity is an incomplete or non primary key, if will behave like the removeByAnd method.
These updates all happen in one transaction, so they will either all succeed or all fail, if the data source supports transactions.
- Specified by:
removeAll
in interfaceDelegator
- Parameters:
dummyPKs
- Collection of GenericEntity instances containing the entities or by and fields to remove- Returns:
- int representing number of rows effected by this operation
- Throws:
GenericEntityException
-
findOne
public GenericValue findOne(String entityName, boolean useCache, Object... fields) throws GenericEntityException Description copied from interface:Delegator
Find a Generic Entity by its primary key.- Specified by:
findOne
in interfaceDelegator
- Parameters:
entityName
- The Name of the Entity as defined in the entity XML fileuseCache
- Retrieve the Generic Entity from the cache whentrue
fields
- The fields of the named entity to query by with their corresponding values- Returns:
- The Generic Entity corresponding to the primary key
- Throws:
GenericEntityException
-
findOne
public GenericValue findOne(String entityName, Map<String, ? extends Object> fields, boolean useCache) throws GenericEntityExceptionDescription copied from interface:Delegator
Find a Generic Entity by its Primary Key- Specified by:
findOne
in interfaceDelegator
- Parameters:
entityName
- The Name of the Entity as defined in the entity XML filefields
- The fields of the named entity to query by with their corresponding values- Returns:
- The GenericValue corresponding to the primaryKey
- Throws:
GenericEntityException
-
findByPrimaryKeyPartial
public GenericValue findByPrimaryKeyPartial(GenericPK primaryKey, Set<String> keys) throws GenericEntityException Description copied from interface:Delegator
Find a Generic Entity by its Primary Key and only returns the values requested by the passed keys (names).- Specified by:
findByPrimaryKeyPartial
in interfaceDelegator
- Parameters:
primaryKey
- The primary key to find by.keys
- The keys, or names, of the values to retrieve; only these values will be retrieved- Returns:
- The GenericValue corresponding to the primaryKey
- Throws:
GenericEntityException
-
findAll
public List<GenericValue> findAll(String entityName, boolean useCache) throws GenericEntityException Finds all Generic entities- Specified by:
findAll
in interfaceDelegator
- Parameters:
entityName
- The Name of the Entity as defined in the entity XML fileuseCache
- Whether to cache the results- Returns:
- List containing all Generic entities
- Throws:
GenericEntityException
- See Also:
-
findByAnd
public List<GenericValue> findByAnd(String entityName, Map<String, ? extends Object> fields, List<String> orderBy, boolean useCache) throws GenericEntityExceptionDescription copied from interface:Delegator
Finds Generic Entity records by all of the specified fields (ie: combined using AND), looking first in the cache; uses orderBy for lookup, but only keys results on the entityName and fields- Specified by:
findByAnd
in interfaceDelegator
- Parameters:
entityName
- The Name of the Entity as defined in the entity XML filefields
- The fields of the named entity to query by with their corresponding valuesorderBy
- The fields of the named entity to order the query by; optionally add a " ASC" for ascending or " DESC" for descendinguseCache
- Whether to cache the results- Returns:
- List of GenericValue instances that match the query
- Throws:
GenericEntityException
-
find
public EntityListIterator find(String entityName, EntityCondition whereEntityCondition, EntityCondition havingEntityCondition, Set<String> fieldsToSelect, List<String> orderBy, EntityFindOptions findOptions) throws GenericEntityException Description copied from interface:Delegator
Finds GenericValues by the conditions specified in the EntityCondition object, the the EntityCondition javadoc for more details.- Specified by:
find
in interfaceDelegator
- Parameters:
entityName
- The name of the Entity as defined in the entity XML filewhereEntityCondition
- The EntityCondition object that specifies how to constrain this query before any groupings are done (if this is a view entity with group-by aliases)havingEntityCondition
- The EntityCondition object that specifies how to constrain this query after any groupings are done (if this is a view entity with group-by aliases)fieldsToSelect
- The fields of the named entity to get from the database; if empty or null all fields will be retreivedorderBy
- The fields of the named entity to order the query by; optionally add a " ASC" for ascending or " DESC" for descendingfindOptions
- An instance of EntityFindOptions that specifies advanced query options. See the EntityFindOptions JavaDoc for more details.- Returns:
- EntityListIterator representing the result of the query: NOTE THAT THIS MUST BE CLOSED (preferably in a finally block) WHEN YOU ARE DONE WITH IT, AND DON'T LEAVE IT OPEN TOO LONG BEACUSE IT WILL MAINTAIN A DATABASE CONNECTION.
- Throws:
GenericEntityException
-
findList
public List<GenericValue> findList(String entityName, EntityCondition entityCondition, Set<String> fieldsToSelect, List<String> orderBy, EntityFindOptions findOptions, boolean useCache) throws GenericEntityException Description copied from interface:Delegator
Finds GenericValues by the conditions specified in the EntityCondition object, the the EntityCondition javadoc for more details.- Specified by:
findList
in interfaceDelegator
- Parameters:
entityName
- The name of the Entity as defined in the entity XML fileentityCondition
- The EntityCondition object that specifies how to constrain this query before any groupings are done (if this is a view entity with group-by aliases)fieldsToSelect
- The fields of the named entity to get from the database; if empty or null all fields will be retrievedorderBy
- The fields of the named entity to order the query by; optionally add a " ASC" for ascending or " DESC" for descendingfindOptions
- An instance of EntityFindOptions that specifies advanced query options. See the EntityFindOptions JavaDoc for more details.- Returns:
- List of GenericValue objects representing the result
- Throws:
GenericEntityException
-
findList
public List<GenericValue> findList(String entityName, EntityCondition entityCondition, EntityCondition havingCondition, Set<String> fieldsToSelect, List<String> orderBy, EntityFindOptions findOptions, boolean useCache) throws GenericEntityException Description copied from interface:Delegator
Finds GenericValues by the conditions specified in the EntityCondition object, the the EntityCondition javadoc for more details.- Specified by:
findList
in interfaceDelegator
- Parameters:
entityName
- The name of the Entity as defined in the entity XML fileentityCondition
- The EntityCondition object that specifies how to constrain this query before any groupings are done (if this is a view entity with group-by aliases)havingCondition
- The EntityCondition object that specifies how to constrain this query after any groupings are done (if this is a view entity with group-by aliases)fieldsToSelect
- The fields of the named entity to get from the database; if empty or null all fields will be retrievedorderBy
- The fields of the named entity to order the query by; optionally add a " ASC" for ascending or " DESC" for descendingfindOptions
- An instance of EntityFindOptions that specifies advanced query options. See the EntityFindOptions JavaDoc for more details.- Returns:
- List of GenericValue objects representing the result
- Throws:
GenericEntityException
-
findListIteratorByCondition
public EntityListIterator findListIteratorByCondition(DynamicViewEntity dynamicViewEntity, EntityCondition whereEntityCondition, EntityCondition havingEntityCondition, Collection<String> fieldsToSelect, List<String> orderBy, EntityFindOptions findOptions) throws GenericEntityException Description copied from interface:Delegator
Finds GenericValues by the conditions specified in the EntityCondition object, the the EntityCondition javadoc for more details.- Specified by:
findListIteratorByCondition
in interfaceDelegator
- Parameters:
dynamicViewEntity
- The DynamicViewEntity to use for the entity model for this query; generally created on the fly for limited usewhereEntityCondition
- The EntityCondition object that specifies how to constrain this query before any groupings are done (if this is a view entity with group-by aliases)havingEntityCondition
- The EntityCondition object that specifies how to constrain this query after any groupings are done (if this is a view entity with group-by aliases)fieldsToSelect
- The fields of the named entity to get from the database; if empty or null all fields will be retreivedorderBy
- The fields of the named entity to order the query by; optionally add a " ASC" for ascending or " DESC" for descendingfindOptions
- An instance of EntityFindOptions that specifies advanced query options. See the EntityFindOptions JavaDoc for more details.- Returns:
- EntityListIterator representing the result of the query: NOTE THAT THIS MUST BE CLOSED WHEN YOU ARE DONE WITH IT, AND DON'T LEAVE IT OPEN TOO LONG BEACUSE IT WILL MAINTAIN A DATABASE CONNECTION.
- Throws:
GenericEntityException
-
findCountByCondition
public long findCountByCondition(String entityName, EntityCondition whereEntityCondition, EntityCondition havingEntityCondition, EntityFindOptions findOptions) throws GenericEntityException Description copied from interface:Delegator
Gets the hit count of GenericValues for the given EntityCondition objects.- Specified by:
findCountByCondition
in interfaceDelegator
- Returns:
- long value with hit count
- Throws:
GenericEntityException
-
findCountByCondition
public long findCountByCondition(String entityName, EntityCondition whereEntityCondition, Set<String> fieldsToSelect, EntityCondition havingEntityCondition, EntityFindOptions findOptions) throws GenericEntityException Description copied from interface:Delegator
Gets the hit count of GenericValues for the given EntityCondition objects.- Specified by:
findCountByCondition
in interfaceDelegator
- Returns:
- long value with hit count
- Throws:
GenericEntityException
-
getMultiRelation
public List<GenericValue> getMultiRelation(GenericValue value, String relationNameOne, String relationNameTwo, List<String> orderBy) throws GenericEntityException Description copied from interface:Delegator
Get the named Related Entity for the GenericValue from the persistent store across another Relation. Helps to get related Values in a multi-to-multi relationship.- Specified by:
getMultiRelation
in interfaceDelegator
- Parameters:
value
- GenericValue instance containing the entityrelationNameOne
- String containing the relation name which is the combination of relation.title and relation.rel-entity-name as specified in the entity XML definition file, for first relationrelationNameTwo
- String containing the relation name for second relationorderBy
- The fields of the named entity to order the query by; may be null; optionally add a " ASC" for ascending or " DESC" for descending- Returns:
- List of GenericValue instances as specified in the relation definition
- Throws:
GenericEntityException
-
getRelated
public List<GenericValue> getRelated(String relationName, Map<String, ? extends Object> byAndFields, List<String> orderBy, GenericValue value, boolean useCache) throws GenericEntityExceptionDescription copied from interface:Delegator
Get the named Related Entity for the GenericValue from the persistent store- Specified by:
getRelated
in interfaceDelegator
- Parameters:
relationName
- String containing the relation name which is the combination of relation.title and relation.rel-entity-name as specified in the entity XML definition filebyAndFields
- the fields that must equal in order to keep; may be nullorderBy
- The fields of the named entity to order the query by; may be null; optionally add a " ASC" for ascending or " DESC" for descendingvalue
- GenericValue instance containing the entityuseCache
- Whether to cache the results- Returns:
- List of GenericValue instances as specified in the relation definition
- Throws:
GenericEntityException
-
getRelatedDummyPK
public GenericPK getRelatedDummyPK(String relationName, Map<String, ? extends Object> byAndFields, GenericValue value) throws GenericEntityExceptionDescription copied from interface:Delegator
Get a dummy primary key for the named Related Entity for the GenericValue.- Specified by:
getRelatedDummyPK
in interfaceDelegator
- Parameters:
relationName
- String containing the relation name which is the combination of relation.title and relation.rel-entity-name as specified in the entity XML definition filebyAndFields
- the fields that must equal in order to keep; may be nullvalue
- GenericValue instance containing the entity- Returns:
- GenericPK containing a possibly incomplete PrimaryKey object representing the related entity or entities
- Throws:
GenericEntityException
-
getRelatedOne
public GenericValue getRelatedOne(String relationName, GenericValue value, boolean useCache) throws GenericEntityException Description copied from interface:Delegator
Get related entity where relation is of type one, uses findByPrimaryKey- Specified by:
getRelatedOne
in interfaceDelegator
- Parameters:
relationName
- String containing the relation name which is the combination of relation.title and relation.rel-entity-name as specified in the entity XML definition filevalue
- GenericValue instance containing the entityuseCache
- Whether to cache the results- Returns:
- GenericValue that is the related entity
- Throws:
GenericEntityException
-
clearAllCaches
public void clearAllCaches()Description copied from interface:Delegator
This method is a shortcut to completely clear all entity engine caches. For performance reasons this should not be called very often.- Specified by:
clearAllCaches
in interfaceDelegator
-
clearAllCaches
public void clearAllCaches(boolean distribute) - Specified by:
clearAllCaches
in interfaceDelegator
-
clearCacheLine
Description copied from interface:Delegator
Remove all CACHED Generic Entity (List) from the cache- Specified by:
clearCacheLine
in interfaceDelegator
- Parameters:
entityName
- The Name of the Entity as defined in the entity XML file
-
clearCacheLine
Description copied from interface:Delegator
Remove a CACHED Generic Entity (List) from the cache, either a PK, ByAnd, or All- Specified by:
clearCacheLine
in interfaceDelegator
- Parameters:
entityName
- The Name of the Entity as defined in the entity XML filefields
- The fields of the named entity to query by with their corresponding values
-
clearCacheLine
Description copied from interface:Delegator
Remove a CACHED Generic Entity (List) from the cache, either a PK, ByAnd, or All- Specified by:
clearCacheLine
in interfaceDelegator
- Parameters:
entityName
- The Name of the Entity as defined in the entity XML filefields
- The fields of the named entity to query by with their corresponding values
-
clearCacheLineFlexible
Description copied from interface:Delegator
Remove a CACHED Generic Entity from the cache by its primary key. Checks to see if the passed GenericPK is a complete primary key, if it is then the cache line will be removed from the primaryKeyCache; if it is NOT a complete primary key it will remove the cache line from the andCache. If the fields map is empty, then the allCache for the entity will be cleared.- Specified by:
clearCacheLineFlexible
in interfaceDelegator
- Parameters:
dummyPK
- The dummy primary key to clear by.
-
clearCacheLineFlexible
- Specified by:
clearCacheLineFlexible
in interfaceDelegator
-
clearCacheLineByCondition
- Specified by:
clearCacheLineByCondition
in interfaceDelegator
-
clearCacheLineByCondition
public void clearCacheLineByCondition(String entityName, EntityCondition condition, boolean distribute) - Specified by:
clearCacheLineByCondition
in interfaceDelegator
-
clearCacheLine
Description copied from interface:Delegator
Remove a CACHED Generic Entity from the cache by its primary key, does NOT check to see if the passed GenericPK is a complete primary key. Also tries to clear the corresponding all cache entry.- Specified by:
clearCacheLine
in interfaceDelegator
- Parameters:
primaryKey
- The primary key to clear by.
-
clearCacheLine
- Specified by:
clearCacheLine
in interfaceDelegator
-
clearCacheLine
Description copied from interface:Delegator
Remove a CACHED GenericValue from as many caches as it can. Automatically tries to remove entries from the all cache, the by primary key cache, and the by and cache. This is the ONLY method that tries to clear automatically from the by and cache.- Specified by:
clearCacheLine
in interfaceDelegator
- Parameters:
value
- The GenericValue to clear by.
-
clearCacheLine
- Specified by:
clearCacheLine
in interfaceDelegator
-
clearAllCacheLinesByDummyPK
- Specified by:
clearAllCacheLinesByDummyPK
in interfaceDelegator
-
clearAllCacheLinesByValue
- Specified by:
clearAllCacheLinesByValue
in interfaceDelegator
-
getFromPrimaryKeyCache
- Specified by:
getFromPrimaryKeyCache
in interfaceDelegator
-
putInPrimaryKeyCache
- Specified by:
putInPrimaryKeyCache
in interfaceDelegator
-
putAllInPrimaryKeyCache
- Specified by:
putAllInPrimaryKeyCache
in interfaceDelegator
-
setDistributedCacheClear
- Specified by:
setDistributedCacheClear
in interfaceDelegator
-
readXmlDocument
public List<GenericValue> readXmlDocument(URL url) throws SAXException, ParserConfigurationException, IOException - Specified by:
readXmlDocument
in interfaceDelegator
- Throws:
SAXException
ParserConfigurationException
IOException
-
makeValues
- Specified by:
makeValues
in interfaceDelegator
-
makePK
-
makeValue
-
getEcaRuleRunner
Gets eca rule runner.- Parameters:
entityName
- the entity name- Returns:
- the eca rule runner
-
createEntityEcaRuleRunner
protected static <T> GenericDelegator.EntityEcaRuleRunner<T> createEntityEcaRuleRunner(EntityEcaHandler<T> entityEcaHandler, String entityName) -
setEntityEcaHandler
- Specified by:
setEntityEcaHandler
in interfaceDelegator
-
getEntityEcaHandler
- Specified by:
getEntityEcaHandler
in interfaceDelegator
-
getNextSeqId
Description copied from interface:Delegator
Get the next guaranteed unique seq id from the sequence with the given sequence name; if the named sequence doesn't exist, it will be created- Specified by:
getNextSeqId
in interfaceDelegator
- Parameters:
seqName
- The name of the sequence to get the next seq id from- Returns:
- String with the next sequenced id for the given sequence name
-
getNextSeqId
Description copied from interface:Delegator
Get the next guaranteed unique seq id from the sequence with the given sequence name; if the named sequence doesn't exist, it will be created- Specified by:
getNextSeqId
in interfaceDelegator
- Parameters:
seqName
- The name of the sequence to get the next seq id fromstaggerMax
- The maximum amount to stagger the sequenced ID, if 1 the sequence will be incremented by 1, otherwise the current sequence ID will be incremented by a value between 1 and staggerMax- Returns:
- Long with the next seq id for the given sequence name
-
getNextSeqIdLong
Description copied from interface:Delegator
Get the next guaranteed unique seq id from the sequence with the given sequence name; if the named sequence doesn't exist, it will be created- Specified by:
getNextSeqIdLong
in interfaceDelegator
- Parameters:
seqName
- The name of the sequence to get the next seq id from- Returns:
- Long with the next sequenced id for the given sequence name
-
getNextSeqIdLong
Description copied from interface:Delegator
Get the next guaranteed unique seq id from the sequence with the given sequence name; if the named sequence doesn't exist, it will be created- Specified by:
getNextSeqIdLong
in interfaceDelegator
- Parameters:
seqName
- The name of the sequence to get the next seq id fromstaggerMax
- The maximum amount to stagger the sequenced ID, if 1 the sequence will be incremented by 1, otherwise the current sequence ID will be incremented by a value between 1 and staggerMax- Returns:
- Long with the next seq id for the given sequence name
-
setSequencer
Description copied from interface:Delegator
Allows you to pass a SequenceUtil class (possibly one that overrides the getNextSeqId method); if null is passed will effectively refresh the sequencer.- Specified by:
setSequencer
in interfaceDelegator
-
refreshSequencer
public void refreshSequencer()Description copied from interface:Delegator
Refreshes the ID sequencer clearing all cached bank values.- Specified by:
refreshSequencer
in interfaceDelegator
-
setNextSubSeqId
public void setNextSubSeqId(GenericValue value, String seqFieldName, int numericPadding, int incrementBy) Description copied from interface:Delegator
Look at existing values for a sub-entity with a sequenced secondary ID, and get the highest plus 1- Specified by:
setNextSubSeqId
in interfaceDelegator
-
encryptFieldValue
public Object encryptFieldValue(String entityName, ModelField.EncryptMethod encryptMethod, Object fieldValue) throws EntityCryptoException - Specified by:
encryptFieldValue
in interfaceDelegator
- Throws:
EntityCryptoException
-
decryptFieldValue
public Object decryptFieldValue(String entityName, ModelField.EncryptMethod encryptMethod, String encValue) throws EntityCryptoException - Specified by:
decryptFieldValue
in interfaceDelegator
- Throws:
EntityCryptoException
-
setEntityCrypto
- Specified by:
setEntityCrypto
in interfaceDelegator
-
absorbList
Absorb list.- Parameters:
lst
- the lst
-
getCache
-
createEntityAuditLogAll
protected void createEntityAuditLogAll(GenericValue value, boolean isUpdate, boolean isRemove) throws GenericEntityException Create entity audit log all.- Parameters:
value
- the valueisUpdate
- the is updateisRemove
- the is remove- Throws:
GenericEntityException
- the generic entity exception
-
createEntityAuditLogSingle
protected void createEntityAuditLogSingle(GenericValue value, ModelField mf, boolean isUpdate, boolean isRemove, Timestamp nowTimestamp) throws GenericEntityException Create entity audit log single.- Parameters:
value
- the valuemf
- the mfisUpdate
- the is updateisRemove
- the is removenowTimestamp
- the now timestamp- Throws:
GenericEntityException
- the generic entity exception
-
cloneDelegator
- Specified by:
cloneDelegator
in interfaceDelegator
-
cloneDelegator
- Specified by:
cloneDelegator
in interfaceDelegator
-
makeTestDelegator
- Specified by:
makeTestDelegator
in interfaceDelegator
-
rollback
public void rollback() -
initDistributedCacheClear
public void initDistributedCacheClear()- Specified by:
initDistributedCacheClear
in interfaceDelegator
-
createDistributedCacheClear
Create distributed cache clear distributed cache clear.- Returns:
- the distributed cache clear
-
getDistributedCacheClear
Gets distributed cache clear.- Returns:
- the distributed cache clear
-
useDistributedCacheClear
public boolean useDistributedCacheClear()Description copied from interface:Delegator
Get use of Distributed Cache Clear mechanism status- Specified by:
useDistributedCacheClear
in interfaceDelegator
- Returns:
- boolean true if this delegator uses a Distributed Cache Clear mechanism
-
getCurrentSessionIdentifier
- Specified by:
getCurrentSessionIdentifier
in interfaceDelegator
-
getCurrentUserIdentifier
- Specified by:
getCurrentUserIdentifier
in interfaceDelegator
-