Class ODataJPAQueryExtensionEntityListener
java.lang.Object
org.apache.olingo.odata2.jpa.processor.api.ODataJPATombstoneEntityListener
org.apache.olingo.odata2.jpa.processor.api.ODataJPAQueryExtensionEntityListener
Extend this class to build JPA Query object for a given OData request. The extended class can be registered as JPA
entity listeners.The implemented JPA Entity Listener classes will be called back from OData JPA Processor Library.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanauthorizeProperty(EdmEntityType entityType, EdmProperty property) booleanauthorizeProperty(EdmEntityType entityType, EdmProperty property, String method) booleancanOverrideDelete(UriInfo infoView) booleancanOverridePost(UriInfo infoView) booleancanOverridePut(UriInfo infoView) booleancanRefreshEntity(UriInfo infoView) voidcheckAuthorization(DeleteUriInfo deleteView) voidcheckAuthorization(PostUriInfo postView) voidcheckAuthorization(PutMergePatchUriInfo putView) voidcheckEntityGetAuthorization(EdmEntityType entityType) voidcheckFilter(EdmEntityType entityType, FilterExpression filter) protected ODataJPARuntimeExceptioncreateApplicationError(String message, Locale locale) execEvent(UriInfo infoView, EdmEntityType entityType, String type, Object data, Map<String, Object> customValues) generateDeltaToken(List<Object> deltas, jakarta.persistence.Query query) Implement this method to create a delta token.getCalcFieldValues(EdmEntityType entityType, Object data) getDefaultFieldValues(EdmEntityType entityType, Object data) jakarta.persistence.QuerygetQuery(DeleteUriInfo uriInfo, jakarta.persistence.EntityManager em) Override this method to build JPA Query for OData request - Delete; SELECT SINGLE with key in WHERE clausejakarta.persistence.QuerygetQuery(GetEntityCountUriInfo uriInfo, jakarta.persistence.EntityManager em) Override this method to build JPA Query for OData request - GetEntity Count; SELECT SINGLE with key in WHERE clausejakarta.persistence.QuerygetQuery(GetEntitySetCountUriInfo uriInfo, jakarta.persistence.EntityManager em) Override this method to build JPA Query for OData request - GetEntitySet Count; SELECT COUNT(*)jakarta.persistence.QuerygetQuery(GetEntitySetUriInfo uriInfo, jakarta.persistence.EntityManager em) Override this method to build JPA Query for OData request - GetEntitySet; SELECT *jakarta.persistence.QuerygetQuery(GetEntityUriInfo uriInfo, jakarta.persistence.EntityManager em) Override this method to build JPA Query for OData request - GetEntity; SELECT SINGLE with key in WHERE clausejakarta.persistence.QuerygetQuery(PutMergePatchUriInfo uriInfo, jakarta.persistence.EntityManager em) Override this method to build JPA Query for OData request - Update; SELECT SINGLE with key in WHERE clausebooleanImplement this method to indicate whether the extended class can handle OData Tombstone feature as wellbooleanoverrideDelete(UriInfo infoView, Object entity, jakarta.persistence.EntityManager em) overridePost(UriInfo infoView, Object entity, jakarta.persistence.EntityManager em) overridePut(UriInfo infoView, Object entity, jakarta.persistence.EntityManager em) voidprepareQuery(jakarta.persistence.Query query) processNew(UriInfo infoView) Methods inherited from class org.apache.olingo.odata2.jpa.processor.api.ODataJPATombstoneEntityListener
addToDelta
-
Constructor Details
-
ODataJPAQueryExtensionEntityListener
public ODataJPAQueryExtensionEntityListener()
-
-
Method Details
-
getQuery
public jakarta.persistence.Query getQuery(GetEntitySetUriInfo uriInfo, jakarta.persistence.EntityManager em) throws ODataJPARuntimeException Override this method to build JPA Query for OData request - GetEntitySet; SELECT *- Specified by:
getQueryin classODataJPATombstoneEntityListener- Parameters:
uriInfo- is a reference to OData requestem- is a reference toinvalid reference
javax.persistence.EntityManager- Returns:
- an instance of type
invalid reference
javax.persistence.Query - Throws:
ODataJPARuntimeException- Caso ocorra exceção
-
getQuery
public jakarta.persistence.Query getQuery(GetEntityUriInfo uriInfo, jakarta.persistence.EntityManager em) throws ODataJPARuntimeException Override this method to build JPA Query for OData request - GetEntity; SELECT SINGLE with key in WHERE clause- Parameters:
uriInfo- is a reference to OData requestem- is a reference toinvalid reference
javax.persistence.EntityManager- Returns:
- an instance of type
invalid reference
javax.persistence.Query - Throws:
ODataJPARuntimeException- Caso ocorra exceção
-
getQuery
public jakarta.persistence.Query getQuery(GetEntityCountUriInfo uriInfo, jakarta.persistence.EntityManager em) throws ODataJPARuntimeException Override this method to build JPA Query for OData request - GetEntity Count; SELECT SINGLE with key in WHERE clause- Parameters:
uriInfo- is a reference to OData requestem- is a reference toinvalid reference
javax.persistence.EntityManager- Returns:
- an instance of type
invalid reference
javax.persistence.Query - Throws:
ODataJPARuntimeException- Caso ocorra exceção
-
getQuery
public jakarta.persistence.Query getQuery(GetEntitySetCountUriInfo uriInfo, jakarta.persistence.EntityManager em) throws ODataJPARuntimeException Override this method to build JPA Query for OData request - GetEntitySet Count; SELECT COUNT(*)- Parameters:
uriInfo- is a reference to OData requestem- is a reference toinvalid reference
javax.persistence.EntityManager- Returns:
- an instance of type
invalid reference
javax.persistence.Query - Throws:
ODataJPARuntimeException- Caso ocorra exceção
-
getQuery
public jakarta.persistence.Query getQuery(PutMergePatchUriInfo uriInfo, jakarta.persistence.EntityManager em) throws ODataJPARuntimeException Override this method to build JPA Query for OData request - Update; SELECT SINGLE with key in WHERE clause- Parameters:
uriInfo- is a reference to OData requestem- is a reference toinvalid reference
javax.persistence.EntityManager- Returns:
- an instance of type
invalid reference
javax.persistence.Query - Throws:
ODataJPARuntimeException- Caso ocorra exceção
-
getQuery
public jakarta.persistence.Query getQuery(DeleteUriInfo uriInfo, jakarta.persistence.EntityManager em) throws ODataJPARuntimeException Override this method to build JPA Query for OData request - Delete; SELECT SINGLE with key in WHERE clause- Parameters:
uriInfo- is a reference to OData requestem- is a reference toinvalid reference
javax.persistence.EntityManager- Returns:
- an instance of type
invalid reference
javax.persistence.Query - Throws:
ODataJPARuntimeException- Caso ocorra exceção
-
generateDeltaToken
Description copied from class:ODataJPATombstoneEntityListenerImplement this method to create a delta token.- Specified by:
generateDeltaTokenin classODataJPATombstoneEntityListener- Parameters:
deltas- is list of delta JPA Entitiesquery- is an instance of typethat was used for handling delta entitesinvalid reference
javax.persistence.Query- Returns:
- a delta token of type String
-
isTombstoneSupported
public boolean isTombstoneSupported()Implement this method to indicate whether the extended class can handle OData Tombstone feature as well- Overrides:
isTombstoneSupportedin classODataJPATombstoneEntityListener- Returns:
- false by default
-
createApplicationError
-
authorizeProperty
-
authorizeProperty
-
checkAuthorization
- Throws:
ODataJPARuntimeException
-
checkAuthorization
- Throws:
ODataJPARuntimeException
-
checkAuthorization
- Throws:
ODataJPARuntimeException
-
checkEntityGetAuthorization
- Throws:
ODataJPARuntimeException
-
getDefaultFieldValues
public Map<String,Object> getDefaultFieldValues(EdmEntityType entityType, Object data) throws ODataJPARuntimeException - Throws:
ODataJPARuntimeException
-
getCalcFieldValues
public Map<String,Object> getCalcFieldValues(EdmEntityType entityType, Object data) throws ODataJPARuntimeException - Throws:
ODataJPARuntimeException
-
checkFilter
public void checkFilter(EdmEntityType entityType, FilterExpression filter) throws ODataJPARuntimeException - Throws:
ODataJPARuntimeException
-
getClientCallbacks
-
execEvent
public Object execEvent(UriInfo infoView, EdmEntityType entityType, String type, Object data, Map<String, Object> customValues) throws ODataJPARuntimeException- Throws:
ODataJPARuntimeException
-
processNew
-
overridePost
-
overridePut
-
overrideDelete
-
canOverridePut
-
canOverridePost
-
canOverrideDelete
-
canRefreshEntity
-
convert
-
prepareQuery
public void prepareQuery(jakarta.persistence.Query query)
-