Skip to content

Commit 71c594e

Browse files
toine-at-estGerrit Code Review
authored andcommitted
Merge "Fix Sonarcube violations"
2 parents f37790c + aaa80aa commit 71c594e

3 files changed

Lines changed: 56 additions & 71 deletions

File tree

‎cps-ncmp-rest/src/main/java/org/onap/cps/ncmp/rest/controller/ProvMnsController.java‎

Lines changed: 49 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -79,20 +79,17 @@ public ResponseEntity<Object> getMoi(final HttpServletRequest httpServletRequest
7979
final YangModelCmHandle yangModelCmHandle = inventoryPersistence.getYangModelCmHandle(
8080
alternateIdMatcher.getCmHandleIdByLongestMatchingAlternateId(
8181
requestPathParameters.toAlternateId(), "/"));
82-
try {
83-
checkTarget(yangModelCmHandle);
84-
} catch (final ProvMnSException exception) {
85-
final HttpStatus httpStatus = "NOT READY".equals(exception.getMessage())
86-
? HttpStatus.NOT_ACCEPTABLE : HttpStatus.UNPROCESSABLE_ENTITY;
87-
return errorResponseBuilder.buildErrorResponseGet(httpStatus, exception.getDetails());
88-
}
82+
checkTarget(yangModelCmHandle);
8983
final UrlTemplateParameters urlTemplateParameters = parametersBuilder.createUrlTemplateParametersForRead(
9084
scope, filter, attributes, fields, dataNodeSelector, yangModelCmHandle, requestPathParameters);
9185
return dmiRestClient.synchronousGetOperation(
9286
RequiredDmiService.DATA, urlTemplateParameters);
9387
} catch (final NoAlternateIdMatchFoundException noAlternateIdMatchFoundException) {
9488
final String reason = buildNotFoundMessage(requestPathParameters.toAlternateId());
9589
return errorResponseBuilder.buildErrorResponseGet(HttpStatus.NOT_FOUND, reason);
90+
} catch (final ProvMnSException exception) {
91+
return errorResponseBuilder.buildErrorResponseGet(
92+
getHttpStatusForProvMnSException(exception), exception.getDetails());
9693
}
9794
}
9895

@@ -105,32 +102,26 @@ public ResponseEntity<Object> patchMoi(final HttpServletRequest httpServletReque
105102
final YangModelCmHandle yangModelCmHandle = inventoryPersistence.getYangModelCmHandle(
106103
alternateIdMatcher.getCmHandleIdByLongestMatchingAlternateId(
107104
requestPathParameters.toAlternateId(), "/"));
108-
try {
109-
checkTarget(yangModelCmHandle);
110-
} catch (final ProvMnSException exception) {
111-
final HttpStatus httpStatus = "NOT READY".equals(exception.getMessage())
112-
? HttpStatus.NOT_ACCEPTABLE : HttpStatus.UNPROCESSABLE_ENTITY;
113-
return errorResponseBuilder.buildErrorResponsePatch(httpStatus, exception.getDetails());
114-
}
115-
try {
116-
policyExecutor.checkPermission(yangModelCmHandle,
117-
OperationType.CREATE,
118-
NO_AUTHORIZATION,
119-
requestPathParameters.toAlternateId(),
120-
jsonObjectMapper.asJsonString(policyExecutor.buildPatchOperationDetails(
121-
requestPathParameters, patchItems))
122-
);
123-
} catch (final RuntimeException exception) {
124-
// Policy Executor Denied Execution
125-
return errorResponseBuilder.buildErrorResponsePatch(HttpStatus.NOT_ACCEPTABLE, exception.getMessage());
126-
}
105+
checkTarget(yangModelCmHandle);
106+
policyExecutor.checkPermission(yangModelCmHandle,
107+
OperationType.CREATE,
108+
NO_AUTHORIZATION,
109+
requestPathParameters.toAlternateId(),
110+
jsonObjectMapper.asJsonString(
111+
policyExecutor.buildPatchOperationDetails(requestPathParameters, patchItems))
112+
);
127113
final UrlTemplateParameters urlTemplateParameters =
128114
parametersBuilder.createUrlTemplateParametersForWrite(yangModelCmHandle, requestPathParameters);
129115
return dmiRestClient.synchronousPatchOperation(RequiredDmiService.DATA, patchItems,
130116
urlTemplateParameters, httpServletRequest.getContentType());
131117
} catch (final NoAlternateIdMatchFoundException noAlternateIdMatchFoundException) {
132118
final String reason = buildNotFoundMessage(requestPathParameters.toAlternateId());
133119
return errorResponseBuilder.buildErrorResponsePatch(HttpStatus.NOT_FOUND, reason);
120+
} catch (final ProvMnSException exception) {
121+
return errorResponseBuilder.buildErrorResponsePatch(
122+
getHttpStatusForProvMnSException(exception), exception.getDetails());
123+
} catch (final RuntimeException exception) {
124+
return errorResponseBuilder.buildErrorResponsePatch(HttpStatus.NOT_ACCEPTABLE, exception.getMessage());
134125
}
135126
}
136127

