Class IdentifiableServiceImpl<I extends de.digitalcollections.model.api.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, EntityPartServiceImpl, EntityServiceImpl, FamilyNameServiceImpl, FileResourceMetadataServiceImpl, GivenNameServiceImpl, ImageFileResourceServiceImpl, LinkedDataFileResourceServiceImpl, TextFileResourceServiceImpl, VideoFileResourceServiceImpl

@Service
public class IdentifiableServiceImpl<I extends de.digitalcollections.model.api.identifiable.Identifiable>
extends java.lang.Object
implements IdentifiableService<I>
  • Field Summary

    Fields
    Modifier and Type Field Description
    protected IdentifiableRepository<I> repository  
  • Constructor Summary

    Constructors
    Constructor Description
    IdentifiableServiceImpl​(IdentifiableRepository<I> repository)  
  • Method Summary

    Modifier and Type Method Description
    long count()  
    boolean delete​(java.util.List<java.util.UUID> uuids)  
    de.digitalcollections.model.api.paging.PageResponse<I> find​(de.digitalcollections.model.api.paging.PageRequest pageRequest)  
    de.digitalcollections.model.api.paging.SearchPageResponse<I> find​(de.digitalcollections.model.api.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 date
    de.digitalcollections.model.api.paging.PageResponse<I> findByLanguageAndInitial​(de.digitalcollections.model.api.paging.PageRequest pageRequest, java.lang.String language, java.lang.String initial)  
    I get​(de.digitalcollections.model.api.identifiable.Identifier identifier)  
    I get​(java.util.UUID uuid)  
    I get​(java.util.UUID uuid, java.util.Locale locale)  
    I getByIdentifier​(java.lang.String namespace, java.lang.String id)  
    protected I reduceMultilanguageFieldsToGivenLocale​(I identifiable, java.util.Locale locale)  
    I save​(I identifiable)  
    protected void setDefaultSorting​(de.digitalcollections.model.api.paging.PageRequest pageRequest)  
    I update​(I identifiable)  

    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.IdentifiableService

    cleanupLabelFromUnwantedLocales, delete
  • Field Details

    • repository

      protected IdentifiableRepository<I extends de.digitalcollections.model.api.identifiable.Identifiable> repository
  • Constructor Details

    • IdentifiableServiceImpl

      @Autowired public IdentifiableServiceImpl​(@Qualifier("identifiableRepositoryImpl") IdentifiableRepository<I> repository)
  • Method Details

    • count

      public long count()
      Specified by:
      count in interface IdentifiableService<I extends de.digitalcollections.model.api.identifiable.Identifiable>
    • delete

      public boolean delete​(java.util.List<java.util.UUID> uuids)
      Specified by:
      delete in interface IdentifiableService<I extends de.digitalcollections.model.api.identifiable.Identifiable>
    • find

      public de.digitalcollections.model.api.paging.PageResponse<I> find​(de.digitalcollections.model.api.paging.PageRequest pageRequest)
      Specified by:
      find in interface IdentifiableService<I extends de.digitalcollections.model.api.identifiable.Identifiable>
    • find

      public de.digitalcollections.model.api.paging.SearchPageResponse<I> find​(de.digitalcollections.model.api.paging.SearchPageRequest searchPageRequest)
      Specified by:
      find in interface IdentifiableService<I extends de.digitalcollections.model.api.identifiable.Identifiable>
    • find

      public java.util.List<I> find​(java.lang.String searchTerm, int maxResults)
      Specified by:
      find in interface IdentifiableService<I extends de.digitalcollections.model.api.identifiable.Identifiable>
    • findAllFull

      public java.util.List<I> findAllFull()
      Specified by:
      findAllFull in interface IdentifiableService<I extends de.digitalcollections.model.api.identifiable.Identifiable>
      Returns:
      list of ALL identifiables with FULL data. USE WITH CARE (only for internal workflow, NOT FOR USER INTERACTION!)!!!
    • findAllReduced

      public java.util.List<I> findAllReduced()
      Description copied from interface: IdentifiableService
      Returns a list of all identifiables, reduced to their identifiers and last modification date
      Specified by:
      findAllReduced in interface IdentifiableService<I extends de.digitalcollections.model.api.identifiable.Identifiable>
      Returns:
      partially filled complete list of all identifiables of implementing repository entity type
    • findByLanguageAndInitial

      public de.digitalcollections.model.api.paging.PageResponse<I> findByLanguageAndInitial​(de.digitalcollections.model.api.paging.PageRequest pageRequest, java.lang.String language, java.lang.String initial)
      Specified by:
      findByLanguageAndInitial in interface IdentifiableService<I extends de.digitalcollections.model.api.identifiable.Identifiable>
    • get

      public I get​(de.digitalcollections.model.api.identifiable.Identifier identifier)
      Specified by:
      get in interface IdentifiableService<I extends de.digitalcollections.model.api.identifiable.Identifiable>
    • get

      public I get​(java.util.UUID uuid)
      Specified by:
      get in interface IdentifiableService<I extends de.digitalcollections.model.api.identifiable.Identifiable>
    • get

      public I get​(java.util.UUID uuid, java.util.Locale locale) throws IdentifiableServiceException
      Specified by:
      get in interface IdentifiableService<I extends de.digitalcollections.model.api.identifiable.Identifiable>
      Throws:
      IdentifiableServiceException
    • getByIdentifier

      public I getByIdentifier​(java.lang.String namespace, java.lang.String id)
      Specified by:
      getByIdentifier in interface IdentifiableService<I extends de.digitalcollections.model.api.identifiable.Identifiable>
    • reduceMultilanguageFieldsToGivenLocale

      protected I reduceMultilanguageFieldsToGivenLocale​(I identifiable, java.util.Locale locale)
    • save

      public I save​(I identifiable) throws IdentifiableServiceException
      Specified by:
      save in interface IdentifiableService<I extends de.digitalcollections.model.api.identifiable.Identifiable>
      Throws:
      IdentifiableServiceException
    • setDefaultSorting

      protected void setDefaultSorting​(de.digitalcollections.model.api.paging.PageRequest pageRequest)
    • update

      public I update​(I identifiable) throws IdentifiableServiceException
      Specified by:
      update in interface IdentifiableService<I extends de.digitalcollections.model.api.identifiable.Identifiable>
      Throws:
      IdentifiableServiceException