Class IdentifiableServiceImpl<I extends de.digitalcollections.model.identifiable.Identifiable>
java.lang.Object
de.digitalcollections.cudami.server.business.impl.service.identifiable.IdentifiableServiceImpl<I>
- All Implemented Interfaces:
IdentifiableService<I>
- Direct Known Subclasses:
ApplicationFileResourceServiceImpl,AudioFileResourceServiceImpl,EntityServiceImpl,FamilyNameServiceImpl,FileResourceMetadataServiceImpl,GivenNameServiceImpl,ImageFileResourceServiceImpl,LinkedDataFileResourceServiceImpl,TextFileResourceServiceImpl,VideoFileResourceServiceImpl,WebpageServiceImpl
@Service("identifiableService")
@Transactional(rollbackFor=java.lang.Exception.class)
public class IdentifiableServiceImpl<I extends de.digitalcollections.model.identifiable.Identifiable>
extends java.lang.Object
implements IdentifiableService<I>
-
Field Summary
Fields Modifier and Type Field Description protected IdentifierRepositoryidentifierRepositoryprotected IdentifiableRepository<I>repository -
Constructor Summary
Constructors Constructor Description IdentifiableServiceImpl(IdentifiableRepository<I> repository, IdentifierRepository identifierRepository, UrlAliasService urlAliasService, CudamiConfig cudamiConfig) -
Method Summary
Modifier and Type Method Description voidaddRelatedEntity(java.util.UUID identifiableUuid, java.util.UUID entityUuid)voidaddRelatedFileresource(java.util.UUID identifiableUuid, java.util.UUID fileResourceUuid)longcount()booleandelete(java.util.List<java.util.UUID> uuids)booleandeleteIdentifiers(java.util.UUID identifiableUuid)de.digitalcollections.model.paging.PageResponse<I>find(de.digitalcollections.model.paging.PageRequest pageRequest)de.digitalcollections.model.paging.SearchPageResponse<I>find(de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)java.util.List<I>find(java.lang.String searchTerm, int maxResults)java.util.List<I>findAllFull()java.util.List<I>findAllReduced()Returns a list of all identifiables, reduced to their identifiers and last modification datede.digitalcollections.model.paging.PageResponse<I>findByLanguageAndInitial(de.digitalcollections.model.paging.PageRequest pageRequest, java.lang.String language, java.lang.String initial)Iget(de.digitalcollections.model.identifiable.Identifier identifier)Iget(java.util.UUID uuid)Iget(java.util.UUID uuid, java.util.Locale locale)IgetByIdentifier(java.lang.String namespace, java.lang.String id)java.util.List<java.util.Locale>getLanguages()java.util.List<de.digitalcollections.model.identifiable.entity.Entity>getRelatedEntities(java.util.UUID identifiableUuid)java.util.List<de.digitalcollections.model.identifiable.resource.FileResource>getRelatedFileResources(java.util.UUID identifiableUuid)protected IreduceMultilanguageFieldsToGivenLocale(I identifiable, java.util.Locale locale)Isave(I identifiable)voidsaveIdentifiers(java.util.Set<de.digitalcollections.model.identifiable.Identifier> identifiers, de.digitalcollections.model.identifiable.Identifiable identifiable)java.util.List<de.digitalcollections.model.identifiable.entity.Entity>saveRelatedEntities(java.util.UUID identifiableUuid, java.util.List<de.digitalcollections.model.identifiable.entity.Entity> entities)java.util.List<de.digitalcollections.model.identifiable.resource.FileResource>saveRelatedFileResources(java.util.UUID identifiableUuid, java.util.List<de.digitalcollections.model.identifiable.resource.FileResource> fileResources)protected voidsetDefaultSorting(de.digitalcollections.model.paging.PageRequest pageRequest)Iupdate(I identifiable)Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface de.digitalcollections.cudami.server.business.api.service.identifiable.IdentifiableService
addRelatedEntity, addRelatedFileresource, cleanupLabelFromUnwantedLocales, delete, getRelatedEntities, getRelatedFileResources, saveRelatedEntities, saveRelatedFileResources
-
Field Details
-
repository
protected IdentifiableRepository<I extends de.digitalcollections.model.identifiable.Identifiable> repository -
identifierRepository
-
-
Constructor Details
-
IdentifiableServiceImpl
@Autowired public IdentifiableServiceImpl(@Qualifier("identifiableRepositoryImpl") IdentifiableRepository<I> repository, IdentifierRepository identifierRepository, UrlAliasService urlAliasService, CudamiConfig cudamiConfig)
-
-
Method Details
-
addRelatedEntity
public void addRelatedEntity(java.util.UUID identifiableUuid, java.util.UUID entityUuid)- Specified by:
addRelatedEntityin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
addRelatedFileresource
public void addRelatedFileresource(java.util.UUID identifiableUuid, java.util.UUID fileResourceUuid)- Specified by:
addRelatedFileresourcein interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
count
public long count()- Specified by:
countin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
delete
- Specified by:
deletein interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>- Throws:
IdentifiableServiceException
-
deleteIdentifiers
public boolean deleteIdentifiers(java.util.UUID identifiableUuid)- Specified by:
deleteIdentifiersin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
find
public de.digitalcollections.model.paging.PageResponse<I> find(de.digitalcollections.model.paging.PageRequest pageRequest)- Specified by:
findin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
find
public de.digitalcollections.model.paging.SearchPageResponse<I> find(de.digitalcollections.model.paging.SearchPageRequest searchPageRequest)- Specified by:
findin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
find
- Specified by:
findin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
findAllFull
- Specified by:
findAllFullin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>- Returns:
- list of ALL identifiables with FULL data. USE WITH CARE (only for internal workflow, NOT FOR USER INTERACTION!)!!!
-
findAllReduced
Description copied from interface:IdentifiableServiceReturns a list of all identifiables, reduced to their identifiers and last modification date- Specified by:
findAllReducedin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>- Returns:
- partially filled complete list of all identifiables of implementing repository entity type
-
findByLanguageAndInitial
public de.digitalcollections.model.paging.PageResponse<I> findByLanguageAndInitial(de.digitalcollections.model.paging.PageRequest pageRequest, java.lang.String language, java.lang.String initial)- Specified by:
findByLanguageAndInitialin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
get
- Specified by:
getin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
get
- Specified by:
getin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
get
- Specified by:
getin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>- Throws:
IdentifiableServiceException
-
getByIdentifier
- Specified by:
getByIdentifierin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
getLanguages
public java.util.List<java.util.Locale> getLanguages()- Specified by:
getLanguagesin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
getRelatedEntities
public java.util.List<de.digitalcollections.model.identifiable.entity.Entity> getRelatedEntities(java.util.UUID identifiableUuid)- Specified by:
getRelatedEntitiesin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
getRelatedFileResources
public java.util.List<de.digitalcollections.model.identifiable.resource.FileResource> getRelatedFileResources(java.util.UUID identifiableUuid)- Specified by:
getRelatedFileResourcesin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
reduceMultilanguageFieldsToGivenLocale
-
save
- Specified by:
savein interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>- Throws:
IdentifiableServiceExceptionValidationException
-
saveIdentifiers
public void saveIdentifiers(java.util.Set<de.digitalcollections.model.identifiable.Identifier> identifiers, de.digitalcollections.model.identifiable.Identifiable identifiable) -
saveRelatedEntities
public java.util.List<de.digitalcollections.model.identifiable.entity.Entity> saveRelatedEntities(java.util.UUID identifiableUuid, java.util.List<de.digitalcollections.model.identifiable.entity.Entity> entities)- Specified by:
saveRelatedEntitiesin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
saveRelatedFileResources
public java.util.List<de.digitalcollections.model.identifiable.resource.FileResource> saveRelatedFileResources(java.util.UUID identifiableUuid, java.util.List<de.digitalcollections.model.identifiable.resource.FileResource> fileResources)- Specified by:
saveRelatedFileResourcesin interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>
-
setDefaultSorting
protected void setDefaultSorting(de.digitalcollections.model.paging.PageRequest pageRequest) -
update
- Specified by:
updatein interfaceIdentifiableService<I extends de.digitalcollections.model.identifiable.Identifiable>- Throws:
IdentifiableServiceExceptionValidationException
-