@@ -142,31 +133,25 @@ public ResponseEntity<Object> putMoi(final HttpServletRequest httpServletRequest
142133
final YangModelCmHandle yangModelCmHandle = inventoryPersistence.getYangModelCmHandle(
143134
alternateIdMatcher.getCmHandleIdByLongestMatchingAlternateId(
144135
requestPathParameters.toAlternateId(), "/"));
145-
try {
146-
checkTarget(yangModelCmHandle);
147-
} catch (final ProvMnSException exception) {
148-
final HttpStatus httpStatus = "NOT READY".equals(exception.getMessage())
149-
? HttpStatus.NOT_ACCEPTABLE : HttpStatus.UNPROCESSABLE_ENTITY;
150-
return errorResponseBuilder.buildErrorResponseDefault(httpStatus, exception.getDetails());
151-
}
152-
try {
153-
policyExecutor.checkPermission(yangModelCmHandle,
154-
OperationType.CREATE,
155-
NO_AUTHORIZATION,
156-
requestPathParameters.toAlternateId(),
157-
jsonObjectMapper.asJsonString(policyExecutor.buildCreateOperationDetails(
158-
OperationType.CREATE, requestPathParameters, resource))
159-
);
160-
} catch (final RuntimeException exception) {
161-
return errorResponseBuilder.buildErrorResponseDefault(HttpStatus.NOT_ACCEPTABLE,
162-
exception.getMessage());
163-
}
136+
checkTarget(yangModelCmHandle);
137+
policyExecutor.checkPermission(yangModelCmHandle,
138+
OperationType.CREATE,
139+
NO_AUTHORIZATION,
140+
requestPathParameters.toAlternateId(),
141+
jsonObjectMapper.asJsonString(
142+
policyExecutor.buildCreateOperationDetails(OperationType.CREATE, requestPathParameters, resource))
143+
);
164144
final UrlTemplateParameters urlTemplateParameters =
165145
parametersBuilder.createUrlTemplateParametersForWrite(yangModelCmHandle, requestPathParameters);
166146
return dmiRestClient.synchronousPutOperation(RequiredDmiService.DATA, resource, urlTemplateParameters);
167147
} catch (final NoAlternateIdMatchFoundException noAlternateIdMatchFoundException) {
168148
final String reason = buildNotFoundMessage(requestPathParameters.toAlternateId());
169149
return errorResponseBuilder.buildErrorResponseDefault(HttpStatus.NOT_FOUND, reason);
150+
} catch (final ProvMnSException exception) {
151+
return errorResponseBuilder.buildErrorResponseDefault(
152+
getHttpStatusForProvMnSException(exception), exception.getDetails());
153+
} catch (final RuntimeException exception) {
154+
return errorResponseBuilder.buildErrorResponseDefault(HttpStatus.NOT_ACCEPTABLE, exception.getMessage());
170155
}
171156
}
172157

