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 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 Constructor Description WebpageRepositoryImpl(org.jdbi.v3.core.Jdbi dbi, IdentifierRepository identifierRepository) -
Method Summary
Modifier and Type Method Description booleanaddChildren(java.util.UUID parentUuid, java.util.List<java.util.UUID> childrenUuids)de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.identifiable.web.Webpage>findChildren(java.util.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(java.util.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 java.util.List<java.lang.String>getAllowedOrderByFields()de.digitalcollections.model.view.BreadcrumbNavigationgetBreadcrumbNavigation(java.util.UUID uuid)java.util.List<de.digitalcollections.model.identifiable.web.Webpage>getChildren(java.util.UUID uuid)de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.web.Webpage>getChildren(java.util.UUID uuid, de.digitalcollections.model.paging.PageRequest pageRequest)protected java.lang.StringgetColumnName(java.lang.String modelProperty)de.digitalcollections.model.identifiable.web.WebpagegetParent(java.util.UUID uuid)java.util.List<de.digitalcollections.model.identifiable.web.Webpage>getParents(java.util.UUID uuid)de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.web.Webpage>getRootNodes(de.digitalcollections.model.paging.PageRequest pageRequest)java.util.List<java.util.Locale>getRootNodesLanguages()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()de.digitalcollections.model.identifiable.entity.WebsitegetWebsite(java.util.UUID rootWebpageUuid)booleanremoveChild(java.util.UUID parentUuid, java.util.UUID childUuid)de.digitalcollections.model.identifiable.web.Webpagesave(de.digitalcollections.model.identifiable.web.Webpage webpage)de.digitalcollections.model.identifiable.web.WebpagesaveWithParent(de.digitalcollections.model.identifiable.web.Webpage webpage, java.util.UUID parentWebpageUuid)de.digitalcollections.model.identifiable.web.WebpagesaveWithParentWebsite(de.digitalcollections.model.identifiable.web.Webpage webpage, java.util.UUID parentWebsiteUuid)de.digitalcollections.model.identifiable.web.Webpageupdate(de.digitalcollections.model.identifiable.web.Webpage webpage)booleanupdateChildrenOrder(java.util.UUID parentUuid, java.util.List<de.digitalcollections.model.identifiable.web.Webpage> children)Methods inherited from class de.digitalcollections.cudami.server.backend.impl.jdbi.identifiable.IdentifiableRepositoryImpl
addRelatedEntity, addRelatedFileresource, delete, deleteIdentifiers, escapeTermForJsonpath, find, find, find, find, findAllFull, findAllReduced, findByLanguageAndInitial, getCommonSearchSql, getIndex, getIndex, getLanguages, getRelatedEntities, getRelatedFileResources, getSqlSelectAllFields, getSqlSelectReducedFields, retrieveCount, retrieveList, retrieveNextSortIndexForParentChildren, retrieveOne, save, saveIdentifiers, saveRelatedEntities, saveRelatedFileResources, updateMethods 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, addRelatedFileresource, count, delete, delete, deleteIdentifiers, find, find, find, findAllFull, findAllReduced, findByLanguageAndInitial, findOne, findOneByIdentifier, getLanguages, getRelatedEntities, getRelatedEntities, getRelatedFileResources, getRelatedFileResources, save, saveRelatedEntities, saveRelatedEntities, saveRelatedFileResources, saveRelatedFileResources, updateMethods inherited from interface de.digitalcollections.cudami.server.backend.api.repository.identifiable.NodeRepository
addChild, addChild, addChildren, getChildren, removeChildMethods inherited from interface de.digitalcollections.cudami.server.backend.api.repository.identifiable.web.WebpageRepository
updateChildrenOrder
-
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
-
WebpageRepositoryImpl
@Autowired public WebpageRepositoryImpl(org.jdbi.v3.core.Jdbi dbi, IdentifierRepository identifierRepository)
-
-
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() -
addChildren
public boolean addChildren(java.util.UUID parentUuid, java.util.List<java.util.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(java.util.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(java.util.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 java.util.List<java.lang.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(java.util.UUID uuid)- Specified by:
getBreadcrumbNavigationin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
getChildren
public java.util.List<de.digitalcollections.model.identifiable.web.Webpage> getChildren(java.util.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(java.util.UUID uuid, de.digitalcollections.model.paging.PageRequest pageRequest)- Specified by:
getChildrenin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
getColumnName
protected java.lang.String getColumnName(java.lang.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(java.util.UUID uuid)- Specified by:
getParentin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
getParents
public java.util.List<de.digitalcollections.model.identifiable.web.Webpage> getParents(java.util.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 java.util.List<java.util.Locale> getRootNodesLanguages()- Specified by:
getRootNodesLanguagesin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
getWebsite
public de.digitalcollections.model.identifiable.entity.Website getWebsite(java.util.UUID rootWebpageUuid)- Specified by:
getWebsitein interfaceWebpageRepository
-
removeChild
public boolean removeChild(java.util.UUID parentUuid, java.util.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(de.digitalcollections.model.identifiable.web.Webpage webpage, java.util.UUID parentWebpageUuid)- Specified by:
saveWithParentin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-
saveWithParentWebsite
public de.digitalcollections.model.identifiable.web.Webpage saveWithParentWebsite(de.digitalcollections.model.identifiable.web.Webpage webpage, java.util.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(java.util.UUID parentUuid, java.util.List<de.digitalcollections.model.identifiable.web.Webpage> children)- Specified by:
updateChildrenOrderin interfaceNodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
-