Package org.dspace.app.rest.repository
Class GroupRestRepository
- java.lang.Object
-
- org.dspace.app.rest.repository.AbstractDSpaceRestRepository
-
- org.dspace.app.rest.repository.DSpaceRestRepository<R,UUID>
-
- org.dspace.app.rest.repository.DSpaceObjectRestRepository<Group,GroupRest>
-
- org.dspace.app.rest.repository.GroupRestRepository
-
- All Implemented Interfaces:
ReloadableEntityObjectRepository<Group,UUID>,org.springframework.data.repository.CrudRepository<GroupRest,UUID>,org.springframework.data.repository.PagingAndSortingRepository<GroupRest,UUID>,org.springframework.data.repository.Repository<GroupRest,UUID>
@Component("eperson.group") public class GroupRestRepository extends DSpaceObjectRestRepository<Group,GroupRest>This is the repository responsible to manage Group Rest object- Author:
- Andrea Bollini (andrea.bollini at 4science.it)
-
-
Field Summary
-
Fields inherited from class org.dspace.app.rest.repository.AbstractDSpaceRestRepository
converter, requestService, utils
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected GroupRestcreateAndReturn(Context context)Method to implement to support the creation of a new instance.protected voiddelete(Context context, UUID uuid)Method to implement to support delete of a single object instanceorg.springframework.data.domain.Page<GroupRest>findAll(Context context, org.springframework.data.domain.Pageable pageable)Method to implement to support scroll of entity instances from the collection resource endpointorg.springframework.data.domain.Page<GroupRest>findByMetadata(String query, org.springframework.data.domain.Pageable pageable)Find the groups matching the query parameter.GroupRestfindOne(Context context, UUID id)Method to implement to support retrieval of a specific REST object instanceClass<GroupRest>getDomainClass()The REST model supported by the repositoryprotected voidpatch(Context context, javax.servlet.http.HttpServletRequest request, String apiCategory, String model, UUID id, Patch patch)Method to implement to allow partial update of the REST object via JSON Patch-
Methods inherited from class org.dspace.app.rest.repository.DSpaceObjectRestRepository
findDomainObjectByPk, getPKClass, patchDSpaceObject
-
Methods inherited from class org.dspace.app.rest.repository.DSpaceRestRepository
action, action, count, createAndReturn, createAndReturn, createAndReturn, createAndReturn, createAndReturn, delete, deleteAll, deleteAll, deleteById, existsById, findAll, findAll, findAll, findAllById, findById, patch, put, put, put, put, save, save, saveAll, upload, upload, upload
-
Methods inherited from class org.dspace.app.rest.repository.AbstractDSpaceRestRepository
getRequestService, obtainContext
-
-
-
-
Method Detail
-
createAndReturn
@PreAuthorize("hasAuthority(\'ADMIN\')") protected GroupRest createAndReturn(Context context) throws AuthorizeException, RepositoryMethodNotImplementedExceptionDescription copied from class:DSpaceRestRepositoryMethod to implement to support the creation of a new instance. Usually require to retrieve the http request from the thread bound attribute- Overrides:
createAndReturnin classDSpaceRestRepository<GroupRest,UUID>- Parameters:
context- the dspace context- Returns:
- the created REST object
- Throws:
AuthorizeExceptionRepositoryMethodNotImplementedException- returned by the default implementation when the operation is not supported for the entity
-
findOne
@PreAuthorize("hasPermission(#id, \'GROUP\', \'READ\')") public GroupRest findOne(Context context, UUID id)Description copied from class:DSpaceRestRepositoryMethod to implement to support retrieval of a specific REST object instance- Specified by:
findOnein classDSpaceRestRepository<GroupRest,UUID>- Parameters:
context- the dspace contextid- the rest object id- Returns:
- the REST object identified by its ID
-
findAll
@PreAuthorize("hasAuthority(\'ADMIN\')") public org.springframework.data.domain.Page<GroupRest> findAll(Context context, org.springframework.data.domain.Pageable pageable)Description copied from class:DSpaceRestRepositoryMethod to implement to support scroll of entity instances from the collection resource endpoint- Specified by:
findAllin classDSpaceRestRepository<GroupRest,UUID>- Parameters:
context- the dspace contextpageable- object embedding the requested pagination info- Returns:
-
patch
@PreAuthorize("hasPermission(#id, \'GROUP\', \'WRITE\')") protected void patch(Context context, javax.servlet.http.HttpServletRequest request, String apiCategory, String model, UUID id, Patch patch) throws AuthorizeException, SQLExceptionDescription copied from class:DSpaceRestRepositoryMethod to implement to allow partial update of the REST object via JSON Patch- Overrides:
patchin classDSpaceRestRepository<GroupRest,UUID>request- the http requestid- the ID of the target REST objectpatch- the JSON Patch (https://tools.ietf.org/html/rfc6902) operation- Throws:
AuthorizeExceptionSQLException
-
findByMetadata
@PreAuthorize("hasAuthority(\'ADMIN\') || hasAuthority(\'MANAGE_ACCESS_GROUP\')") public org.springframework.data.domain.Page<GroupRest> findByMetadata(String query, org.springframework.data.domain.Pageable pageable)Find the groups matching the query parameter. The search is delegated to theGroupService.search(Context, String, int, int)method- Parameters:
query- is the *required* query stringpageable- contains the pagination information- Returns:
- a Page of GroupRest instances matching the user query
-
getDomainClass
public Class<GroupRest> getDomainClass()
Description copied from class:DSpaceRestRepositoryThe REST model supported by the repository- Specified by:
getDomainClassin classDSpaceRestRepository<GroupRest,UUID>
-
delete
@PreAuthorize("hasAuthority(\'ADMIN\')") protected void delete(Context context, UUID uuid) throws AuthorizeExceptionDescription copied from class:DSpaceRestRepositoryMethod to implement to support delete of a single object instance- Overrides:
deletein classDSpaceRestRepository<GroupRest,UUID>- Parameters:
context- the dspace contextuuid- the id of the rest object to delete- Throws:
AuthorizeException
-
-