TSK-222: REST-Endpoint get dist-targets by WB-ID.
This commit is contained in:
parent
3d3418e44b
commit
061e7e068e
|
@ -9,7 +9,6 @@ public enum WorkbasketAuthorization {
|
|||
APPEND,
|
||||
TRANSFER,
|
||||
DISTRIBUTE,
|
||||
DELETE,
|
||||
CUSTOM_1,
|
||||
CUSTOM_2,
|
||||
CUSTOM_3,
|
||||
|
|
|
@ -63,14 +63,11 @@ public class WorkbasketController {
|
|||
|
||||
List<WorkbasketSummary> workbasketsSummary;
|
||||
WorkbasketQuery query = workbasketService.createWorkbasketQuery();
|
||||
|
||||
try {
|
||||
|
||||
addSortingToQuery(query, sortBy, order);
|
||||
addAttributeFilter(query, name, nameLike, descLike, owner, ownerLike, type);
|
||||
addAuthorizationFilter(query, requiredPermission);
|
||||
workbasketsSummary = query.list();
|
||||
|
||||
} catch (InvalidArgumentException e) {
|
||||
return new ResponseEntity<>(HttpStatus.CONFLICT);
|
||||
} catch (InvalidRequestException e) {
|
||||
|
@ -95,7 +92,7 @@ public class WorkbasketController {
|
|||
}
|
||||
|
||||
@RequestMapping(method = RequestMethod.POST)
|
||||
public ResponseEntity<?> createWorkbasket(@RequestBody Workbasket workbasket) {
|
||||
public ResponseEntity<Workbasket> createWorkbasket(@RequestBody Workbasket workbasket) {
|
||||
Workbasket createdWorkbasket;
|
||||
try {
|
||||
createdWorkbasket = workbasketService.createWorkbasket(workbasket);
|
||||
|
@ -106,7 +103,7 @@ public class WorkbasketController {
|
|||
}
|
||||
|
||||
@RequestMapping(value = "/{workbasketkey}", method = RequestMethod.PUT)
|
||||
public ResponseEntity<?> updateWorkbasket(@PathVariable(value = "workbasketkey") String workbasketKey,
|
||||
public ResponseEntity<Workbasket> updateWorkbasket(@PathVariable(value = "workbasketkey") String workbasketKey,
|
||||
@RequestBody Workbasket workbasket) {
|
||||
try {
|
||||
Workbasket updatedWorkbasket = workbasketService.updateWorkbasket(workbasket);
|
||||
|
@ -121,20 +118,25 @@ public class WorkbasketController {
|
|||
}
|
||||
|
||||
@RequestMapping(value = "/{workbasketkey}/authorizations", method = RequestMethod.GET)
|
||||
public List<WorkbasketAccessItem> getWorkbasketAuthorizations(
|
||||
public ResponseEntity<List<WorkbasketAccessItem>> getWorkbasketAuthorizations(
|
||||
@PathVariable(value = "workbasketkey") String workbasketKey) {
|
||||
return workbasketService.getWorkbasketAuthorizations(workbasketKey);
|
||||
List<WorkbasketAccessItem> wbAuthorizations = workbasketService.getWorkbasketAuthorizations(workbasketKey);
|
||||
return new ResponseEntity<>(wbAuthorizations, HttpStatus.OK);
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/authorizations", method = RequestMethod.POST)
|
||||
public WorkbasketAccessItem createWorkbasketAuthorization(@RequestBody WorkbasketAccessItem workbasketAccessItem) {
|
||||
return workbasketService.createWorkbasketAuthorization(workbasketAccessItem);
|
||||
public ResponseEntity<WorkbasketAccessItem> createWorkbasketAuthorization(
|
||||
@RequestBody WorkbasketAccessItem workbasketAccessItem) {
|
||||
workbasketAccessItem = workbasketService.createWorkbasketAuthorization(workbasketAccessItem);
|
||||
return new ResponseEntity<>(workbasketAccessItem, HttpStatus.OK);
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/authorizations/{authid}", method = RequestMethod.PUT)
|
||||
public WorkbasketAccessItem updateWorkbasketAuthorization(@PathVariable(value = "authid") String authId,
|
||||
public ResponseEntity<WorkbasketAccessItem> updateWorkbasketAuthorization(
|
||||
@PathVariable(value = "authid") String authId,
|
||||
@RequestBody WorkbasketAccessItem workbasketAccessItem) throws InvalidArgumentException {
|
||||
return workbasketService.updateWorkbasketAuthorization(workbasketAccessItem);
|
||||
workbasketAccessItem = workbasketService.updateWorkbasketAuthorization(workbasketAccessItem);
|
||||
return new ResponseEntity<>(workbasketAccessItem, HttpStatus.OK);
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/authorizations/{authid}", method = RequestMethod.DELETE)
|
||||
|
@ -143,6 +145,25 @@ public class WorkbasketController {
|
|||
return ResponseEntity.status(HttpStatus.NO_CONTENT).build();
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/{workbasketId}/distributiontargets", method = RequestMethod.GET)
|
||||
public ResponseEntity<List<WorkbasketSummaryResource>> getDistributionTargetsForWorkbasketId(
|
||||
@PathVariable(value = "workbasketId") String workbasketId) {
|
||||
|
||||
ResponseEntity<List<WorkbasketSummaryResource>> result = new ResponseEntity<>(HttpStatus.NO_CONTENT);
|
||||
List<WorkbasketSummary> distributionTargets = null;
|
||||
try {
|
||||
distributionTargets = workbasketService.getDistributionTargets(workbasketId);
|
||||
result = new ResponseEntity<>(distributionTargets.stream()
|
||||
.map(workbasket -> workbasketSummaryMapper.toResource(workbasket))
|
||||
.collect(Collectors.toList()), HttpStatus.OK);
|
||||
} catch (WorkbasketNotFoundException e) {
|
||||
result = new ResponseEntity<>(HttpStatus.NOT_FOUND);
|
||||
} catch (NotAuthorizedException e) {
|
||||
result = new ResponseEntity<>(HttpStatus.UNAUTHORIZED);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
private void addAuthorizationFilter(WorkbasketQuery query, String requiredPermission)
|
||||
throws InvalidArgumentException {
|
||||
if (requiredPermission == null) {
|
||||
|
@ -167,9 +188,6 @@ public class WorkbasketController {
|
|||
case "DISTRIBUTE":
|
||||
query.callerHasPermission(WorkbasketAuthorization.DISTRIBUTE);
|
||||
break;
|
||||
case "DELETE":
|
||||
query.callerHasPermission(WorkbasketAuthorization.DELETE);
|
||||
break;
|
||||
case "CUSTOM_1":
|
||||
query.callerHasPermission(WorkbasketAuthorization.CUSTOM_1);
|
||||
break;
|
||||
|
|
|
@ -1 +1,10 @@
|
|||
INSERT INTO DISTRIBUTION_TARGETS VALUES ('1','2');
|
||||
INSERT INTO DISTRIBUTION_TARGETS VALUES ('WBI:100000000000000000000000000000000001','WBI:100000000000000000000000000000000002');
|
||||
INSERT INTO DISTRIBUTION_TARGETS VALUES ('WBI:100000000000000000000000000000000001','WBI:100000000000000000000000000000000003');
|
||||
INSERT INTO DISTRIBUTION_TARGETS VALUES ('WBI:100000000000000000000000000000000001','WBI:100000000000000000000000000000000004');
|
||||
INSERT INTO DISTRIBUTION_TARGETS VALUES ('WBI:100000000000000000000000000000000001','WBI:100000000000000000000000000000000005');
|
||||
INSERT INTO DISTRIBUTION_TARGETS VALUES ('WBI:100000000000000000000000000000000002','WBI:100000000000000000000000000000000003');
|
||||
INSERT INTO DISTRIBUTION_TARGETS VALUES ('WBI:100000000000000000000000000000000002','WBI:100000000000000000000000000000000004');
|
||||
INSERT INTO DISTRIBUTION_TARGETS VALUES ('WBI:100000000000000000000000000000000002','WBI:100000000000000000000000000000000006');
|
||||
INSERT INTO DISTRIBUTION_TARGETS VALUES ('WBI:100000000000000000000000000000000002','WBI:100000000000000000000000000000000007');
|
||||
INSERT INTO DISTRIBUTION_TARGETS VALUES ('WBI:100000000000000000000000000000000007','WBI:100000000000000000000000000000000001');
|
||||
|
|
Loading…
Reference in New Issue