Class EntityRelationRepositoryImpl
java.lang.Object
de.digitalcollections.cudami.server.backend.impl.database.AbstractPagingAndSortingRepositoryImpl
de.digitalcollections.cudami.server.backend.impl.jdbi.JdbiRepositoryImpl
de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.entity.relation.EntityRelationRepositoryImpl
- All Implemented Interfaces:
EntityRelationRepository
@Repository public class EntityRelationRepositoryImpl extends JdbiRepositoryImpl implements EntityRelationRepository
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringMAPPING_PREFIXstatic java.lang.StringTABLE_ALIASstatic java.lang.StringTABLE_NAMEFields inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.JdbiRepositoryImpl
dbi, mappingPrefix, tableAlias, tableName -
Constructor Summary
Constructors Constructor Description EntityRelationRepositoryImpl(javax.sql.DataSource dataSource, org.jdbi.v3.core.Jdbi dbi, EntityRepositoryImpl<de.digitalcollections.model.api.identifiable.entity.Entity> entityRepositoryImpl) -
Method Summary
Modifier and Type Method Description voidaddRelation(java.util.UUID subjectEntityUuid, java.lang.String predicate, java.util.UUID objectEntityUuid)voiddeleteBySubject(java.util.UUID subjectEntityUuid)de.digitalcollections.model.api.paging.PageResponse<de.digitalcollections.model.api.identifiable.entity.relation.EntityRelation>find(de.digitalcollections.model.api.paging.PageRequest pageRequest)java.util.List<de.digitalcollections.model.api.identifiable.entity.relation.EntityRelation>findBySubject(de.digitalcollections.model.api.identifiable.entity.Entity subjectEntity)java.util.List<de.digitalcollections.model.api.identifiable.entity.relation.EntityRelation>findBySubject(java.util.UUID subjectEntityUuid)protected java.util.List<java.lang.String>getAllowedOrderByFields()protected java.lang.StringgetColumnName(java.lang.String modelProperty)java.util.List<de.digitalcollections.model.api.identifiable.entity.relation.EntityRelation>save(java.util.List<de.digitalcollections.model.api.identifiable.entity.relation.EntityRelation> entityRelations)voidsave(java.util.UUID subjectEntityUuid, java.lang.String predicate, java.util.UUID objectEntityUuid)Methods inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.JdbiRepositoryImpl
count, getMappingPrefix, getTableAlias, getTableNameMethods inherited from class de.digitalcollections.cudami.server.backend.impl.database.AbstractPagingAndSortingRepositoryImpl
addFiltering, addFiltering, addLimit, addOffset, addOrderBy, addPageRequestParams, convertToSqlString, getFilterClauses, getOrderBy, getWhereClauseMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface de.digitalcollections.cudami.server.backend.api.repository.identifiable.entity.relation.EntityRelationRepository
addRelation, deleteBySubject, save
-
Field Details
-
MAPPING_PREFIX
public static final java.lang.String MAPPING_PREFIX- See Also:
- Constant Field Values
-
TABLE_ALIAS
public static final java.lang.String TABLE_ALIAS- See Also:
- Constant Field Values
-
TABLE_NAME
public static final java.lang.String TABLE_NAME- See Also:
- Constant Field Values
-
-
Constructor Details
-
EntityRelationRepositoryImpl
@Autowired public EntityRelationRepositoryImpl(javax.sql.DataSource dataSource, org.jdbi.v3.core.Jdbi dbi, @Qualifier("entityRepositoryImpl") EntityRepositoryImpl<de.digitalcollections.model.api.identifiable.entity.Entity> entityRepositoryImpl)
-
-
Method Details
-
addRelation
public void addRelation(java.util.UUID subjectEntityUuid, java.lang.String predicate, java.util.UUID objectEntityUuid)- Specified by:
addRelationin interfaceEntityRelationRepository
-
deleteBySubject
public void deleteBySubject(java.util.UUID subjectEntityUuid)- Specified by:
deleteBySubjectin interfaceEntityRelationRepository
-
find
public de.digitalcollections.model.api.paging.PageResponse<de.digitalcollections.model.api.identifiable.entity.relation.EntityRelation> find(de.digitalcollections.model.api.paging.PageRequest pageRequest)- Specified by:
findin interfaceEntityRelationRepository
-
findBySubject
public java.util.List<de.digitalcollections.model.api.identifiable.entity.relation.EntityRelation> findBySubject(java.util.UUID subjectEntityUuid)- Specified by:
findBySubjectin interfaceEntityRelationRepository
-
findBySubject
public java.util.List<de.digitalcollections.model.api.identifiable.entity.relation.EntityRelation> findBySubject(de.digitalcollections.model.api.identifiable.entity.Entity subjectEntity)- Specified by:
findBySubjectin interfaceEntityRelationRepository
-
getAllowedOrderByFields
protected java.util.List<java.lang.String> getAllowedOrderByFields()- Specified by:
getAllowedOrderByFieldsin classAbstractPagingAndSortingRepositoryImpl- Returns:
- model properties names that are applicable for sorting, will be mapped to database column names using @see #getColumnName
-
getColumnName
protected java.lang.String getColumnName(java.lang.String modelProperty)- Specified by:
getColumnNamein classAbstractPagingAndSortingRepositoryImpl- Parameters:
modelProperty- name of model property passed as String, e.g. "lastModified"- Returns:
- full qualified column name as used in sql queries ("last_modified" or e.g. "w.last_modified" if prefix used in queries)
-
save
public void save(java.util.UUID subjectEntityUuid, java.lang.String predicate, java.util.UUID objectEntityUuid)- Specified by:
savein interfaceEntityRelationRepository
-
save
public java.util.List<de.digitalcollections.model.api.identifiable.entity.relation.EntityRelation> save(java.util.List<de.digitalcollections.model.api.identifiable.entity.relation.EntityRelation> entityRelations)- Specified by:
savein interfaceEntityRelationRepository
-