Class CollectionServiceImpl
- java.lang.Object
-
- de.digitalcollections.cudami.server.business.impl.service.identifiable.IdentifiableServiceImpl<E>
-
- de.digitalcollections.cudami.server.business.impl.service.identifiable.entity.EntityServiceImpl<de.digitalcollections.model.identifiable.entity.Collection>
-
- de.digitalcollections.cudami.server.business.impl.service.identifiable.entity.CollectionServiceImpl
-
- All Implemented Interfaces:
CollectionService,EntityService<de.digitalcollections.model.identifiable.entity.Collection>,IdentifiableService<de.digitalcollections.model.identifiable.entity.Collection>,NodeService<de.digitalcollections.model.identifiable.entity.Collection>
@Service public class CollectionServiceImpl extends EntityServiceImpl<de.digitalcollections.model.identifiable.entity.Collection> implements CollectionService
-
-
Field Summary
-
Fields inherited from class de.digitalcollections.cudami.server.business.impl.service.identifiable.entity.EntityServiceImpl
hookProperties, httpClient
-
Fields inherited from class de.digitalcollections.cudami.server.business.impl.service.identifiable.IdentifiableServiceImpl
identifierRepository, repository
-
-
Constructor Summary
Constructors Constructor Description CollectionServiceImpl(CollectionRepository repository, IdentifierRepository identifierRepository, UrlAliasService urlAliasService, CudamiConfig cudamiConfig)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaddChildren(UUID parentUuid, List<UUID> childrenUuids)booleanaddDigitalObjects(UUID collectionUuid, List<de.digitalcollections.model.identifiable.entity.DigitalObject> digitalObjects)de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.entity.Collection>findActive(de.digitalcollections.model.paging.PageRequest pageRequest)de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.identifiable.entity.Collection>findActive(de.digitalcollections.model.paging.SearchPageRequest pageRequest)de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.identifiable.entity.Collection>findActiveChildren(UUID uuid, de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.identifiable.entity.Collection>findChildren(UUID nodeUuid, de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.identifiable.entity.Collection>findRootNodes(de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)de.digitalcollections.model.identifiable.entity.CollectiongetActive(UUID uuid)de.digitalcollections.model.identifiable.entity.CollectiongetActive(UUID uuid, Locale pLocale)List<de.digitalcollections.model.identifiable.entity.Collection>getActiveChildren(UUID uuid)de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.entity.Collection>getActiveChildren(UUID uuid, de.digitalcollections.model.paging.PageRequest pageRequest)de.digitalcollections.model.view.BreadcrumbNavigationgetBreadcrumbNavigation(UUID nodeUuid)Build and return the breadcrumb navigation for the given node UUIDList<de.digitalcollections.model.identifiable.entity.Collection>getChildren(UUID nodeUuid)de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.entity.Collection>getChildren(UUID nodeUuid, de.digitalcollections.model.paging.PageRequest pageRequest)de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.identifiable.entity.DigitalObject>getDigitalObjects(UUID collectionUuid, de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)de.digitalcollections.model.identifiable.entity.CollectiongetParent(UUID nodeUuid)List<de.digitalcollections.model.identifiable.entity.Collection>getParents(UUID uuid)List<de.digitalcollections.model.identifiable.entity.agent.CorporateBody>getRelatedCorporateBodies(UUID uuid, de.digitalcollections.model.filter.Filtering filtering)de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.entity.Collection>getRootNodes(de.digitalcollections.model.paging.PageRequest pageRequest)List<Locale>getRootNodesLanguages()booleanremoveChild(UUID parentUuid, UUID childUuid)booleanremoveDigitalObject(UUID collectionUuid, UUID digitalObjectUuid)booleanremoveDigitalObjectFromAllCollections(de.digitalcollections.model.identifiable.entity.DigitalObject digitalObject)Removes a digitalObject from all collections, to which it was connected to.booleansaveDigitalObjects(UUID collectionUuid, List<de.digitalcollections.model.identifiable.entity.DigitalObject> digitalObjects)de.digitalcollections.model.identifiable.entity.CollectionsaveWithParent(UUID childUuid, UUID parentUuid)booleanupdateChildrenOrder(UUID parentUuid, List<de.digitalcollections.model.identifiable.entity.Collection> children)-
Methods inherited from class de.digitalcollections.cudami.server.business.impl.service.identifiable.entity.EntityServiceImpl
addRelatedFileresource, addRelatedFileresource, buildNotificationUrl, filteringForActive, getByRefId, getRandom, getRelatedFileResources, getRelatedFileResources, save, saveRelatedFileResources, saveRelatedFileResources, sendNotification, update
-
Methods inherited from class de.digitalcollections.cudami.server.business.impl.service.identifiable.IdentifiableServiceImpl
addRelatedEntity, count, delete, deleteIdentifiers, find, find, find, findAllFull, findAllReduced, findByLanguageAndInitial, get, get, get, getByIdentifier, getLanguages, getRelatedEntities, reduceMultilanguageFieldsToGivenLocale, saveIdentifiers, saveRelatedEntities, setDefaultSorting
-
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.business.api.service.identifiable.entity.CollectionService
addDigitalObject, addDigitalObjects, getDigitalObjects, removeDigitalObject, saveDigitalObjects
-
Methods inherited from interface de.digitalcollections.cudami.server.business.api.service.identifiable.entity.EntityService
getByRefId, getRandom
-
Methods inherited from interface de.digitalcollections.cudami.server.business.api.service.identifiable.IdentifiableService
addRelatedEntity, addRelatedEntity, addRelatedFileresource, addRelatedFileresource, cleanupLabelFromUnwantedLocales, count, delete, delete, deleteIdentifiers, find, find, find, findAllFull, findAllReduced, findByLanguageAndInitial, get, get, get, getByIdentifier, getLanguages, getRelatedEntities, getRelatedEntities, getRelatedFileResources, getRelatedFileResources, save, saveRelatedEntities, saveRelatedEntities, saveRelatedFileResources, saveRelatedFileResources, update
-
Methods inherited from interface de.digitalcollections.cudami.server.business.api.service.identifiable.NodeService
addChild, addChild, addChildren, getBreadcrumbNavigation, getChildren, getParent, removeChild, saveWithParent
-
-
-
-
Constructor Detail
-
CollectionServiceImpl
@Autowired public CollectionServiceImpl(CollectionRepository repository, IdentifierRepository identifierRepository, UrlAliasService urlAliasService, CudamiConfig cudamiConfig)
-
-
Method Detail
-
addChildren
public boolean addChildren(UUID parentUuid, List<UUID> childrenUuids)
- Specified by:
addChildrenin interfaceNodeService<de.digitalcollections.model.identifiable.entity.Collection>
-
addDigitalObjects
public boolean addDigitalObjects(UUID collectionUuid, List<de.digitalcollections.model.identifiable.entity.DigitalObject> digitalObjects)
- Specified by:
addDigitalObjectsin interfaceCollectionService
-
findActive
public de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.entity.Collection> findActive(de.digitalcollections.model.paging.PageRequest pageRequest)
- Specified by:
findActivein interfaceCollectionService
-
findActive
public de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.identifiable.entity.Collection> findActive(de.digitalcollections.model.paging.SearchPageRequest pageRequest)
- Specified by:
findActivein interfaceCollectionService
-
findActiveChildren
public de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.identifiable.entity.Collection> findActiveChildren(UUID uuid, de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)
- Specified by:
findActiveChildrenin interfaceCollectionService
-
findChildren
public de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.identifiable.entity.Collection> findChildren(UUID nodeUuid, de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)
- Specified by:
findChildrenin interfaceNodeService<de.digitalcollections.model.identifiable.entity.Collection>
-
getActive
public de.digitalcollections.model.identifiable.entity.Collection getActive(UUID uuid)
- Specified by:
getActivein interfaceCollectionService
-
getActive
public de.digitalcollections.model.identifiable.entity.Collection getActive(UUID uuid, Locale pLocale)
- Specified by:
getActivein interfaceCollectionService
-
getActiveChildren
public List<de.digitalcollections.model.identifiable.entity.Collection> getActiveChildren(UUID uuid)
- Specified by:
getActiveChildrenin interfaceCollectionService
-
getActiveChildren
public de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.entity.Collection> getActiveChildren(UUID uuid, de.digitalcollections.model.paging.PageRequest pageRequest)
- Specified by:
getActiveChildrenin interfaceCollectionService
-
getBreadcrumbNavigation
public de.digitalcollections.model.view.BreadcrumbNavigation getBreadcrumbNavigation(UUID nodeUuid)
Description copied from interface:NodeServiceBuild and return the breadcrumb navigation for the given node UUID- Specified by:
getBreadcrumbNavigationin interfaceNodeService<de.digitalcollections.model.identifiable.entity.Collection>- Parameters:
nodeUuid- the uuid of the node.- Returns:
- BreadcrumbNavigation with labels in all available languages
-
getChildren
public List<de.digitalcollections.model.identifiable.entity.Collection> getChildren(UUID nodeUuid)
- Specified by:
getChildrenin interfaceNodeService<de.digitalcollections.model.identifiable.entity.Collection>
-
getChildren
public de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.entity.Collection> getChildren(UUID nodeUuid, de.digitalcollections.model.paging.PageRequest pageRequest)
- Specified by:
getChildrenin interfaceNodeService<de.digitalcollections.model.identifiable.entity.Collection>
-
getDigitalObjects
public de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.identifiable.entity.DigitalObject> getDigitalObjects(UUID collectionUuid, de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)
- Specified by:
getDigitalObjectsin interfaceCollectionService
-
getParent
public de.digitalcollections.model.identifiable.entity.Collection getParent(UUID nodeUuid)
- Specified by:
getParentin interfaceNodeService<de.digitalcollections.model.identifiable.entity.Collection>
-
getParents
public List<de.digitalcollections.model.identifiable.entity.Collection> getParents(UUID uuid)
- Specified by:
getParentsin interfaceNodeService<de.digitalcollections.model.identifiable.entity.Collection>
-
getRelatedCorporateBodies
public List<de.digitalcollections.model.identifiable.entity.agent.CorporateBody> getRelatedCorporateBodies(UUID uuid, de.digitalcollections.model.filter.Filtering filtering)
- Specified by:
getRelatedCorporateBodiesin interfaceCollectionService
-
getRootNodes
public de.digitalcollections.model.paging.PageResponse<de.digitalcollections.model.identifiable.entity.Collection> getRootNodes(de.digitalcollections.model.paging.PageRequest pageRequest)
- Specified by:
getRootNodesin interfaceNodeService<de.digitalcollections.model.identifiable.entity.Collection>
-
findRootNodes
public de.digitalcollections.model.paging.SearchPageResponse<de.digitalcollections.model.identifiable.entity.Collection> findRootNodes(de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)
- Specified by:
findRootNodesin interfaceNodeService<de.digitalcollections.model.identifiable.entity.Collection>
-
getRootNodesLanguages
public List<Locale> getRootNodesLanguages()
- Specified by:
getRootNodesLanguagesin interfaceNodeService<de.digitalcollections.model.identifiable.entity.Collection>
-
removeChild
public boolean removeChild(UUID parentUuid, UUID childUuid)
- Specified by:
removeChildin interfaceNodeService<de.digitalcollections.model.identifiable.entity.Collection>
-
removeDigitalObject
public boolean removeDigitalObject(UUID collectionUuid, UUID digitalObjectUuid)
- Specified by:
removeDigitalObjectin interfaceCollectionService
-
removeDigitalObjectFromAllCollections
public boolean removeDigitalObjectFromAllCollections(de.digitalcollections.model.identifiable.entity.DigitalObject digitalObject)
Description copied from interface:CollectionServiceRemoves a digitalObject from all collections, to which it was connected to.- Specified by:
removeDigitalObjectFromAllCollectionsin interfaceCollectionService- Parameters:
digitalObject- the digital object- Returns:
- boolean value for success
-
saveDigitalObjects
public boolean saveDigitalObjects(UUID collectionUuid, List<de.digitalcollections.model.identifiable.entity.DigitalObject> digitalObjects)
- Specified by:
saveDigitalObjectsin interfaceCollectionService
-
saveWithParent
public de.digitalcollections.model.identifiable.entity.Collection saveWithParent(UUID childUuid, UUID parentUuid) throws IdentifiableServiceException
- Specified by:
saveWithParentin interfaceNodeService<de.digitalcollections.model.identifiable.entity.Collection>- Parameters:
childUuid- UUID of newly created child nodeparentUuid- parent node the new node is child of- Returns:
- saved child node
- Throws:
IdentifiableServiceException- if saving fails
-
updateChildrenOrder
public boolean updateChildrenOrder(UUID parentUuid, List<de.digitalcollections.model.identifiable.entity.Collection> children)
- Specified by:
updateChildrenOrderin interfaceNodeService<de.digitalcollections.model.identifiable.entity.Collection>
-
-