Class EntityRepositoryImpl<E extends de.digitalcollections.model.api.identifiable.entity.Entity>
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.IdentifiableRepositoryImpl<E>
de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.entity.EntityRepositoryImpl<E>
- All Implemented Interfaces:
EntityRepository<E>,IdentifiableRepository<E>
- Direct Known Subclasses:
AgentRepositoryImpl,ArticleRepositoryImpl,CollectionRepositoryImpl,CorporateBodyRepositoryImpl,DigitalObjectRepositoryImpl,GeoLocationRepositoryImpl,HumanSettlementRepositoryImpl,ItemRepositoryImpl,PersonRepositoryImpl,ProjectRepositoryImpl,TopicRepositoryImpl,WebsiteRepositoryImpl,WorkRepositoryImpl
@Repository public class EntityRepositoryImpl<E extends de.digitalcollections.model.api.identifiable.entity.Entity> extends IdentifiableRepositoryImpl<E> implements EntityRepository<E>
-
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.identifiable.IdentifiableRepositoryImpl
additionalReduceRowsBiFunction, basicReduceRowsBiFunction, fullReduceRowsBiFunction, identifiableImplClass, identifierRepository, sqlSelectAllFields, sqlSelectAllFieldsJoins, sqlSelectReducedFieldsFields inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.JdbiRepositoryImpl
dbi, mappingPrefix, tableAlias, tableName -
Constructor Summary
Constructors Modifier Constructor Description protectedEntityRepositoryImpl(org.jdbi.v3.core.Jdbi dbi, IdentifierRepository identifierRepository, java.lang.String tableName, java.lang.String tableAlias, java.lang.String mappingPrefix, java.lang.Class entityImplClass, java.lang.String sqlSelectAllFields, java.lang.String sqlSelectReducedFields, java.lang.String sqlInsertFields, java.lang.String sqlInsertValues, java.lang.String sqlUpdateFieldValues)protectedEntityRepositoryImpl(org.jdbi.v3.core.Jdbi dbi, IdentifierRepository identifierRepository, java.lang.String tableName, java.lang.String tableAlias, java.lang.String mappingPrefix, java.lang.Class entityImplClass, java.lang.String sqlSelectAllFields, java.lang.String sqlSelectReducedFields, java.lang.String sqlInsertFields, java.lang.String sqlInsertValues, java.lang.String sqlUpdateFieldValues, java.lang.String sqlSelectAllFieldsJoins)protectedEntityRepositoryImpl(org.jdbi.v3.core.Jdbi dbi, IdentifierRepository identifierRepository, java.lang.String tableName, java.lang.String tableAlias, java.lang.String mappingPrefix, java.lang.Class entityImplClass, java.lang.String sqlSelectAllFields, java.lang.String sqlSelectReducedFields, java.lang.String sqlInsertFields, java.lang.String sqlInsertValues, java.lang.String sqlUpdateFieldValues, java.lang.String sqlSelectAllFieldsJoins, java.util.function.BiFunction<java.util.Map<java.util.UUID,E>,org.jdbi.v3.core.result.RowView,java.util.Map<java.util.UUID,E>> additionalReduceRowsBiFunction) -
Method Summary
Modifier and Type Method Description voidaddRelatedFileresource(java.util.UUID entityUuid, java.util.UUID fileResourceUuid)EfindOneByRefId(long refId)java.util.List<E>findRandom(int count)protected java.util.List<java.lang.String>getAllowedOrderByFields()protected java.lang.StringgetColumnName(java.lang.String modelProperty)java.util.List<de.digitalcollections.model.api.identifiable.resource.FileResource>getRelatedFileResources(java.util.UUID entityUuid)static java.lang.StringgetSqlInsertFields()static java.lang.StringgetSqlInsertValues()static java.lang.StringgetSqlSelectAllFields(java.lang.String tableAlias, java.lang.String mappingPrefix)static java.lang.StringgetSqlSelectReducedFields(java.lang.String tableAlias, java.lang.String mappingPrefix)static java.lang.StringgetSqlUpdateFieldValues()Esave(E entity, java.util.Map<java.lang.String,java.lang.Object> bindings)java.util.List<de.digitalcollections.model.api.identifiable.resource.FileResource>saveRelatedFileResources(java.util.UUID entityUuid, java.util.List<de.digitalcollections.model.api.identifiable.resource.FileResource> fileResources)Eupdate(E entity, java.util.Map<java.lang.String,java.lang.Object> bindings)Methods inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.IdentifiableRepositoryImpl
delete, deleteIdentifiers, find, find, find, find, findAllFull, findAllReduced, findByLanguageAndInitial, findOne, findOne, getIndex, getSqlSelectAllFields, getSqlSelectReducedFields, retrieveCount, retrieveList, retrieveNextSortIndexForParentChildren, retrieveOne, saveIdentifiersMethods 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.EntityRepository
addRelatedFileresource, getRelatedFileResources, saveRelatedFileResourcesMethods inherited from interface de.digitalcollections.cudami.server.backend.api.repository.identifiable.IdentifiableRepository
count, delete, delete, deleteIdentifiers, find, find, find, findAllFull, findAllReduced, findByLanguageAndInitial, findOne, findOne, findOne, findOneByIdentifier, save, update
-
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
-
EntityRepositoryImpl
protected EntityRepositoryImpl(org.jdbi.v3.core.Jdbi dbi, IdentifierRepository identifierRepository, java.lang.String tableName, java.lang.String tableAlias, java.lang.String mappingPrefix, java.lang.Class entityImplClass, java.lang.String sqlSelectAllFields, java.lang.String sqlSelectReducedFields, java.lang.String sqlInsertFields, java.lang.String sqlInsertValues, java.lang.String sqlUpdateFieldValues) -
EntityRepositoryImpl
protected EntityRepositoryImpl(org.jdbi.v3.core.Jdbi dbi, IdentifierRepository identifierRepository, java.lang.String tableName, java.lang.String tableAlias, java.lang.String mappingPrefix, java.lang.Class entityImplClass, java.lang.String sqlSelectAllFields, java.lang.String sqlSelectReducedFields, java.lang.String sqlInsertFields, java.lang.String sqlInsertValues, java.lang.String sqlUpdateFieldValues, java.lang.String sqlSelectAllFieldsJoins) -
EntityRepositoryImpl
protected EntityRepositoryImpl(org.jdbi.v3.core.Jdbi dbi, IdentifierRepository identifierRepository, java.lang.String tableName, java.lang.String tableAlias, java.lang.String mappingPrefix, java.lang.Class entityImplClass, java.lang.String sqlSelectAllFields, java.lang.String sqlSelectReducedFields, java.lang.String sqlInsertFields, java.lang.String sqlInsertValues, java.lang.String sqlUpdateFieldValues, java.lang.String sqlSelectAllFieldsJoins, java.util.function.BiFunction<java.util.Map<java.util.UUID,E>,org.jdbi.v3.core.result.RowView,java.util.Map<java.util.UUID,E>> additionalReduceRowsBiFunction)
-
-
Method Details
-
getSqlInsertFields
public static java.lang.String getSqlInsertFields() -
getSqlInsertValues
public static java.lang.String getSqlInsertValues() -
getSqlSelectAllFields
public static java.lang.String getSqlSelectAllFields(java.lang.String tableAlias, java.lang.String mappingPrefix) -
getSqlSelectReducedFields
public static java.lang.String getSqlSelectReducedFields(java.lang.String tableAlias, java.lang.String mappingPrefix) -
getSqlUpdateFieldValues
public static java.lang.String getSqlUpdateFieldValues() -
addRelatedFileresource
public void addRelatedFileresource(java.util.UUID entityUuid, java.util.UUID fileResourceUuid)- Specified by:
addRelatedFileresourcein interfaceEntityRepository<E extends de.digitalcollections.model.api.identifiable.entity.Entity>
-
findOneByRefId
- Specified by:
findOneByRefIdin interfaceEntityRepository<E extends de.digitalcollections.model.api.identifiable.entity.Entity>
-
findRandom
- Specified by:
findRandomin interfaceEntityRepository<E extends de.digitalcollections.model.api.identifiable.entity.Entity>
-
getAllowedOrderByFields
protected java.util.List<java.lang.String> getAllowedOrderByFields()- Overrides:
getAllowedOrderByFieldsin classIdentifiableRepositoryImpl<E extends de.digitalcollections.model.api.identifiable.entity.Entity>- 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)- Overrides:
getColumnNamein classIdentifiableRepositoryImpl<E extends de.digitalcollections.model.api.identifiable.entity.Entity>- 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)
-
getRelatedFileResources
public java.util.List<de.digitalcollections.model.api.identifiable.resource.FileResource> getRelatedFileResources(java.util.UUID entityUuid)- Specified by:
getRelatedFileResourcesin interfaceEntityRepository<E extends de.digitalcollections.model.api.identifiable.entity.Entity>
-
save
- Specified by:
savein interfaceIdentifiableRepository<E extends de.digitalcollections.model.api.identifiable.entity.Entity>- Overrides:
savein classIdentifiableRepositoryImpl<E extends de.digitalcollections.model.api.identifiable.entity.Entity>
-
saveRelatedFileResources
public java.util.List<de.digitalcollections.model.api.identifiable.resource.FileResource> saveRelatedFileResources(java.util.UUID entityUuid, java.util.List<de.digitalcollections.model.api.identifiable.resource.FileResource> fileResources)- Specified by:
saveRelatedFileResourcesin interfaceEntityRepository<E extends de.digitalcollections.model.api.identifiable.entity.Entity>
-
update
- Specified by:
updatein interfaceIdentifiableRepository<E extends de.digitalcollections.model.api.identifiable.entity.Entity>- Overrides:
updatein classIdentifiableRepositoryImpl<E extends de.digitalcollections.model.api.identifiable.entity.Entity>
-