Class EPersonRestRepository

  • All Implemented Interfaces:
    ReloadableEntityObjectRepository<EPerson,​UUID>, org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.InitializingBean, org.springframework.data.repository.CrudRepository<EPersonRest,​UUID>, org.springframework.data.repository.PagingAndSortingRepository<EPersonRest,​UUID>, org.springframework.data.repository.Repository<EPersonRest,​UUID>

    @Component("eperson.eperson")
    public class EPersonRestRepository
    extends DSpaceObjectRestRepository<EPerson,​EPersonRest>
    implements org.springframework.beans.factory.InitializingBean
    This is the repository responsible to manage EPerson Rest object
    Author:
    Andrea Bollini (andrea.bollini at 4science.it)
    • Constructor Detail

      • EPersonRestRepository

        public EPersonRestRepository​(EPersonService dsoService)
    • Method Detail

      • findOne

        @PreAuthorize("hasPermission(#id, \'EPERSON\', \'READ\')")
        public EPersonRest findOne​(Context context,
                                   UUID id)
        Description copied from class: DSpaceRestRepository
        Method to implement to support retrieval of a specific REST object instance
        Specified by:
        findOne in class DSpaceRestRepository<EPersonRest,​UUID>
        Parameters:
        context - the dspace context
        id - the rest object id
        Returns:
        the REST object identified by its ID
      • findAll

        @PreAuthorize("hasAuthority(\'ADMIN\')")
        public org.springframework.data.domain.Page<EPersonRest> findAll​(Context context,
                                                                         org.springframework.data.domain.Pageable pageable)
        Description copied from class: DSpaceRestRepository
        Method to implement to support scroll of entity instances from the collection resource endpoint
        Specified by:
        findAll in class DSpaceRestRepository<EPersonRest,​UUID>
        Parameters:
        context - the dspace context
        pageable - object embedding the requested pagination info
        Returns:
      • findByEmail

        public EPersonRest findByEmail​(String email)
        Find the eperson with the provided email address if any. The search is delegated to the EPersonService.findByEmail(Context, String) method
        Parameters:
        email - is the *required* email address
        Returns:
        a Page of EPersonRest instances matching the user query
      • findByMetadata

        @PreAuthorize("hasAuthority(\'ADMIN\') || hasAuthority(\'MANAGE_ACCESS_GROUP\')")
        public org.springframework.data.domain.Page<EPersonRest> findByMetadata​(String query,
                                                                                org.springframework.data.domain.Pageable pageable)
        Find the epersons matching the query parameter. The search is delegated to the EPersonService.search(Context, String, int, int) method
        Parameters:
        query - is the *required* query string
        pageable - contains the pagination information
        Returns:
        a Page of EPersonRest instances matching the user query
      • findIsNotMemberOf

        @PreAuthorize("hasAuthority(\'ADMIN\') || hasAuthority(\'MANAGE_ACCESS_GROUP\')")
        public org.springframework.data.domain.Page<EPersonRest> findIsNotMemberOf​(UUID groupUUID,
                                                                                   String query,
                                                                                   org.springframework.data.domain.Pageable pageable)
        Find the EPersons matching the query parameter which are NOT a member of the given Group. The search is delegated to the EPersonService.searchNonMembers(Context, String, Group, int, int) method
        Parameters:
        groupUUID - the *required* group UUID to exclude results from
        query - is the *required* query string
        pageable - contains the pagination information
        Returns:
        a Page of EPersonRest instances matching the user query
      • afterPropertiesSet

        public void afterPropertiesSet()
                                throws Exception
        Specified by:
        afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean
        Throws:
        Exception