@@ -178,31 +163,26 @@ public ResponseEntity<Object> deleteMoi(final HttpServletRequest httpServletRequ
178163
final YangModelCmHandle yangModelCmHandle = inventoryPersistence.getYangModelCmHandle(
179164
alternateIdMatcher.getCmHandleIdByLongestMatchingAlternateId(
180165
requestPathParameters.toAlternateId(), "/"));
181-
try {
182-
checkTarget(yangModelCmHandle);
183-
} catch (final ProvMnSException exception) {
184-
final HttpStatus httpStatus = "NOT READY".equals(exception.getMessage())
185-
? HttpStatus.NOT_ACCEPTABLE : HttpStatus.UNPROCESSABLE_ENTITY;
186-
return errorResponseBuilder.buildErrorResponseDefault(httpStatus, exception.getDetails());
187-
}
188-
try {
189-
policyExecutor.checkPermission(yangModelCmHandle,
190-
OperationType.DELETE,
191-
NO_AUTHORIZATION,
192-
requestPathParameters.toAlternateId(),
193-
jsonObjectMapper.asJsonString(policyExecutor.buildDeleteOperationDetails(
194-
requestPathParameters.toAlternateId()))
195-
);
196-
} catch (final RuntimeException exception) {
197-
return errorResponseBuilder.buildErrorResponseDefault(HttpStatus.NOT_ACCEPTABLE,
198-
exception.getMessage());
199-
}
166+
checkTarget(yangModelCmHandle);
167+
policyExecutor.checkPermission(yangModelCmHandle,
168+
OperationType.DELETE,
169+
NO_AUTHORIZATION,
170+
requestPathParameters.toAlternateId(),
171+
jsonObjectMapper.asJsonString(
172+
policyExecutor.buildDeleteOperationDetails(requestPathParameters.toAlternateId()))
173+
);
200174
final UrlTemplateParameters urlTemplateParameters =
201175
parametersBuilder.createUrlTemplateParametersForWrite(yangModelCmHandle, requestPathParameters);
202176
return dmiRestClient.synchronousDeleteOperation(RequiredDmiService.DATA, urlTemplateParameters);
203177
} catch (final NoAlternateIdMatchFoundException noAlternateIdMatchFoundException) {
204178
final String reason = buildNotFoundMessage(requestPathParameters.toAlternateId());
205179
return errorResponseBuilder.buildErrorResponseDefault(HttpStatus.NOT_FOUND, reason);
180+
} catch (final ProvMnSException exception) {
181+
return errorResponseBuilder.buildErrorResponseDefault(
182+
getHttpStatusForProvMnSException(exception), exception.getDetails());
183+
} catch (final RuntimeException exception) {
184+
return errorResponseBuilder.buildErrorResponseDefault(HttpStatus.NOT_ACCEPTABLE,
185+
exception.getMessage());
206186
}
207187
}
208188

@@ -224,4 +204,9 @@ private String buildNotFoundMessage(final String alternateId) {
224204
return alternateId + " not found";
225205
}
226206

207+
private HttpStatus getHttpStatusForProvMnSException(final ProvMnSException exception) {
208+
return "NOT READY".equals(exception.getMessage())
209+
? HttpStatus.NOT_ACCEPTABLE : HttpStatus.UNPROCESSABLE_ENTITY;
210+
}
211+
227212
}

‎cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/data/policyexecutor/PolicyExecutor.java‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ public PatchOperationsDetails buildPatchOperationDetails(final RequestPathParame
147147
case REMOVE -> operations.add(
148148
buildDeleteOperationDetails(requestPathParameters.toAlternateId()));
149149
default -> log.warn("Unsupported Patch Operation Type:{}", patchItem.getOp().getValue());
150-
};
150+
}
151151
}
152152
return new PatchOperationsDetails("Some Permission Id", CHANGE_REQUEST_FORMAT, operations);
153153
}

‎cps-ncmp-service/src/main/java/org/onap/cps/ncmp/impl/dmi/DmiRestClient.java‎

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -276,12 +276,12 @@ private Mono<ResponseEntity<Object>> createIdenticalResponseForClient(final Clie
276276
final HttpStatus status = (HttpStatus) clientResponse.statusCode();
277277
return clientResponse.bodyToMono(String.class)
278278
.defaultIfEmpty("")
279-
.map(body -> {
280-
return ResponseEntity
281-
.status(status)
282-
.headers(clientResponse.headers().asHttpHeaders())
283-
.body(body);
284-
});
279+
.map(body ->
280+
ResponseEntity
281+
.status(status)
282+
.headers(clientResponse.headers().asHttpHeaders())
283+
.body(body)
284+
);
285285
}
286286

287287
}

0 commit comments

Comments
 (0)