Class ItemController
java.lang.Object
de.digitalcollections.cudami.server.controller.AbstractPagingAndSortingController
de.digitalcollections.cudami.server.controller.AbstractUniqueObjectController<T>
de.digitalcollections.cudami.server.controller.identifiable.AbstractIdentifiableController<E>
de.digitalcollections.cudami.server.controller.AbstractEntityController<de.digitalcollections.model.identifiable.entity.item.Item>
de.digitalcollections.cudami.server.controller.identifiable.entity.work.ItemController
@RestController
public class ItemController
extends AbstractEntityController<de.digitalcollections.model.identifiable.entity.item.Item>
-
Field Summary
Fields inherited from class de.digitalcollections.cudami.server.controller.AbstractUniqueObjectController
LOGGER -
Constructor Summary
ConstructorsConstructorDescriptionItemController(DigitalObjectService digitalObjectService, ItemService itemService, WorkService workService) -
Method Summary
Modifier and TypeMethodDescriptionorg.springframework.http.ResponseEntityaddDigitalObject(UUID uuid, UUID digitalObjectUuid) longcount()org.springframework.http.ResponseEntityde.digitalcollections.model.list.paging.PageResponse<de.digitalcollections.model.identifiable.entity.item.Item>find(int pageNumber, int pageSize, List<de.digitalcollections.model.list.sorting.Order> sortBy, List<de.digitalcollections.model.list.filtering.FilterCriterion> filterCriteria, de.digitalcollections.model.list.filtering.Filtering filtering) de.digitalcollections.model.list.paging.PageResponse<de.digitalcollections.model.identifiable.entity.digitalobject.DigitalObject>findDigitalObjects(UUID uuid, int pageNumber, int pageSize, List<de.digitalcollections.model.list.sorting.Order> sortBy) org.springframework.http.ResponseEntity<Void>getByIdentifier(String namespace, String id, javax.servlet.http.HttpServletRequest request) org.springframework.http.ResponseEntity<de.digitalcollections.model.identifiable.entity.item.Item>getByIdentifier(javax.servlet.http.HttpServletRequest request) de.digitalcollections.model.list.paging.PageResponse<de.digitalcollections.model.identifiable.entity.item.Item>getByManyUuids(List<UUID> uuids) org.springframework.http.ResponseEntity<de.digitalcollections.model.identifiable.entity.item.Item>de.digitalcollections.model.list.paging.PageResponse<de.digitalcollections.model.identifiable.entity.item.Item>getByUuids(List<UUID> uuids) protected EntityService<de.digitalcollections.model.identifiable.entity.item.Item>Set<de.digitalcollections.model.identifiable.entity.work.Work>org.springframework.http.ResponseEntityremoveAllChildrenOfParentItem(UUID parentItemUuid) org.springframework.http.ResponseEntityremoveParentItem(UUID uuid, UUID parentItemUuid) de.digitalcollections.model.identifiable.entity.item.Itemsave(de.digitalcollections.model.identifiable.entity.item.Item item, org.springframework.validation.BindingResult errors) de.digitalcollections.model.identifiable.entity.item.Itemupdate(UUID uuid, de.digitalcollections.model.identifiable.entity.item.Item item, org.springframework.validation.BindingResult errors) Methods inherited from class de.digitalcollections.cudami.server.controller.AbstractEntityController
getByRefIdMethods inherited from class de.digitalcollections.cudami.server.controller.identifiable.AbstractIdentifiableController
extractNamespaceAndIdMethods inherited from class de.digitalcollections.cudami.server.controller.AbstractUniqueObjectController
buildExamplesWithUuids, buildExampleWithUuid, delete, getByUuid, getByUuidAndLocaleMethods inherited from class de.digitalcollections.cudami.server.controller.AbstractPagingAndSortingController
createPageRequest, getFieldType, mergeFilters
-
Constructor Details
-
ItemController
public ItemController(DigitalObjectService digitalObjectService, ItemService itemService, WorkService workService)
-
-
Method Details
-
addDigitalObject
@PostMapping(value={"/v6/items/{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}$}/digitalobjects/{digitalObjectUuid}","/v2/items/{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}$}/digitalobjects/{digitalObjectUuid}","/latest/items/{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}$}/digitalobjects/{digitalObjectUuid}"}, produces="application/json") public org.springframework.http.ResponseEntity addDigitalObject(@PathVariable UUID uuid, @PathVariable UUID digitalObjectUuid) throws ValidationException, ConflictException, ServiceException -
count
@GetMapping(value={"/v6/items/count","/v5/items/count","/v2/items/count","/latest/items/count"}, produces="application/json") public long count() throws ServiceException- Overrides:
countin classAbstractUniqueObjectController<de.digitalcollections.model.identifiable.entity.item.Item>- Throws:
ServiceException
-
delete
@DeleteMapping(value="/v6/items/{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") public org.springframework.http.ResponseEntity delete(@PathVariable("uuid") UUID uuid) throws ConflictException, ServiceException - Overrides:
deletein classAbstractUniqueObjectController<de.digitalcollections.model.identifiable.entity.item.Item>- Throws:
ConflictExceptionServiceException
-
find
@GetMapping(value="/v6/items", produces="application/json") public de.digitalcollections.model.list.paging.PageResponse<de.digitalcollections.model.identifiable.entity.item.Item> find(@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.list.sorting.Order> sortBy, @RequestParam(name="filter",required=false) List<de.digitalcollections.model.list.filtering.FilterCriterion> filterCriteria, @RequestParam(name="filtering",required=false) de.digitalcollections.model.list.filtering.Filtering filtering) throws ServiceException - Overrides:
findin classAbstractUniqueObjectController<de.digitalcollections.model.identifiable.entity.item.Item>- Throws:
ServiceException
-
findDigitalObjects
@GetMapping(value="/v6/items/{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}$}/digitalobjects", produces="application/json") public de.digitalcollections.model.list.paging.PageResponse<de.digitalcollections.model.identifiable.entity.digitalobject.DigitalObject> findDigitalObjects(@PathVariable UUID uuid, @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.list.sorting.Order> sortBy) throws ServiceException - Throws:
ServiceException
-
getByIdentifier
@GetMapping(value={"/v6/items/identifier/**","/v5/items/identifier/**","/v2/items/identifier/**","/latest/items/identifier/**"}, produces="application/json") public org.springframework.http.ResponseEntity<de.digitalcollections.model.identifiable.entity.item.Item> getByIdentifier(javax.servlet.http.HttpServletRequest request) throws ServiceException, ValidationException - Overrides:
getByIdentifierin classAbstractIdentifiableController<de.digitalcollections.model.identifiable.entity.item.Item>- Throws:
ServiceExceptionValidationException
-
getByIdentifier
@GetMapping(value={"/v6/items/identifier","/v5/items/identifier","/v2/items/identifier","/latest/items/identifier"}, produces="application/json") public org.springframework.http.ResponseEntity<Void> getByIdentifier(@RequestParam(name="namespace",required=true) String namespace, @RequestParam(name="id",required=true) String id, javax.servlet.http.HttpServletRequest request) throws ServiceException - Throws:
ServiceException
-
getByUuid
@GetMapping(value="/v6/items/{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") public org.springframework.http.ResponseEntity<de.digitalcollections.model.identifiable.entity.item.Item> getByUuid(@PathVariable("uuid") UUID uuid, @RequestParam(name="pLocale",required=false) Locale pLocale) throws ServiceException - Throws:
ServiceException
-
getByUuids
@GetMapping(value="/v6/items/list/{uuids}", produces="application/json") public de.digitalcollections.model.list.paging.PageResponse<de.digitalcollections.model.identifiable.entity.item.Item> getByUuids(@PathVariable List<UUID> uuids) throws ServiceException - Overrides:
getByUuidsin classAbstractUniqueObjectController<de.digitalcollections.model.identifiable.entity.item.Item>- Throws:
ServiceException
-
getByManyUuids
@PostMapping(value="/v6/items/list", produces="application/json") public de.digitalcollections.model.list.paging.PageResponse<de.digitalcollections.model.identifiable.entity.item.Item> getByManyUuids(@RequestBody List<UUID> uuids) throws ServiceException - Throws:
ServiceException
-
getLanguages
@GetMapping(value="/v6/items/languages", produces="application/json") public List<Locale> getLanguages() throws ServiceException- Overrides:
getLanguagesin classAbstractIdentifiableController<de.digitalcollections.model.identifiable.entity.item.Item>- Throws:
ServiceException
-
getLanguagesOfDigitalObjects
@GetMapping(value="/v6/items/{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}$}/digitalobjects/languages", produces="application/json") public List<Locale> getLanguagesOfDigitalObjects(@PathVariable UUID uuid) throws ServiceException - Throws:
ServiceException
-
getService
- Specified by:
getServicein classAbstractEntityController<de.digitalcollections.model.identifiable.entity.item.Item>
-
getWorks
@GetMapping(value={"/v6/items/{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}$}/works","/v2/items/{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}$}/works","/latest/items/{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}$}/works"}, produces="application/json") public Set<de.digitalcollections.model.identifiable.entity.work.Work> getWorks(@PathVariable UUID uuid) throws ServiceException - Throws:
ServiceException
-
removeParentItem
@DeleteMapping(value="/v6/items/{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}$}/parent/{parentItemUuid:^[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") public org.springframework.http.ResponseEntity removeParentItem(@PathVariable("uuid") UUID uuid, @PathVariable("parentItemUuid") UUID parentItemUuid) throws ServiceException - Throws:
ServiceException
-
removeAllChildrenOfParentItem
@DeleteMapping(value="/v6/items/{parentItemUuid:^[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}$}/children/all", produces="application/json") public org.springframework.http.ResponseEntity removeAllChildrenOfParentItem(@PathVariable("parentItemUuid") UUID parentItemUuid) throws ServiceException - Throws:
ServiceException
-
save
@PostMapping(value={"/v6/items","/v5/items","/v2/items","/latest/items"}, produces="application/json") public de.digitalcollections.model.identifiable.entity.item.Item save(@RequestBody de.digitalcollections.model.identifiable.entity.item.Item item, org.springframework.validation.BindingResult errors) throws ServiceException, ValidationException - Overrides:
savein classAbstractUniqueObjectController<de.digitalcollections.model.identifiable.entity.item.Item>- Throws:
ServiceExceptionValidationException
-
update
@PutMapping(value={"/v6/items/{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}$}","/v5/items/{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/items/{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}$}","/latest/items/{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") public de.digitalcollections.model.identifiable.entity.item.Item update(@PathVariable("uuid") UUID uuid, @RequestBody de.digitalcollections.model.identifiable.entity.item.Item item, org.springframework.validation.BindingResult errors) throws ServiceException, ValidationException - Overrides:
updatein classAbstractUniqueObjectController<de.digitalcollections.model.identifiable.entity.item.Item>- Throws:
ServiceExceptionValidationException
-