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
    long count()  
    org.springframework.http.ResponseEntity delete​(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.DigitalObject findById​(java.util.UUID uuid)  
    de.digitalcollections.model.api.identifiable.entity.DigitalObject findByIdentifier​(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.Item findItemOfDigitalObject​(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.DigitalObject save​(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.DigitalObject update​(java.util.UUID uuid, de.digitalcollections.model.api.identifiable.entity.DigitalObject digitalObject, org.springframework.validation.BindingResult errors)  

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

  • 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