Class HeadwordRepositoryImpl
- 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.semantic.HeadwordRepositoryImpl
-
- All Implemented Interfaces:
HeadwordRepository
@Repository public class HeadwordRepositoryImpl extends JdbiRepositoryImpl implements HeadwordRepository
-
-
Field Summary
Fields Modifier and Type Field Description static StringMAPPING_PREFIXstatic StringSQL_FULL_FIELDS_HWstatic StringSQL_INSERT_FIELDSstatic StringSQL_INSERT_VALUESstatic StringSQL_REDUCED_FIELDS_HWstatic StringTABLE_ALIASstatic StringTABLE_NAME-
Fields inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.JdbiRepositoryImpl
dbi, mappingPrefix, tableAlias, tableName
-
-
Constructor Summary
Constructors Constructor Description HeadwordRepositoryImpl(org.jdbi.v3.core.Jdbi dbi)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddRelatedEntity(UUID headwordUuid, UUID entityUuid)voidaddRelatedFileresource(UUID headwordUuid, UUID fileResourceUuid)voiddelete(String label, Locale locale)booleandelete(List<UUID> uuids)voiddelete(UUID uuid)voiddeleteRelatedEntities(UUID headwordUuid)voiddeleteRelatedFileresources(UUID headwordUuid)de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.semantic.Headword>find(de.digitalcollections.model.paging.PageRequest pageRequest)protected de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.semantic.Headword>find(de.digitalcollections.model.paging.PageRequest pageRequest, String commonSql, Map<String,Object> argumentMappings)de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.semantic.Headword>find(de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)protected de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.semantic.Headword>find(de.digitalcollections.model.paging.SearchPageRequest searchPageRequest, String commonSql, Map<String,Object> argumentMappings)List<de.digitalcollections.model.semantic.Headword>find(String label, Locale locale)List<de.digitalcollections.model.semantic.Headword>findAll()List<de.digitalcollections.model.semantic.Headword>findByLabel(String label)de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.semantic.Headword>findByLanguageAndInitial(de.digitalcollections.model.paging.PageRequest pageRequest, String language, String initial)de.digitalcollections.model.semantic.HeadwordfindOne(UUID uuid, de.digitalcollections.model.filter.Filtering filtering)de.digitalcollections.model.semantic.HeadwordfindOneByLabelAndLocale(String label, Locale locale)List<de.digitalcollections.model.semantic.Headword>findRandom(int count)protected List<String>getAllowedOrderByFields()protected StringgetColumnName(String modelProperty)List<Locale>getLanguages()List<de.digitalcollections.model.identifiable.entity.Entity>getRelatedEntities(UUID headwordUuid)de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.entity.Entity>getRelatedEntities(UUID headwordUuid, de.digitalcollections.model.paging.PageRequest pageRequest)List<de.digitalcollections.model.identifiable.resource.FileResource>getRelatedFileResources(UUID headwordUuid)de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.resource.FileResource>getRelatedFileResources(UUID headwordUuid, de.digitalcollections.model.paging.PageRequest pageRequest)longretrieveCount(StringBuilder sqlCount, Map<String,Object> argumentMappings)List<de.digitalcollections.model.semantic.Headword>retrieveList(String fieldsSql, StringBuilder innerQuery, String orderBy)de.digitalcollections.model.semantic.Headwordsave(de.digitalcollections.model.semantic.Headword headword)List<de.digitalcollections.model.identifiable.entity.Entity>saveRelatedEntities(UUID headwordUuid, List<de.digitalcollections.model.identifiable.entity.Entity> entities)List<de.digitalcollections.model.identifiable.resource.FileResource>saveRelatedFileResources(UUID headwordUuid, List<de.digitalcollections.model.identifiable.resource.FileResource> fileResources)de.digitalcollections.model.semantic.Headwordupdate(de.digitalcollections.model.semantic.Headword headword)-
Methods inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.JdbiRepositoryImpl
addFiltering, addFiltering, count, getFilterClauses, getMappingPrefix, getTableAlias, getTableName, getWhereClause, retrieveNextSortIndexForParentChildren
-
Methods inherited from class de.digitalcollections.cudami.server.backend.impl.database.AbstractPagingAndSortingRepositoryImpl
addLimit, addOffset, 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.semantic.HeadwordRepository
count, find, findOne
-
-
-
-
Field Detail
-
MAPPING_PREFIX
public static final String MAPPING_PREFIX
- See Also:
- Constant Field Values
-
SQL_INSERT_FIELDS
public static final String SQL_INSERT_FIELDS
- See Also:
- Constant Field Values
-
SQL_INSERT_VALUES
public static final String SQL_INSERT_VALUES
- See Also:
- Constant Field Values
-
SQL_REDUCED_FIELDS_HW
public static final String SQL_REDUCED_FIELDS_HW
- See Also:
- Constant Field Values
-
SQL_FULL_FIELDS_HW
public static final String SQL_FULL_FIELDS_HW
- 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
-
-
Method Detail
-
addRelatedEntity
public void addRelatedEntity(UUID headwordUuid, UUID entityUuid)
- Specified by:
addRelatedEntityin interfaceHeadwordRepository
-
addRelatedFileresource
public void addRelatedFileresource(UUID headwordUuid, UUID fileResourceUuid)
- Specified by:
addRelatedFileresourcein interfaceHeadwordRepository
-
delete
public void delete(String label, Locale locale)
- Specified by:
deletein interfaceHeadwordRepository
-
delete
public void delete(UUID uuid)
- Specified by:
deletein interfaceHeadwordRepository
-
delete
public boolean delete(List<UUID> uuids)
- Specified by:
deletein interfaceHeadwordRepository
-
deleteRelatedEntities
public void deleteRelatedEntities(UUID headwordUuid)
- Specified by:
deleteRelatedEntitiesin interfaceHeadwordRepository
-
deleteRelatedFileresources
public void deleteRelatedFileresources(UUID headwordUuid)
- Specified by:
deleteRelatedFileresourcesin interfaceHeadwordRepository
-
find
public de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.semantic.Headword> find(de.digitalcollections.model.paging.PageRequest pageRequest)
- Specified by:
findin interfaceHeadwordRepository
-
find
protected de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.semantic.Headword> find(de.digitalcollections.model.paging.PageRequest pageRequest, String commonSql, Map<String,Object> argumentMappings)
-
find
public de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.semantic.Headword> find(de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)
- Specified by:
findin interfaceHeadwordRepository
-
find
protected de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.semantic.Headword> find(de.digitalcollections.model.paging.SearchPageRequest searchPageRequest, String commonSql, Map<String,Object> argumentMappings)
-
find
public List<de.digitalcollections.model.semantic.Headword> find(String label, Locale locale)
- Specified by:
findin interfaceHeadwordRepository
-
findAll
public List<de.digitalcollections.model.semantic.Headword> findAll()
- Specified by:
findAllin interfaceHeadwordRepository
-
findByLabel
public List<de.digitalcollections.model.semantic.Headword> findByLabel(String label)
- Specified by:
findByLabelin interfaceHeadwordRepository
-
findByLanguageAndInitial
public de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.semantic.Headword> findByLanguageAndInitial(de.digitalcollections.model.paging.PageRequest pageRequest, String language, String initial)- Specified by:
findByLanguageAndInitialin interfaceHeadwordRepository
-
findOne
public de.digitalcollections.model.semantic.Headword findOne(UUID uuid, de.digitalcollections.model.filter.Filtering filtering)
- Specified by:
findOnein interfaceHeadwordRepository
-
findOneByLabelAndLocale
public de.digitalcollections.model.semantic.Headword findOneByLabelAndLocale(String label, Locale locale)
- Specified by:
findOneByLabelAndLocalein interfaceHeadwordRepository
-
findRandom
public List<de.digitalcollections.model.semantic.Headword> findRandom(int count)
- Specified by:
findRandomin interfaceHeadwordRepository
-
getAllowedOrderByFields
protected List<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 String getColumnName(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)
-
getLanguages
public List<Locale> getLanguages()
- Specified by:
getLanguagesin interfaceHeadwordRepository
-
getRelatedEntities
public List<de.digitalcollections.model.identifiable.entity.Entity> getRelatedEntities(UUID headwordUuid)
- Specified by:
getRelatedEntitiesin interfaceHeadwordRepository
-
getRelatedEntities
public de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.entity.Entity> getRelatedEntities(UUID headwordUuid, de.digitalcollections.model.paging.PageRequest pageRequest)
- Specified by:
getRelatedEntitiesin interfaceHeadwordRepository
-
getRelatedFileResources
public List<de.digitalcollections.model.identifiable.resource.FileResource> getRelatedFileResources(UUID headwordUuid)
- Specified by:
getRelatedFileResourcesin interfaceHeadwordRepository
-
getRelatedFileResources
public de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.resource.FileResource> getRelatedFileResources(UUID headwordUuid, de.digitalcollections.model.paging.PageRequest pageRequest)
- Specified by:
getRelatedFileResourcesin interfaceHeadwordRepository
-
retrieveCount
public long retrieveCount(StringBuilder sqlCount, Map<String,Object> argumentMappings)
-
retrieveList
public List<de.digitalcollections.model.semantic.Headword> retrieveList(String fieldsSql, StringBuilder innerQuery, String orderBy)
-
save
public de.digitalcollections.model.semantic.Headword save(de.digitalcollections.model.semantic.Headword headword)
- Specified by:
savein interfaceHeadwordRepository
-
saveRelatedEntities
public List<de.digitalcollections.model.identifiable.entity.Entity> saveRelatedEntities(UUID headwordUuid, List<de.digitalcollections.model.identifiable.entity.Entity> entities)
- Specified by:
saveRelatedEntitiesin interfaceHeadwordRepository
-
saveRelatedFileResources
public List<de.digitalcollections.model.identifiable.resource.FileResource> saveRelatedFileResources(UUID headwordUuid, List<de.digitalcollections.model.identifiable.resource.FileResource> fileResources)
- Specified by:
saveRelatedFileResourcesin interfaceHeadwordRepository
-
update
public de.digitalcollections.model.semantic.Headword update(de.digitalcollections.model.semantic.Headword headword)
- Specified by:
updatein interfaceHeadwordRepository
-
-