Class DigitalObjectController
- java.lang.Object
-
- de.digitalcollections.cudami.server.controller.identifiable.entity.DigitalObjectController
-
@RestController @Api(description="The digital object controller", name="Digital object controller") public class DigitalObjectController extends Object
-
-
Constructor Summary
Constructors Constructor Description DigitalObjectController()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description longcount()org.springframework.http.ResponseEntitydelete(UUID uuid)de.digitalcollections.model.api.paging.PageResponse<de.digitalcollections.model.api.identifiable.entity.DigitalObject>findAll(int pageNumber, int pageSize, List<de.digitalcollections.model.api.paging.Order> sortBy)List<de.digitalcollections.model.api.identifiable.entity.DigitalObject>findAllReduced()de.digitalcollections.model.api.identifiable.entity.DigitalObjectfindById(UUID uuid)de.digitalcollections.model.api.identifiable.entity.DigitalObjectfindByIdentifier(String namespace, String id)de.digitalcollections.model.api.paging.SearchPageResponse<de.digitalcollections.model.api.identifiable.entity.DigitalObject>findDigitalObjects(int pageNumber, int pageSize, List<de.digitalcollections.model.api.paging.Order> sortBy, String searchTerm)de.digitalcollections.model.api.identifiable.entity.work.ItemfindItemOfDigitalObject(UUID uuid)List<de.digitalcollections.model.api.identifiable.entity.DigitalObject>findRandomDigitalObjects(int count)de.digitalcollections.model.api.paging.PageResponse<de.digitalcollections.model.api.identifiable.entity.Collection>getCollections(UUID uuid, int pageNumber, int pageSize, String active)List<de.digitalcollections.model.api.identifiable.resource.FileResource>getFileResources(UUID uuid)List<de.digitalcollections.model.api.identifiable.resource.ImageFileResource>getImageFileResources(UUID uuid)de.digitalcollections.model.api.paging.PageResponse<de.digitalcollections.model.api.identifiable.entity.Project>getProjects(UUID uuid, int pageNumber, int pageSize)de.digitalcollections.model.api.identifiable.entity.DigitalObjectsave(de.digitalcollections.model.api.identifiable.entity.DigitalObject digitalObject, org.springframework.validation.BindingResult errors)List<de.digitalcollections.model.api.identifiable.resource.FileResource>saveFileResources(UUID uuid, List<de.digitalcollections.model.api.identifiable.resource.FileResource> fileResources)de.digitalcollections.model.api.identifiable.entity.DigitalObjectupdate(UUID uuid, de.digitalcollections.model.api.identifiable.entity.DigitalObject digitalObject, org.springframework.validation.BindingResult errors)
-
-
-
Method Detail
-
count
@ApiMethod(description="Get count of digital objects") @GetMapping(value={"/latest/digitalobjects/count","/v2/digitalobjects/count"}, produces="application/json") @ApiResponseObject public long count()
-
delete
@ApiMethod(description="Delete a digital object with all its relations") @DeleteMapping(value={"/latest/digitalobjects/{uuid}","/v2/digitalobjects/{uuid}"}, produces="application/json") @ApiResponseObject public org.springframework.http.ResponseEntity delete(@ApiPathParam(description="UUID of the digital object") @PathVariable("uuid") UUID uuid)
-
findAll
@ApiMethod(description="Get all digital objects") @GetMapping(value={"/latest/digitalobjects","/v2/digitalobjects"}, produces="application/json") @ApiResponseObject public de.digitalcollections.model.api.paging.PageResponse<de.digitalcollections.model.api.identifiable.entity.DigitalObject> findAll(@RequestParam(name="pageNumber",required=false,defaultValue="0") int pageNumber, @RequestParam(name="pageSize",required=false,defaultValue="25") int pageSize, @RequestParam(name="sortBy",required=false) List<de.digitalcollections.model.api.paging.Order> sortBy)
-
findAllReduced
@ApiMethod(description="Get all digital objects, reduced to their metadata fields (only all identifiers and last modification date)") @GetMapping(value={"/latest/digitalobjects/reduced","/v3/digitalobjects/reduced"}, produces="application/json") @ApiResponseObject public List<de.digitalcollections.model.api.identifiable.entity.DigitalObject> findAllReduced()
-
findById
@ApiMethod(description="Get digital object by uuid") @GetMapping(value={"/latest/digitalobjects/{uuid}","/v2/digitalobjects/{uuid}"}, produces="application/json") @ApiResponseObject public de.digitalcollections.model.api.identifiable.entity.DigitalObject findById(@PathVariable UUID uuid)
-
findByIdentifier
@ApiMethod(description="Get digital object by namespace and id") @GetMapping(value={"/latest/digitalobjects/identifier/{namespace}:{id}","/v2/digitalobjects/identifier/{namespace}:{id}"}, produces="application/json") @ApiResponseObject public de.digitalcollections.model.api.identifiable.entity.DigitalObject findByIdentifier(@ApiPathParam(description="Namespace of the identifier") @PathVariable("namespace") String namespace, @ApiPathParam(description="value of the identifier") @PathVariable("id") String id) throws IdentifiableServiceException- Throws:
IdentifiableServiceException
-
findDigitalObjects
@ApiMethod(description="Find limited amount of digital objects containing searchTerm in label or description") @GetMapping(value={"/latest/digitalobjects/search","/v3/digitalobjects/search"}, produces="application/json") @ApiResponseObject public de.digitalcollections.model.api.paging.SearchPageResponse<de.digitalcollections.model.api.identifiable.entity.DigitalObject> findDigitalObjects(@RequestParam(name="pageNumber",required=false,defaultValue="0") int pageNumber, @RequestParam(name="pageSize",required=false,defaultValue="5") int pageSize, @RequestParam(name="sortBy",required=false) List<de.digitalcollections.model.api.paging.Order> sortBy, @RequestParam(name="searchTerm",required=false) String searchTerm)
-
findItemOfDigitalObject
@ApiMethod(description="Get item for digital object by digital object uuid") @GetMapping(value={"/latest/digitalobjects/{uuid}/item","/v2/digitalobjects/{uuid}/item"}, produces="application/json") @ApiResponseObject public de.digitalcollections.model.api.identifiable.entity.work.Item findItemOfDigitalObject(@PathVariable UUID uuid)
-
findRandomDigitalObjects
@ApiMethod(description="Find limited amount of random digital objects") @GetMapping(value={"/latest/digitalobjects/random","/v2/digitalobjects/random"}, produces="application/json") @ApiResponseObject public List<de.digitalcollections.model.api.identifiable.entity.DigitalObject> findRandomDigitalObjects(@RequestParam(name="count",required=false,defaultValue="5") int count)
-
getCollections
@ApiMethod(description="Get (active) paged collections of a digital objects") @GetMapping(value={"/latest/digitalobjects/{uuid}/collections","/v3/digitalobjects/{uuid}/collections"}, produces="application/json") @ApiResponseObject public de.digitalcollections.model.api.paging.PageResponse<de.digitalcollections.model.api.identifiable.entity.Collection> getCollections(@ApiPathParam(description="UUID of the digital object") @PathVariable("uuid") UUID uuid, @RequestParam(name="pageNumber",required=false,defaultValue="0") int pageNumber, @RequestParam(name="pageSize",required=false,defaultValue="25") int pageSize, @RequestParam(name="active",required=false) String active)
-
getFileResources
@ApiMethod(description="Get file resources of a digital object") @GetMapping(value={"/latest/digitalobjects/{uuid}/fileresources","/v2/digitalobjects/{uuid}/fileresources"}, produces="application/json") @ApiResponseObject public List<de.digitalcollections.model.api.identifiable.resource.FileResource> getFileResources(@PathVariable UUID uuid)
-
getImageFileResources
@ApiMethod(description="Get image file resources of a digital object") @GetMapping(value={"/latest/digitalobjects/{uuid}/fileresources/images","/v2/digitalobjects/{uuid}/fileresources/images"}, produces="application/json") @ApiResponseObject public List<de.digitalcollections.model.api.identifiable.resource.ImageFileResource> getImageFileResources(@PathVariable UUID uuid)
-
getProjects
@ApiMethod(description="Get paged projects of a digital objects") @GetMapping(value={"/latest/digitalobjects/{uuid}/projects","/v3/digitalobjects/{uuid}/projects"}, produces="application/json") @ApiResponseObject public de.digitalcollections.model.api.paging.PageResponse<de.digitalcollections.model.api.identifiable.entity.Project> getProjects(@ApiPathParam(description="UUID of the digital object") @PathVariable("uuid") UUID uuid, @RequestParam(name="pageNumber",required=false,defaultValue="0") int pageNumber, @RequestParam(name="pageSize",required=false,defaultValue="25") int pageSize)
-
save
@ApiMethod(description="Save a newly created digital object") @PostMapping(value={"/latest/digitalobjects","/v2/digitalobjects"}, produces="application/json") @ApiResponseObject public de.digitalcollections.model.api.identifiable.entity.DigitalObject save(@RequestBody de.digitalcollections.model.api.identifiable.entity.DigitalObject digitalObject, org.springframework.validation.BindingResult errors) throws IdentifiableServiceException- Throws:
IdentifiableServiceException
-
saveFileResources
@ApiMethod(description="Save list of fileresources for a given digital object") @PostMapping(value={"/latest/digitalobjects/{uuid}/fileresources","/v3/digitalobjects/{uuid}/fileresources"}, produces="application/json") @ApiResponseObject public List<de.digitalcollections.model.api.identifiable.resource.FileResource> saveFileResources(@ApiPathParam(description="UUID of the digital object") @PathVariable("uuid") UUID uuid, @RequestBody List<de.digitalcollections.model.api.identifiable.resource.FileResource> fileResources)
-
update
@ApiMethod(description="Update a digital object") @PutMapping(value={"/latest/digitalobjects/{uuid}","/v2/digitalobjects/{uuid}"}, produces="application/json") @ApiResponseObject public de.digitalcollections.model.api.identifiable.entity.DigitalObject update(@ApiPathParam(description="UUID of the digital object") @PathVariable("uuid") UUID uuid, @RequestBody de.digitalcollections.model.api.identifiable.entity.DigitalObject digitalObject, org.springframework.validation.BindingResult errors) throws IdentifiableServiceException- Throws:
IdentifiableServiceException
-
-