in service/src/main/java/org/apache/fineract/cn/deposit/service/rest/ProductInstanceRestController.java [179:200]
ResponseEntity<Void> postProductInstanceCommand(@PathVariable("identifier") final String identifier,
@RequestParam(value = "command", required = true) final String command) {
if (!this.productInstanceService.findByAccountIdentifier(identifier).isPresent()) {
throw ServiceException.notFound("Product instance {0} not found.", identifier);
}
switch (command.toUpperCase()) {
case EventConstants.ACTIVATE_PRODUCT_INSTANCE_COMMAND:
this.commandGateway.process(new ActivateProductInstanceCommand(identifier));
break;
case EventConstants.CLOSE_PRODUCT_INSTANCE_COMMAND:
this.commandGateway.process(new CloseProductInstanceCommand(identifier));
break;
case EventConstants.PRODUCT_INSTANCE_TRANSACTION:
this.commandGateway.process(new TransactionProcessedCommand(identifier));
break;
default:
throw ServiceException.badRequest("Unsupported command {0}", command);
}
return ResponseEntity.accepted().build();
}