Class CorporateBodyController


  • @RestController
    @Api(description="The corporate body controller",
         name="Corporate body controller")
    public class CorporateBodyController
    extends Object
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody fetchAndSaveByGndId​(String gndId)  
      de.digitalcollections.model.api.paging.PageResponse<de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody> findAll​(int pageNumber, int pageSize, String sortField, de.digitalcollections.model.api.paging.enums.Direction sortDirection, de.digitalcollections.model.api.paging.enums.NullHandling nullHandling)  
      org.springframework.http.ResponseEntity<de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody> get​(UUID uuid, Locale pLocale)  
      de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody getByIdentifier​(String namespace, String id)  
      de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody getByRefId​(long refId)  
      de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody save​(de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody corporateBody, org.springframework.validation.BindingResult errors)  
      de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody update​(UUID uuid, de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody corporateBody, org.springframework.validation.BindingResult errors)  
    • Constructor Detail

      • CorporateBodyController

        @Autowired
        public CorporateBodyController​(CorporateBodyService corporateBodyService)
    • Method Detail

      • fetchAndSaveByGndId

        @ApiMethod(description="Fetch a corporate body by GND-ID from external system and save it")
        @PostMapping(value={"/latest/corporatebodies/gnd/{gndId}","/v3/corporatebodies/gnd/{gndId}"},
                     produces="application/json")
        @ApiResponseObject
        public de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody fetchAndSaveByGndId​(@ApiPathParam(description="GND-ID of the corporate body, e.g. <tt>2007744-0</tt>") @PathVariable("gndId")
                                                                                                           String gndId)
                                                                                                    throws IdentifiableServiceException
        Throws:
        IdentifiableServiceException
      • findAll

        @ApiMethod(description="Get all corporate bodies")
        @GetMapping(value={"/latest/corporatebodies","/v2/corporatebodies"},
                    produces="application/json")
        @ApiResponseObject
        public de.digitalcollections.model.api.paging.PageResponse<de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody> findAll​(@RequestParam(name="pageNumber",required=false,defaultValue="0")
                                                                                                                                                    int pageNumber,
                                                                                                                                                    @RequestParam(name="pageSize",required=false,defaultValue="25")
                                                                                                                                                    int pageSize,
                                                                                                                                                    @RequestParam(name="sortField",required=false,defaultValue="lastModified")
                                                                                                                                                    String sortField,
                                                                                                                                                    @RequestParam(name="sortDirection",required=false,defaultValue="DESC")
                                                                                                                                                    de.digitalcollections.model.api.paging.enums.Direction sortDirection,
                                                                                                                                                    @RequestParam(name="nullHandling",required=false,defaultValue="NATIVE")
                                                                                                                                                    de.digitalcollections.model.api.paging.enums.NullHandling nullHandling)
      • get

        @ApiMethod(description="Get an corporate body as JSON or XML, depending on extension or <tt>format</tt> request parameter or accept header")
        @GetMapping(value={"/latest/corporatebodies/{uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}}","/v2/corporatebodies/{uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}}"},
                    produces={"application/json","application/xml"})
        @ApiResponseObject
        public org.springframework.http.ResponseEntity<de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody> get​(@ApiPathParam(description="UUID of the corporate body, e.g. <tt>599a120c-2dd5-11e8-b467-0ed5f89f718b</tt>") @PathVariable("uuid")
                                                                                                                                    UUID uuid,
                                                                                                                                    @ApiQueryParam(name="pLocale",description="Desired locale, e.g. <tt>de_DE</tt>. If unset, contents in all languages will be returned") @RequestParam(name="pLocale",required=false)
                                                                                                                                    Locale pLocale)
                                                                                                                             throws IdentifiableServiceException
        Throws:
        IdentifiableServiceException
      • getByIdentifier

        @ApiMethod(description="Get corporate body by namespace and id")
        @GetMapping(value={"/latest/corporatebodies/identifier/{namespace}:{id}","/v3/corporatebodies/identifier/{namespace}:{id}"},
                    produces="application/json")
        @ApiResponseObject
        public de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody getByIdentifier​(@ApiPathParam(description="namespace of identifier") @PathVariable("namespace")
                                                                                                       String namespace,
                                                                                                       @ApiPathParam(description="id of identifier") @PathVariable("id")
                                                                                                       String id)
                                                                                                throws IdentifiableServiceException
        Throws:
        IdentifiableServiceException
      • getByRefId

        @ApiMethod(description="Get corporate body by refId")
        @GetMapping(value={"/latest/corporatebodies/{refId:[0-9]+}","/v3/corporatebodies/{refId:[0-9]+}"},
                    produces="application/json")
        @ApiResponseObject
        public de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody getByRefId​(@ApiPathParam(description="reference id") @PathVariable("refId")
                                                                                                  long refId)
                                                                                           throws IdentifiableServiceException
        Throws:
        IdentifiableServiceException
      • save

        @ApiMethod(description="Save a newly created corporate body")
        @PostMapping(value={"/latest/corporatebodies","/v2/corporatebodies"},
                     produces="application/json")
        @ApiResponseObject
        public de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody save​(@RequestBody
                                                                                            de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody corporateBody,
                                                                                            org.springframework.validation.BindingResult errors)
                                                                                     throws IdentifiableServiceException
        Throws:
        IdentifiableServiceException
      • update

        @ApiMethod(description="Update a corporate body")
        @PutMapping(value={"/latest/corporatebodies/{uuid}","/v2/corporatebodies/{uuid}"},
                    produces="application/json")
        @ApiResponseObject
        public de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody update​(@ApiPathParam(description="UUID of the corporate body, e.g. <tt>599a120c-2dd5-11e8-b467-0ed5f89f718b</tt>") @PathVariable("uuid")
                                                                                              UUID uuid,
                                                                                              @RequestBody
                                                                                              de.digitalcollections.model.api.identifiable.entity.agent.CorporateBody corporateBody,
                                                                                              org.springframework.validation.BindingResult errors)
                                                                                       throws IdentifiableServiceException
        Throws:
        IdentifiableServiceException