Target attributes update can be (re-)triggered by management API (#690)
* extend Management API with attribute `requestAttributes` * introduce new DMF Event Topic `REQUEST_ATTRIBUTES_UPDATE` * enhance REST documentation by new functionality * add tests for: * Management API * Amqp Message Dispatcher Service * Repository (Target Management) Signed-off-by: Jeroen Jan Laverman (INST/ESY3) <jeroen.laverman@bosch-si.com>
This commit is contained in:
committed by
Dominic Schabel
parent
f4340098d9
commit
ecfe774e53
@@ -133,6 +133,7 @@ public final class MgmtTargetMapper {
|
||||
targetRest.setLastModifiedAt(target.getLastModifiedAt());
|
||||
|
||||
targetRest.setSecurityToken(target.getSecurityToken());
|
||||
targetRest.setRequestAttributes(target.isRequestControllerAttributes());
|
||||
|
||||
// last target query is the last controller request date
|
||||
final Long lastTargetQuery = target.getLastTargetQuery();
|
||||
|
||||
@@ -120,9 +120,18 @@ public class MgmtTargetResource implements MgmtTargetRestApi {
|
||||
public ResponseEntity<MgmtTarget> updateTarget(@PathVariable("controllerId") final String controllerId,
|
||||
@RequestBody final MgmtTargetRequestBody targetRest) {
|
||||
|
||||
if (targetRest.isRequestAttributes() != null) {
|
||||
if (targetRest.isRequestAttributes()) {
|
||||
targetManagement.requestControllerAttributes(controllerId);
|
||||
} else {
|
||||
return ResponseEntity.badRequest().build();
|
||||
}
|
||||
}
|
||||
|
||||
final Target updateTarget = this.targetManagement.update(entityFactory.target().update(controllerId)
|
||||
.name(targetRest.getName()).description(targetRest.getDescription()).address(targetRest.getAddress())
|
||||
.securityToken(targetRest.getSecurityToken()));
|
||||
.securityToken(targetRest.getSecurityToken()).requestAttributes(targetRest.isRequestAttributes()));
|
||||
|
||||
|
||||
final MgmtTarget response = MgmtTargetMapper.toResponse(updateTarget);
|
||||
MgmtTargetMapper.addPollStatus(updateTarget, response);
|
||||
|
||||
Reference in New Issue
Block a user