Class ItemRepositoryImpl
- 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<de.digitalcollections.model.identifiable.entity.work.Item>
-
- de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.entity.work.ItemRepositoryImpl
-
- All Implemented Interfaces:
EntityRepository<de.digitalcollections.model.identifiable.entity.work.Item>,ItemRepository,IdentifiableRepository<de.digitalcollections.model.identifiable.entity.work.Item>
@Repository public class ItemRepositoryImpl extends EntityRepositoryImpl<de.digitalcollections.model.identifiable.entity.work.Item> implements ItemRepository
-
-
Field Summary
Fields Modifier and Type Field Description static StringMAPPING_PREFIXstatic StringSQL_SELECT_ALL_FIELDS_JOINSstatic StringTABLE_ALIASstatic StringTABLE_NAME-
Fields inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.IdentifiableRepositoryImpl
additionalReduceRowsBiFunction, basicReduceRowsBiFunction, fullReduceRowsBiFunction, identifiableImplClass, sqlSelectAllFields, sqlSelectAllFieldsJoins, sqlSelectReducedFields
-
Fields inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.JdbiRepositoryImpl
dbi, mappingPrefix, tableAlias, tableName
-
Fields inherited from class de.digitalcollections.cudami.server.backend.impl.database.AbstractPagingAndSortingRepositoryImpl
offsetForAlternativePaging
-
-
Constructor Summary
Constructors Constructor Description ItemRepositoryImpl(org.jdbi.v3.core.Jdbi dbi, DigitalObjectRepositoryImpl digitalObjectRepositoryImpl, WorkRepositoryImpl workRepositoryImpl, CudamiConfig cudamiConfig)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaddWork(UUID itemUuid, UUID workUuid)protected voidextendReducedIdentifiable(de.digitalcollections.model.identifiable.entity.work.Item identifiable, org.jdbi.v3.core.result.RowView rowView)Extend the reduced Identifiable by the contents of the provided RowViewde.digitalcollections.model.list.paging.PageResponse<de.digitalcollections.model.identifiable.entity.DigitalObject>findDigitalObjects(UUID itemUuid, de.digitalcollections.model.list.paging.PageRequest pageRequest)StringgetColumnName(String modelProperty)List<Locale>getLanguagesOfDigitalObjects(UUID uuid)static StringgetSqlInsertFields()static StringgetSqlInsertValues()static StringgetSqlSelectAllFields(String tableAlias, String mappingPrefix)static StringgetSqlSelectReducedFields(String tableAlias, String mappingPrefix)static StringgetSqlUpdateFieldValues()Set<de.digitalcollections.model.identifiable.entity.work.Work>getWorks(UUID itemUuid)de.digitalcollections.model.identifiable.entity.work.Itemsave(de.digitalcollections.model.identifiable.entity.work.Item item)de.digitalcollections.model.identifiable.entity.work.Itemupdate(de.digitalcollections.model.identifiable.entity.work.Item item)-
Methods inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.entity.EntityRepositoryImpl
addRelatedFileresource, getAllowedOrderByFields, getByRefId, getRandom, getRelatedFileResources, save, setRelatedFileResources, update
-
Methods inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.IdentifiableRepositoryImpl
addCrossTablePageRequestParams, addRelatedEntity, addSearchTermMappings, delete, find, find, find, find, findByLanguageAndInitial, getAllFull, getAllReduced, getByIdentifier, getByUuidAndFiltering, getIndex, getIndex, getLanguages, getRelatedEntities, getSearchTermTemplates, getSqlSelectAllFields, getSqlSelectReducedFields, getUniqueField, getWhereClause, retrieveCount, retrieveList, retrieveOne, retrieveOne, retrieveOne, setRelatedEntities, splitToArray, supportsCaseSensitivityForProperty
-
Methods inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.JdbiRepositoryImpl
addFiltering, addFiltering, addSearchTerm, count, count, escapeTermForJsonpath, getCommonSearchSql, getFilterClauses, getMappingPrefix, getTableAlias, getTableName, mapFilterExpressionsToOtherTableColumnNames, retrieveNextSortIndexForParentChildren
-
Methods inherited from class de.digitalcollections.cudami.server.backend.impl.database.AbstractPagingAndSortingRepositoryImpl
addOrderBy, addPageRequestParams, getOrderBy
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface de.digitalcollections.cudami.server.backend.api.repository.identifiable.entity.EntityRepository
getByRefId, getRandom
-
Methods inherited from interface de.digitalcollections.cudami.server.backend.api.repository.identifiable.IdentifiableRepository
addRelatedEntity, addRelatedEntity, addRelatedFileresource, addRelatedFileresource, count, delete, delete, find, find, findByLanguageAndInitial, getAllFull, getAllReduced, getByIdentifier, getByIdentifier, getByUuid, getByUuidAndFiltering, getLanguages, getRelatedEntities, getRelatedEntities, getRelatedFileResources, getRelatedFileResources, save, setRelatedEntities, setRelatedEntities, setRelatedFileResources, setRelatedFileResources, update
-
-
-
-
Field Detail
-
MAPPING_PREFIX
public static final String MAPPING_PREFIX
- See Also:
- Constant Field Values
-
TABLE_ALIAS
public static final String TABLE_ALIAS
- See Also:
- Constant Field Values
-
TABLE_NAME
public static final String TABLE_NAME
- See Also:
- Constant Field Values
-
SQL_SELECT_ALL_FIELDS_JOINS
public static final String SQL_SELECT_ALL_FIELDS_JOINS
-
-
Constructor Detail
-
ItemRepositoryImpl
@Autowired public ItemRepositoryImpl(org.jdbi.v3.core.Jdbi dbi, @Lazy DigitalObjectRepositoryImpl digitalObjectRepositoryImpl, @Lazy WorkRepositoryImpl workRepositoryImpl, CudamiConfig cudamiConfig)
-
-
Method Detail
-
getSqlInsertFields
public static String getSqlInsertFields()
-
getSqlInsertValues
public static String getSqlInsertValues()
-
getSqlSelectAllFields
public static String getSqlSelectAllFields(String tableAlias, String mappingPrefix)
-
getSqlSelectReducedFields
public static String getSqlSelectReducedFields(String tableAlias, String mappingPrefix)
-
getSqlUpdateFieldValues
public static String getSqlUpdateFieldValues()
-
addWork
public boolean addWork(UUID itemUuid, UUID workUuid)
- Specified by:
addWorkin interfaceItemRepository
-
extendReducedIdentifiable
protected void extendReducedIdentifiable(de.digitalcollections.model.identifiable.entity.work.Item identifiable, org.jdbi.v3.core.result.RowView rowView)Description copied from class:IdentifiableRepositoryImplExtend the reduced Identifiable by the contents of the provided RowView- Overrides:
extendReducedIdentifiablein classIdentifiableRepositoryImpl<de.digitalcollections.model.identifiable.entity.work.Item>- Parameters:
identifiable- the reduced IdentifiablerowView- the rowView
-
findDigitalObjects
public de.digitalcollections.model.list.paging.PageResponse<de.digitalcollections.model.identifiable.entity.DigitalObject> findDigitalObjects(UUID itemUuid, de.digitalcollections.model.list.paging.PageRequest pageRequest)
- Specified by:
findDigitalObjectsin interfaceItemRepository
-
getColumnName
public String getColumnName(String modelProperty)
- Overrides:
getColumnNamein classEntityRepositoryImpl<de.digitalcollections.model.identifiable.entity.work.Item>- 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)
-
getLanguagesOfDigitalObjects
public List<Locale> getLanguagesOfDigitalObjects(UUID uuid)
- Specified by:
getLanguagesOfDigitalObjectsin interfaceItemRepository
-
getWorks
public Set<de.digitalcollections.model.identifiable.entity.work.Work> getWorks(UUID itemUuid)
- Specified by:
getWorksin interfaceItemRepository
-
save
public de.digitalcollections.model.identifiable.entity.work.Item save(de.digitalcollections.model.identifiable.entity.work.Item item)
- Specified by:
savein interfaceIdentifiableRepository<de.digitalcollections.model.identifiable.entity.work.Item>
-
update
public de.digitalcollections.model.identifiable.entity.work.Item update(de.digitalcollections.model.identifiable.entity.work.Item item)
- Specified by:
updatein interfaceIdentifiableRepository<de.digitalcollections.model.identifiable.entity.work.Item>
-
-