Class EntityRepositoryImpl<E extends de.digitalcollections.model.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.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.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.identifiable.resource.FileResource>saveRelatedFileResources(java.util.UUID entityUuid, java.util.List<de.digitalcollections.model.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
addRelatedEntity, delete, deleteIdentifiers, escapeTermForJsonpath, find, find, find, find, findAllFull, findAllReduced, findByLanguageAndInitial, findOne, findOne, getCommonSearchSql, getIndex, getIndex, getLanguages, getRelatedEntities, getSqlSelectAllFields, getSqlSelectReducedFields, retrieveCount, retrieveList, retrieveNextSortIndexForParentChildren, retrieveOne, saveIdentifiers, saveRelatedEntitiesMethods 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.IdentifiableRepository
addRelatedEntity, addRelatedEntity, addRelatedFileresource, count, delete, delete, deleteIdentifiers, find, find, find, findAllFull, findAllReduced, findByLanguageAndInitial, findOne, findOne, findOne, findOneByIdentifier, getLanguages, getRelatedEntities, getRelatedEntities, getRelatedFileResources, save, saveRelatedEntities, saveRelatedEntities, saveRelatedFileResources, 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 interfaceIdentifiableRepository<E extends de.digitalcollections.model.identifiable.entity.Entity>- Overrides:
addRelatedFileresourcein classIdentifiableRepositoryImpl<E extends de.digitalcollections.model.identifiable.entity.Entity>
-
findOneByRefId
- Specified by:
findOneByRefIdin interfaceEntityRepository<E extends de.digitalcollections.model.identifiable.entity.Entity>
-
findRandom
- Specified by:
findRandomin interfaceEntityRepository<E extends de.digitalcollections.model.identifiable.entity.Entity>
-
getAllowedOrderByFields
protected java.util.List<java.lang.String> getAllowedOrderByFields()- Overrides:
getAllowedOrderByFieldsin classIdentifiableRepositoryImpl<E extends de.digitalcollections.model.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.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.identifiable.resource.FileResource> getRelatedFileResources(java.util.UUID entityUuid)- Specified by:
getRelatedFileResourcesin interfaceIdentifiableRepository<E extends de.digitalcollections.model.identifiable.entity.Entity>- Overrides:
getRelatedFileResourcesin classIdentifiableRepositoryImpl<E extends de.digitalcollections.model.identifiable.entity.Entity>
-
save
- Specified by:
savein interfaceIdentifiableRepository<E extends de.digitalcollections.model.identifiable.entity.Entity>- Overrides:
savein classIdentifiableRepositoryImpl<E extends de.digitalcollections.model.identifiable.entity.Entity>
-
saveRelatedFileResources
public java.util.List<de.digitalcollections.model.identifiable.resource.FileResource> saveRelatedFileResources(java.util.UUID entityUuid, java.util.List<de.digitalcollections.model.identifiable.resource.FileResource> fileResources)- Specified by:
saveRelatedFileResourcesin interfaceIdentifiableRepository<E extends de.digitalcollections.model.identifiable.entity.Entity>- Overrides:
saveRelatedFileResourcesin classIdentifiableRepositoryImpl<E extends de.digitalcollections.model.identifiable.entity.Entity>
-
update
- Specified by:
updatein interfaceIdentifiableRepository<E extends de.digitalcollections.model.identifiable.entity.Entity>- Overrides:
updatein classIdentifiableRepositoryImpl<E extends de.digitalcollections.model.identifiable.entity.Entity>
-