Class DigitalObjectController


  • @RestController
    @Api(description="The digital object controller",
         name="Digital object controller")
    public class DigitalObjectController
    extends Object
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      long count()  
      de.digitalcollections.model.api.paging.PageResponse<de.digitalcollections.model.api.identifiable.entity.DigitalObject> findAll​(int pageNumber, int pageSize, String sortField, de.digitalcollections.model.api.paging.enums.Direction sortDirection, de.digitalcollections.model.api.paging.enums.NullHandling nullHandling)  
      de.digitalcollections.model.api.identifiable.entity.DigitalObject findById​(UUID uuid)  
      de.digitalcollections.model.api.identifiable.entity.DigitalObject findByIdentifier​(String namespace, String id)  
      de.digitalcollections.model.api.paging.SearchPageResponse<de.digitalcollections.model.api.identifiable.entity.DigitalObject> findDigitalObjects​(int pageNumber, int pageSize, String sortField, de.digitalcollections.model.api.paging.enums.Direction sortDirection, de.digitalcollections.model.api.paging.enums.NullHandling nullHandling, String searchTerm)  
      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.identifiable.entity.DigitalObject save​(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.DigitalObject update​(UUID uuid, de.digitalcollections.model.api.identifiable.entity.DigitalObject digitalObject, org.springframework.validation.BindingResult errors)  
    • Constructor Detail

      • DigitalObjectController

        public DigitalObjectController()
    • 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()
      • 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="5")
                                                                                                                                              int pageSize,
                                                                                                                                              @RequestParam(name="sortField",required=false,defaultValue="uuid")
                                                                                                                                              String sortField,
                                                                                                                                              @RequestParam(name="sortDirection",required=false,defaultValue="ASC")
                                                                                                                                              de.digitalcollections.model.api.paging.enums.Direction sortDirection,
                                                                                                                                              @RequestParam(name="nullHandling",required=false,defaultValue="NATIVE")
                                                                                                                                              de.digitalcollections.model.api.paging.enums.NullHandling nullHandling)
      • 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="sortField",required=false,defaultValue="uuid")
                                                                                                                                                               String sortField,
                                                                                                                                                               @RequestParam(name="sortDirection",required=false,defaultValue="ASC")
                                                                                                                                                               de.digitalcollections.model.api.paging.enums.Direction sortDirection,
                                                                                                                                                               @RequestParam(name="nullHandling",required=false,defaultValue="NATIVE")
                                                                                                                                                               de.digitalcollections.model.api.paging.enums.NullHandling nullHandling,
                                                                                                                                                               @RequestParam(name="searchTerm",required=false)
                                                                                                                                                               String searchTerm)
      • 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​(@PathVariable
                                                                                                  String namespace,
                                                                                                  @PathVariable
                                                                                                  String id)
                                                                                           throws IdentifiableServiceException
        Throws:
        IdentifiableServiceException
      • 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)
      • 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)
      • 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​(@PathVariable
                                                                                                          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​(@PathVariable
                                                                                        UUID uuid,
                                                                                        @RequestBody
                                                                                        de.digitalcollections.model.api.identifiable.entity.DigitalObject digitalObject,
                                                                                        org.springframework.validation.BindingResult errors)
                                                                                 throws IdentifiableServiceException
        Throws:
        IdentifiableServiceException