Interface OfBizDelegator
- All Known Implementing Classes:
DefaultOfBizDelegator
,LockedDatabaseOfBizDelegator
,MockOfBizDelegator
,WrappingOfBizDelegator
DelegatorInterface
that does not throw GenericEntityException
.-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionint
bulkCopyColumnValuesByAnd
(String entityName, Map updateColumns, Map criteria) This can be used to perform an update on the entityName of all the rows identified by AND criteria of the fields specified by the criteria map.int
This can be used to perform an update on the entityName of all the rows identified by AND criteria of the fields specified by the criteria map.int
This can be used to perform an update on the entityName of all the rows identified by the keys with the values stored in the updateValues.org.ofbiz.core.entity.GenericValue
createValue
(String entityName, Map<String, Object> fields) Creates a new GenericValue, and persists it.void
createValueWithoutId
(String entityName, Map<String, Object> fields) Creates a new GenericValue, and persists it without trying to automatically populate the ID column.List<org.ofbiz.core.entity.GenericValue>
List<org.ofbiz.core.entity.GenericValue>
List<org.ofbiz.core.entity.GenericValue>
List<org.ofbiz.core.entity.GenericValue>
Finds GenericValue records by all of the specified fields (ie: combined using AND).List<org.ofbiz.core.entity.GenericValue>
List<org.ofbiz.core.entity.GenericValue>
findByCondition
(String entityName, org.ofbiz.core.entity.EntityCondition entityCondition, Collection<String> fieldsToSelect) Finds GenericValues by the conditions specified in the EntityCondition object with no specified order.List<org.ofbiz.core.entity.GenericValue>
findByCondition
(String entityName, org.ofbiz.core.entity.EntityCondition entityCondition, Collection<String> fieldsToSelect, List<String> orderBy) Finds GenericValues by the conditions specified in the EntityCondition object.List<org.ofbiz.core.entity.GenericValue>
findByField
(String entityName, String fieldName, Object fieldValue) Finds GenericValue records by the specified field value.List<org.ofbiz.core.entity.GenericValue>
findByField
(String entityName, String fieldName, Object fieldValue, String orderBy) Finds GenericValue records by the specified field value.org.ofbiz.core.entity.GenericValue
Find a Generic Entity by its numeric ID.List<org.ofbiz.core.entity.GenericValue>
findByLike
(String entityName, Map<String, ?> map) List<org.ofbiz.core.entity.GenericValue>
List<org.ofbiz.core.entity.GenericValue>
findByOr
(String entityName, List<? extends org.ofbiz.core.entity.EntityCondition> expressions, List<String> orderBy) org.ofbiz.core.entity.GenericValue
findByPrimaryKey
(String entityName, Long id) Find a Generic Entity by its single numeric Primary Key.org.ofbiz.core.entity.GenericValue
findByPrimaryKey
(String entityName, Map<String, ?> fields) Find a Generic Entity by its Primary Key.findListIteratorByCondition
(String entityType, org.ofbiz.core.entity.EntityCondition condition) Returns a new OfBizListIterator.findListIteratorByCondition
(String entityName, org.ofbiz.core.entity.EntityCondition whereEntityCondition, org.ofbiz.core.entity.EntityCondition havingEntityCondition, Collection<String> fieldsToSelect, List<String> orderBy, org.ofbiz.core.entity.EntityFindOptions entityFindOptions) Returns a new OfBizListIterator.long
Runs aCOUNT *
query over the given entity.long
getCountByAnd
(String entityName, Map<String, ?> fields) Runs aCOUNT *
query over the given entity with someWHERE
conditions.long
getCountByAnd
(String entityName, org.ofbiz.core.entity.EntityCondition condition) Runs aCOUNT *
query over the given entity with someWHERE
conditions.org.ofbiz.core.entity.DelegatorInterface
Returns the underlying raw Entity Engine DelegatorInterface.org.ofbiz.core.entity.model.ModelReader
Returns a model reader that can be used to retrieve all the different entitynames configured in the entitymodel.List<org.ofbiz.core.entity.GenericValue>
getRelated
(String relationName, org.ofbiz.core.entity.GenericValue gv) List<org.ofbiz.core.entity.GenericValue>
getRelated
(String relationName, org.ofbiz.core.entity.GenericValue gv, List<String> orderBy) org.ofbiz.core.entity.GenericValue
Creates an Entity in the form of a GenericValue without persisting it.org.ofbiz.core.entity.GenericValue
Creates an Entity in the form of a GenericValue without persisting it.void
Refreshes the sequencer that is used to retrieve unique IDs in the database.void
int
removeByAnd
(String s, Map<String, ?> map) int
removeByCondition
(String entityName, org.ofbiz.core.entity.EntityCondition condition) int
removeById
(String entityName, Long id) Remove the given entity from the DB.int
removeByOr
(String entityName, String entityId, List<Long> ids) This can be used to remove rows for a given entity based onentityName
and whereentityId</q
boolean
removeRelated
(String relationName, org.ofbiz.core.entity.GenericValue schemeGv) Remove all the entities related to the passed generic value via the passed relationship name.int
removeValue
(org.ofbiz.core.entity.GenericValue value) void
store
(org.ofbiz.core.entity.GenericValue gv) void
List<org.ofbiz.core.entity.GenericValue>
transform
(String entityName, org.ofbiz.core.entity.EntityCondition entityCondition, List<String> orderBy, String lockField, org.ofbiz.core.entity.Transformation transformation) Applies the given transformation to any entities matching the given condition.org.ofbiz.core.entity.GenericValue
transformOne
(String entityName, org.ofbiz.core.entity.EntityCondition entityCondition, String lockField, org.ofbiz.core.entity.Transformation transformation) Applies the given transformation to the entity matching the given condition.
-
Field Details
-
VERSION
- See Also:
-
ISSUE_LINK
- See Also:
-
ISSUE_LINK_TYPE
- See Also:
-
PROJECT_COMPONENT
- See Also:
-
-
Method Details
-
findByField
List<org.ofbiz.core.entity.GenericValue> findByField(String entityName, String fieldName, Object fieldValue) Finds GenericValue records by the specified field value.- Parameters:
entityName
- The Name of the Entity as defined in the entity XML filefieldName
- The field to do filtering by.fieldValue
- The desired value for the filtering field.- Returns:
- List of GenericValue instances that match the query
- Throws:
DataAccessException
- If an error occurs in the persistence layer.
-
findByField
List<org.ofbiz.core.entity.GenericValue> findByField(String entityName, String fieldName, Object fieldValue, String orderBy) Finds GenericValue records by the specified field value.- Parameters:
entityName
- The Name of the Entity as defined in the entity XML filefieldName
- The field to do filtering by.fieldValue
- The desired value for the filtering field.orderBy
- Single field to order by.- Returns:
- List of GenericValue instances that match the query
- Throws:
DataAccessException
- If an error occurs in the persistence layer.
-
findByAnd
List<org.ofbiz.core.entity.GenericValue> findByAnd(String entityName, Map<String, ?> fields) throws DataAccessExceptionFinds GenericValue records by all of the specified fields (ie: combined using AND).- 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:
- List of GenericValue instances that match the query
- Throws:
DataAccessException
- If an error occurs in the persistence layer.
-
findByAnd
List<org.ofbiz.core.entity.GenericValue> findByAnd(String entityName, Map<String, ?> fields, List<String> orderBy) throws DataAccessException- Throws:
DataAccessException
-
findByAnd
List<org.ofbiz.core.entity.GenericValue> findByAnd(String entityName, List<org.ofbiz.core.entity.EntityCondition> expressions) throws DataAccessException - Throws:
DataAccessException
-
findByOr
List<org.ofbiz.core.entity.GenericValue> findByOr(String entityName, List<? extends org.ofbiz.core.entity.EntityCondition> expressions, List<String> orderBy) throws DataAccessException - Throws:
DataAccessException
-
findByLike
List<org.ofbiz.core.entity.GenericValue> findByLike(String entityName, Map<String, ?> map) throws DataAccessException- Throws:
DataAccessException
-
findByLike
List<org.ofbiz.core.entity.GenericValue> findByLike(String entityName, Map<String, ?> map, List<String> orderBy) throws DataAccessException- Throws:
DataAccessException
-
removeAll
- Throws:
DataAccessException
-
removeByAnd
- Throws:
DataAccessException
-
removeByCondition
int removeByCondition(String entityName, org.ofbiz.core.entity.EntityCondition condition) throws DataAccessException - Throws:
DataAccessException
-
removeById
Remove the given entity from the DB.- Parameters:
entityName
- the entity type (ie TABLE)id
- the id of the row to delete.- Returns:
- number of rows effected by this operation
-
removeValue
- Throws:
DataAccessException
-
storeAll
- Throws:
DataAccessException
-
findAll
- Throws:
DataAccessException
-
findAll
List<org.ofbiz.core.entity.GenericValue> findAll(String s, List<String> orderBy) throws DataAccessException - Throws:
DataAccessException
-
store
- Throws:
DataAccessException
-
createValue
org.ofbiz.core.entity.GenericValue createValue(String entityName, Map<String, Object> fields) throws DataAccessExceptionCreates a new GenericValue, and persists it.If there is no "id" in the field values, one is created using the entity sequence.
- Parameters:
entityName
- the entity name.fields
- field values- Returns:
- The new GenericValue.
- Throws:
DataAccessException
- if an error occurs in the Database layer- See Also:
-
createValueWithoutId
Creates a new GenericValue, and persists it without trying to automatically populate the ID column.Use this for entities that don't have a numeric ID column.
- Parameters:
entityName
- the entity name.fields
- field values- Throws:
DataAccessException
- if an error occurs in the Database layer- See Also:
-
makeValue
Creates an Entity in the form of a GenericValue without persisting it.- Parameters:
entityName
- the entity name.- Returns:
- The new GenericValue.
- See Also:
-
makeValue
Creates an Entity in the form of a GenericValue without persisting it.- Parameters:
entityName
- the entity name.fields
- initial field values- Returns:
- The new GenericValue.
- See Also:
-
findById
Find a Generic Entity by its numeric ID.This method is a synonym for
findByPrimaryKey(String, Long)
- Parameters:
entityName
- The Name of the Entity as defined in the entity XML fileid
- The numeric "id" field value that is the primary key of this entity.- Returns:
- The GenericValue corresponding to the ID
- Throws:
DataAccessException
- DataAccessException
-
findByPrimaryKey
org.ofbiz.core.entity.GenericValue findByPrimaryKey(String entityName, Long id) throws DataAccessException Find a Generic Entity by its single numeric Primary Key.This method is a convenience for entities with a numeric primary key on single field called "id". This is the case for most JIRA entities.
- Parameters:
entityName
- The Name of the Entity as defined in the entity XML fileid
- The numeric "id" field value that is the primary key of this entity.- Returns:
- The GenericValue corresponding to the primary key
- Throws:
DataAccessException
- DataAccessException- See Also:
-
findByPrimaryKey
org.ofbiz.core.entity.GenericValue findByPrimaryKey(String entityName, Map<String, ?> fields) throws DataAccessExceptionFind a Generic Entity by its Primary Key.- Parameters:
entityName
- The Name of the Entity as defined in the entity XML filefields
- The field/value pairs of the primary key (in JIRA, mostly just a single field "id")- Returns:
- The GenericValue corresponding to the primary key
- Throws:
DataAccessException
- DataAccessException- See Also:
-
getRelated
List<org.ofbiz.core.entity.GenericValue> getRelated(String relationName, org.ofbiz.core.entity.GenericValue gv) throws DataAccessException - Throws:
DataAccessException
-
getRelated
List<org.ofbiz.core.entity.GenericValue> getRelated(String relationName, org.ofbiz.core.entity.GenericValue gv, List<String> orderBy) throws DataAccessException - Throws:
DataAccessException
-
removeRelated
Remove all the entities related to the passed generic value via the passed relationship name.- Parameters:
relationName
- the name of the relationship.schemeGv
- the gv at the start of the relationship.- Returns:
- true the database was changed, false otherwise.
-
getCount
Runs aCOUNT *
query over the given entity.Ensure that there is a view-entity defined in
entitymodel.xml
andentitygroup.xml
for the entity you are calling this method with, and that the view-entity is named correctly! The view-entity must be named the name of the normal entity with"Count"
appended. For example, for the"Issue"
entity, the view-entity must be called"IssueCount"
. Otherwise an exception will be thrown.For JIRA core developers, see
EntityEngine
'sSelect
factory for a more flexible alternative, including the ability to terminate queries with.count()
instead of.asList()
to accomplish a count without creating a special view entity for that purpose. For app developers, this can only be done directly through the lower levelDelegatorInterface
at this time.- Parameters:
entityName
- entity name- Returns:
- count
- Throws:
DataAccessException
- if data access problems occur
-
getCountByAnd
Runs aCOUNT *
query over the given entity with someWHERE
conditions.In addition to the restrictions given for
getCount(String)
, the view-entity will need to define any columns that you wish to use in the where clause.- Parameters:
entityName
- entity namecondition
- The EntityCondition object that specifies how to constrain this query- Returns:
- count
- Throws:
DataAccessException
- if data access problems occur- See Also:
-
getCountByAnd
Runs aCOUNT *
query over the given entity with someWHERE
conditions.In addition to the restrictions given for
getCount(String)
, the view-entity will need to define any columns that you wish to use in the where clause.- Parameters:
entityName
- entity namefields
- The fields of the named entity to query by with their corresponding values- Returns:
- count
- Throws:
DataAccessException
- if data access problems occur- See Also:
-
findListIteratorByCondition
OfBizListIterator findListIteratorByCondition(String entityType, org.ofbiz.core.entity.EntityCondition condition) throws DataAccessException Returns a new OfBizListIterator.IMPORTANT: the returned iterator needs to be properly closed in a
finally
block to avoid connection leaks.- Throws:
DataAccessException
-
findListIteratorByCondition
OfBizListIterator findListIteratorByCondition(String entityName, org.ofbiz.core.entity.EntityCondition whereEntityCondition, org.ofbiz.core.entity.EntityCondition havingEntityCondition, Collection<String> fieldsToSelect, List<String> orderBy, org.ofbiz.core.entity.EntityFindOptions entityFindOptions) throws DataAccessException Returns a new OfBizListIterator.IMPORTANT: the returned iterator needs to be properly closed in a
finally
block to avoid connection leaks.- Throws:
DataAccessException
-
bulkUpdateByPrimaryKey
int bulkUpdateByPrimaryKey(String entityName, Map<String, ?> updateValues, List<Long> keys) throws DataAccessExceptionThis can be used to perform an update on the entityName of all the rows identified by the keys with the values stored in the updateValues.- Parameters:
entityName
- identifies the table to perform the update on.updateValues
- is a map where the key is the fieldName and the value is the value to update the column to.keys
- is a list of Long values that represent the primary keys of the the where clause.- Returns:
- the number of rows updated
- Throws:
DataAccessException
- If an error occurs in the persistence layer.
-
bulkUpdateByAnd
int bulkUpdateByAnd(String entityName, Map<String, ?> updateValues, Map<String, throws DataAccessException?> criteria) This can be used to perform an update on the entityName of all the rows identified by AND criteria of the fields specified by the criteria map.- Parameters:
entityName
- identifies the table to perform the update on.updateValues
- is a map where the key is the fieldName and the value is the value to update the column to.criteria
- map of field to value mapping that will be used to generate the where clause of the update SQL statement. Multiple entries in the map are joined using the AND operator.- Returns:
- the number of rows updated
- Throws:
DataAccessException
- If an error occurs in the persistence layer.
-
bulkCopyColumnValuesByAnd
int bulkCopyColumnValuesByAnd(String entityName, Map updateColumns, Map criteria) throws DataAccessException This can be used to perform an update on the entityName of all the rows identified by AND criteria of the fields specified by the criteria map.- Parameters:
entityName
- table na,eupdateColumns
- map of update to - update from columnscriteria
- map of column names and their values that will create WHERE clause- Returns:
- the number of rows updated
- Throws:
DataAccessException
- If an error occurs in the persistence layer.
-
removeByOr
int removeByOr(String entityName, String entityId, List<Long> ids) throws DataAccessException, org.ofbiz.core.entity.GenericModelException This can be used to remove rows for a given entity based onentityName
and whereentityId</q
- Parameters:
entityName
- identifies the table to perform the remove on.entityId
- the Ofbiz fieldName to be used for the identifier, eg WHERE fieldName IN (...). Must be the same case as that found in entitymodel.xml.ids
- a list of entity IDs of the rows to be removed- Returns:
- number of rows removed
- Throws:
org.ofbiz.core.entity.GenericModelException
- if the given entityId is not valid for the given entityDataAccessException
- if there are problems executing/accessing the data store
-
findByCondition
List<org.ofbiz.core.entity.GenericValue> findByCondition(String entityName, org.ofbiz.core.entity.EntityCondition entityCondition, Collection<String> fieldsToSelect, List<String> orderBy) throws DataAccessException Finds GenericValues by the conditions specified in the EntityCondition object.- Parameters:
entityName
- The Name of the Entity as defined in the entity model XML fileentityCondition
- The EntityCondition object that specifies how to constrain this queryfieldsToSelect
- 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 descending- Returns:
- List of GenericValue objects representing the search results
- Throws:
DataAccessException
- If an error occurs in the persistence layer.- Since:
- v3.12
-
findByCondition
List<org.ofbiz.core.entity.GenericValue> findByCondition(String entityName, org.ofbiz.core.entity.EntityCondition entityCondition, Collection<String> fieldsToSelect) throws DataAccessException Finds GenericValues by the conditions specified in the EntityCondition object with no specified order.Convenience method for calling
findByCondition(String, EntityCondition, Collection, List)
with an empty orderBy list.- Parameters:
entityName
- The Name of the Entity as defined in the entity model XML fileentityCondition
- The EntityCondition object that specifies how to constrain this queryfieldsToSelect
- The fields of the named entity to get from the database; if empty or null all fields will be retreived- Returns:
- List of GenericValue objects representing the search results
- Throws:
DataAccessException
- If an error occurs in the persistence layer.- Since:
- v4.1
-
getModelReader
org.ofbiz.core.entity.model.ModelReader getModelReader()Returns a model reader that can be used to retrieve all the different entitynames configured in the entitymodel.- Returns:
- a
ModelReader
- Since:
- 4.4
-
refreshSequencer
void refreshSequencer()Refreshes the sequencer that is used to retrieve unique IDs in the database.- Since:
- 4.4
-
getDelegatorInterface
org.ofbiz.core.entity.DelegatorInterface getDelegatorInterface()Returns the underlying raw Entity Engine DelegatorInterface.- Returns:
- the underlying raw Entity Engine DelegatorInterface.
-
transform
List<org.ofbiz.core.entity.GenericValue> transform(String entityName, org.ofbiz.core.entity.EntityCondition entityCondition, List<String> orderBy, String lockField, org.ofbiz.core.entity.Transformation transformation) Applies the given transformation to any entities matching the given condition.- Parameters:
entityName
- the type of entity to transform (required)entityCondition
- the condition that selects the entities to transform (null means transform all)orderBy
- the order in which the entities should be selected for updating (null means no ordering)lockField
- the entity field to use for optimistic locking; the value of this field will be read between the SELECT and the UPDATE to determine whether another process has updated one of the target records in the meantime; if so, the transformation will be reapplied and another UPDATE attemptedtransformation
- the transformation to apply (required)- Returns:
- the transformed entities in the order they were selected (never null)
- Since:
- 6.2
-
transformOne
org.ofbiz.core.entity.GenericValue transformOne(String entityName, org.ofbiz.core.entity.EntityCondition entityCondition, String lockField, org.ofbiz.core.entity.Transformation transformation) Applies the given transformation to the entity matching the given condition.- Parameters:
entityName
- the type of entity to transform (required)entityCondition
- the condition that selects the entity to transform (must select one entity)lockField
- the entity field to use for optimistic locking; the value of this field will be read between the SELECT and the UPDATE to determine whether another process has updated one of the target records in the meantime; if so, the transformation will be reapplied and another UPDATE attemptedtransformation
- the transformation to apply (required)- Returns:
- the transformed entity (never null)
- Throws:
IllegalArgumentException
- if the given condition selects more than one entity- Since:
- 6.2
-