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 java.lang.Object
-
Constructor Summary
Constructors Constructor Description DigitalObjectController() -
Method Summary
Modifier and Type Method Description longcount()org.springframework.http.ResponseEntitydelete(java.util.UUID uuid)de.digitalcollections.model.api.paging.PageResponse<de.digitalcollections.model.api.identifiable.entity.DigitalObject>findAll(int pageNumber, int pageSize, java.util.List<de.digitalcollections.model.api.paging.Order> sortBy)java.util.List<de.digitalcollections.model.api.identifiable.entity.DigitalObject>findAllReduced()de.digitalcollections.model.api.identifiable.entity.DigitalObjectfindById(java.util.UUID uuid)de.digitalcollections.model.api.identifiable.entity.DigitalObjectfindByIdentifier(java.lang.String namespace, java.lang.String id)de.digitalcollections.model.api.paging.SearchPageResponse<de.digitalcollections.model.api.identifiable.entity.DigitalObject>findDigitalObjects(int pageNumber, int pageSize, java.util.List<de.digitalcollections.model.api.paging.Order> sortBy, java.lang.String searchTerm)de.digitalcollections.model.api.identifiable.entity.work.ItemfindItemOfDigitalObject(java.util.UUID uuid)java.util.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(java.util.UUID uuid, int pageNumber, int pageSize, java.lang.String active)java.util.List<de.digitalcollections.model.api.identifiable.resource.FileResource>getFileResources(java.util.UUID uuid)java.util.List<de.digitalcollections.model.api.identifiable.resource.ImageFileResource>getImageFileResources(java.util.UUID uuid)de.digitalcollections.model.api.paging.PageResponse<de.digitalcollections.model.api.identifiable.entity.Project>getProjects(java.util.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)java.util.List<de.digitalcollections.model.api.identifiable.resource.FileResource>saveFileResources(java.util.UUID uuid, java.util.List<de.digitalcollections.model.api.identifiable.resource.FileResource> fileResources)de.digitalcollections.model.api.identifiable.entity.DigitalObjectupdate(java.util.UUID uuid, de.digitalcollections.model.api.identifiable.entity.DigitalObject digitalObject, org.springframework.validation.BindingResult errors)
-
Constructor Details
-
DigitalObjectController
public DigitalObjectController()
-
-
Method Details
-
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") java.util.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) java.util.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 java.util.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 java.util.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") java.lang.String namespace, @ApiPathParam(description="value of the identifier") @PathVariable("id") java.lang.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) java.util.List<de.digitalcollections.model.api.paging.Order> sortBy, @RequestParam(name="searchTerm",required=false) java.lang.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 java.util.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 java.util.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") java.util.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) java.lang.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 java.util.List<de.digitalcollections.model.api.identifiable.resource.FileResource> getFileResources(@PathVariable java.util.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 java.util.List<de.digitalcollections.model.api.identifiable.resource.ImageFileResource> getImageFileResources(@PathVariable java.util.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") java.util.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 java.util.List<de.digitalcollections.model.api.identifiable.resource.FileResource> saveFileResources(@ApiPathParam(description="UUID of the digital object") @PathVariable("uuid") java.util.UUID uuid, @RequestBody java.util.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") java.util.UUID uuid, @RequestBody de.digitalcollections.model.api.identifiable.entity.DigitalObject digitalObject, org.springframework.validation.BindingResult errors) throws IdentifiableServiceException- Throws:
IdentifiableServiceException
-