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 Details

  • Constructor Details

  • 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:
      addChildren in interface NodeRepository<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:
      findChildren in interface NodeRepository<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:
      findOne in interface IdentifiableRepository<de.digitalcollections.model.identifiable.web.Webpage>
      Overrides:
      findOne in class IdentifiableRepositoryImpl<de.digitalcollections.model.identifiable.web.Webpage>
    • findOne

      public de.digitalcollections.model.identifiable.web.Webpage findOne​(de.digitalcollections.model.identifiable.Identifier identifier)
      Specified by:
      findOne in interface IdentifiableRepository<de.digitalcollections.model.identifiable.web.Webpage>
      Overrides:
      findOne in class IdentifiableRepositoryImpl<de.digitalcollections.model.identifiable.web.Webpage>
    • getAllowedOrderByFields

      protected java.util.List<java.lang.String> getAllowedOrderByFields()
      Overrides:
      getAllowedOrderByFields in class IdentifiableRepositoryImpl<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:
      getBreadcrumbNavigation in interface NodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
    • getChildren

      public java.util.List<de.digitalcollections.model.identifiable.web.Webpage> getChildren​(java.util.UUID uuid)
      Specified by:
      getChildren in interface NodeRepository<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:
      getChildren in interface NodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
    • getColumnName

      protected java.lang.String getColumnName​(java.lang.String modelProperty)
      Overrides:
      getColumnName in class IdentifiableRepositoryImpl<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:
      getParent in interface NodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
    • getParents

      public java.util.List<de.digitalcollections.model.identifiable.web.Webpage> getParents​(java.util.UUID uuid)
      Specified by:
      getParents in interface NodeRepository<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:
      getRootNodes in interface NodeRepository<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:
      findRootNodes in interface NodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
    • getRootNodesLanguages

      public java.util.List<java.util.Locale> getRootNodesLanguages()
      Specified by:
      getRootNodesLanguages in interface NodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
    • getWebsite

      public de.digitalcollections.model.identifiable.entity.Website getWebsite​(java.util.UUID rootWebpageUuid)
      Specified by:
      getWebsite in interface WebpageRepository
    • removeChild

      public boolean removeChild​(java.util.UUID parentUuid, java.util.UUID childUuid)
      Specified by:
      removeChild in interface NodeRepository<de.digitalcollections.model.identifiable.web.Webpage>
    • save

      public de.digitalcollections.model.identifiable.web.Webpage save​(de.digitalcollections.model.identifiable.web.Webpage webpage)
      Specified by:
      save in interface IdentifiableRepository<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:
      saveWithParent in interface NodeRepository<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:
      saveWithParentWebsite in interface WebpageRepository
    • update

      public de.digitalcollections.model.identifiable.web.Webpage update​(de.digitalcollections.model.identifiable.web.Webpage webpage)
      Specified by:
      update in interface IdentifiableRepository<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:
      updateChildrenOrder in interface NodeRepository<de.digitalcollections.model.identifiable.web.Webpage>