Class WebpageRepositoryImpl
- 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<de.digitalcollections.model.identifiable.web.Webpage>
-
- de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.web.WebpageRepositoryImpl
-
- All Implemented Interfaces:
IdentifiableRepository<de.digitalcollections.model.identifiable.web.Webpage>,NodeRepository<de.digitalcollections.model.identifiable.web.Webpage>,WebpageRepository
@Repository public class WebpageRepositoryImpl extends IdentifiableRepositoryImpl<de.digitalcollections.model.identifiable.web.Webpage> implements WebpageRepository
-
-
Field Summary
Fields Modifier and Type Field Description static StringMAPPING_PREFIXstatic 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
-
-
Constructor Summary
Constructors Constructor Description WebpageRepositoryImpl(org.jdbi.v3.core.Jdbi dbi)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaddChildren(UUID parentUuid, List<UUID> childrenUuids)de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.identifiable.web.Webpage>findChildren(UUID uuid, de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)de.digitalcollections.model.identifiable.web.WebpagefindOne(de.digitalcollections.model.identifiable.Identifier identifier)de.digitalcollections.model.identifiable.web.WebpagefindOne(UUID uuid, de.digitalcollections.model.filter.Filtering filtering)de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.identifiable.web.Webpage>findRootNodes(de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)protected List<String>getAllowedOrderByFields()de.digitalcollections.model.view.BreadcrumbNavigationgetBreadcrumbNavigation(UUID uuid)List<de.digitalcollections.model.identifiable.web.Webpage>getChildren(UUID uuid)de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.web.Webpage>getChildren(UUID uuid, de.digitalcollections.model.paging.PageRequest pageRequest)protected StringgetColumnName(String modelProperty)de.digitalcollections.model.identifiable.web.WebpagegetParent(UUID uuid)List<de.digitalcollections.model.identifiable.web.Webpage>getParents(UUID uuid)de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.web.Webpage>getRootNodes(de.digitalcollections.model.paging.PageRequest pageRequest)List<Locale>getRootNodesLanguages()static StringgetSqlInsertFields()static StringgetSqlInsertValues()static StringgetSqlSelectAllFields(String tableAlias, String mappingPrefix)static StringgetSqlSelectReducedFields(String tableAlias, String mappingPrefix)static StringgetSqlUpdateFieldValues()de.digitalcollections.model.identifiable.entity.WebsitegetWebsite(UUID rootWebpageUuid)booleanremoveChild(UUID parentUuid, UUID childUuid)de.digitalcollections.model.identifiable.web.Webpagesave(de.digitalcollections.model.identifiable.web.Webpage webpage)de.digitalcollections.model.identifiable.web.WebpagesaveWithParent(UUID childWebpageUuid, UUID parentWebpageUuid)de.digitalcollections.model.identifiable.web.WebpagesaveWithParentWebsite(UUID webpageUuid, UUID parentWebsiteUuid)de.digitalcollections.model.identifiable.web.Webpageupdate(de.digitalcollections.model.identifiable.web.Webpage webpage)booleanupdateChildrenOrder(UUID parentUuid, List<de.digitalcollections.model.identifiable.web.Webpage> children)-
Methods inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.IdentifiableRepositoryImpl
addRelatedEntity, addRelatedFileresource, delete, escapeTermForJsonpath, find, find, find, find, findAllFull, findAllReduced, findByLanguageAndInitial, getCommonSearchSql, getIndex, getIndex, getLanguages, getRelatedEntities, getRelatedFileResources, getSearchTermTemplates, getSqlSelectAllFields, getSqlSelectReducedFields, retrieveCount, retrieveList, retrieveOne, retrieveOne, save, saveRelatedEntities, saveRelatedFileResources, update
-
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.identifiable.IdentifiableRepository
addRelatedEntity, addRelatedEntity, addRelatedFileresource, addRelatedFileresource, count, delete, delete, find, find, find, findAllFull, findAllReduced, findByLanguageAndInitial, findOne, findOneByIdentifier, getLanguages, getRelatedEntities, getRelatedEntities, getRelatedFileResources, getRelatedFileResources, save, saveRelatedEntities, saveRelatedEntities, saveRelatedFileResources, saveRelatedFileResources, update
-
Methods inherited from interface de.digitalcollections.cudami.server.backend.api.repository.identifiable.NodeRepository
addChild, addChild, addChildren, getChildren, removeChild
-
Methods inherited from interface de.digitalcollections.cudami.server.backend.api.repository.identifiable.web.WebpageRepository
updateChildrenOrder
-
-
-
-
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
-
-
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()
-
addChildren
public boolean addChildren(UUID parentUuid, List<UUID> childrenUuids)
- Specified by:
addChildrenin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
findChildren
public de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.identifiable.web.Webpage> findChildren(UUID uuid, de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)
- Specified by:
findChildrenin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
findOne
public de.digitalcollections.model.identifiable.web.Webpage findOne(UUID uuid, de.digitalcollections.model.filter.Filtering filtering)
- Specified by:
findOnein interfaceIdentifiableRepository<de.digitalcollections.model.identifiable.web.Webpage>- Overrides:
findOnein classIdentifiableRepositoryImpl<de.digitalcollections.model.identifiable.web.Webpage>
-
findOne
public de.digitalcollections.model.identifiable.web.Webpage findOne(de.digitalcollections.model.identifiable.Identifier identifier)
- Specified by:
findOnein interfaceIdentifiableRepository<de.digitalcollections.model.identifiable.web.Webpage>- Overrides:
findOnein classIdentifiableRepositoryImpl<de.digitalcollections.model.identifiable.web.Webpage>
-
getAllowedOrderByFields
protected List<String> getAllowedOrderByFields()
- Overrides:
getAllowedOrderByFieldsin classIdentifiableRepositoryImpl<de.digitalcollections.model.identifiable.web.Webpage>- Returns:
- model properties names that are applicable for sorting, will be mapped to database column names using @see #getColumnName
-
getBreadcrumbNavigation
public de.digitalcollections.model.view.BreadcrumbNavigation getBreadcrumbNavigation(UUID uuid)
- Specified by:
getBreadcrumbNavigationin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
getChildren
public List<de.digitalcollections.model.identifiable.web.Webpage> getChildren(UUID uuid)
- Specified by:
getChildrenin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
getChildren
public de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.web.Webpage> getChildren(UUID uuid, de.digitalcollections.model.paging.PageRequest pageRequest)
- Specified by:
getChildrenin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
getColumnName
protected String getColumnName(String modelProperty)
- Overrides:
getColumnNamein classIdentifiableRepositoryImpl<de.digitalcollections.model.identifiable.web.Webpage>- 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)
-
getParent
public de.digitalcollections.model.identifiable.web.Webpage getParent(UUID uuid)
- Specified by:
getParentin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
getParents
public List<de.digitalcollections.model.identifiable.web.Webpage> getParents(UUID uuid)
- Specified by:
getParentsin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
getRootNodes
public de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.web.Webpage> getRootNodes(de.digitalcollections.model.paging.PageRequest pageRequest)
- Specified by:
getRootNodesin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
findRootNodes
public de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.identifiable.web.Webpage> findRootNodes(de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)
- Specified by:
findRootNodesin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
getRootNodesLanguages
public List<Locale> getRootNodesLanguages()
- Specified by:
getRootNodesLanguagesin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
getWebsite
public de.digitalcollections.model.identifiable.entity.Website getWebsite(UUID rootWebpageUuid)
- Specified by:
getWebsitein interfaceWebpageRepository
-
removeChild
public boolean removeChild(UUID parentUuid, UUID childUuid)
- Specified by:
removeChildin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
save
public de.digitalcollections.model.identifiable.web.Webpage save(de.digitalcollections.model.identifiable.web.Webpage webpage)
- Specified by:
savein interfaceIdentifiableRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
saveWithParent
public de.digitalcollections.model.identifiable.web.Webpage saveWithParent(UUID childWebpageUuid, UUID parentWebpageUuid)
- Specified by:
saveWithParentin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
saveWithParentWebsite
public de.digitalcollections.model.identifiable.web.Webpage saveWithParentWebsite(UUID webpageUuid, UUID parentWebsiteUuid)
- Specified by:
saveWithParentWebsitein interfaceWebpageRepository
-
update
public de.digitalcollections.model.identifiable.web.Webpage update(de.digitalcollections.model.identifiable.web.Webpage webpage)
- Specified by:
updatein interfaceIdentifiableRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
updateChildrenOrder
public boolean updateChildrenOrder(UUID parentUuid, List<de.digitalcollections.model.identifiable.web.Webpage> children)
- Specified by:
updateChildrenOrderin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
-