in service/src/main/java/org/apache/fineract/cn/deposit/service/rest/ProductDefinitionRestController.java [151:170]
public ResponseEntity<Void> process(@PathVariable("identifier") final String identifier,
@RequestBody @Valid final ProductDefinitionCommand command) {
final Optional<ProductDefinition> optionalProductDefinition = this.productDefinitionService.findProductDefinition(identifier);
if (!optionalProductDefinition.isPresent()) {
throw ServiceException.notFound("Product definition {0} not found.", identifier);
} else {
switch (ProductDefinitionCommand.Action.valueOf(command.getAction())) {
case ACTIVATE:
this.commandGateway.process(new ActivateProductDefinitionCommand(identifier, command));
break;
case DEACTIVATE:
this.commandGateway.process(new DeactivateProductDefinitionCommand(identifier, command));
break;
default:
throw ServiceException.badRequest("Unsupported product definition command {0}.", command.getAction());
}
return ResponseEntity.accepted().build();
}
}