diff --git a/src/main/java/org/openepics/names/rest/api/v1/INames.java b/src/main/java/org/openepics/names/rest/api/v1/INames.java index e14b0e5e73c44ff6d66086855920d9a0f89fb0a1..3f7cd29a29b08884f5faaedef5db720a29b4f205 100644 --- a/src/main/java/org/openepics/names/rest/api/v1/INames.java +++ b/src/main/java/org/openepics/names/rest/api/v1/INames.java @@ -137,19 +137,19 @@ public interface INames { @ApiResponses(value = { @ApiResponse( responseCode = "201", - description = "Method completed OK. Return array of created name elements.", + description = "OK. Return array of created name elements.", content = @Content( mediaType = "application/json", array = @ArraySchema(schema = @Schema(implementation = NameElement.class)))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -196,19 +196,19 @@ public interface INames { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return paged array of name elements.", + description = "OK. Return paged array of name elements.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponsePageNameElements.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -245,19 +245,19 @@ public interface INames { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return paged array of name elements.", + description = "OK. Return paged array of name elements.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponsePageNameElements.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -293,19 +293,19 @@ public interface INames { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return paged array of name elements.", + description = "OK. Return paged array of name elements.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponsePageNameElements.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -341,19 +341,19 @@ public interface INames { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return paged array of name elements.", + description = "OK. Return paged array of name elements.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponsePageNameElements.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -389,19 +389,19 @@ public interface INames { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return paged array of name elements.", + description = "OK. Return paged array of name elements.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponsePageNameElements.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -431,19 +431,19 @@ public interface INames { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return name equivalence.", + description = "OK. Return name equivalence.", content = @Content( mediaType = "text/plain", schema = @Schema(implementation = String.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -472,20 +472,20 @@ public interface INames { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Response is true if name exists, false otherwise. " + description = "OK. Response is true if name exists, false otherwise. " + "Message and details are available if no response is available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponseBoolean.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -518,20 +518,20 @@ public interface INames { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Response is true if name is legacy name, false otherwise. " + description = "OK. Response is true if name is legacy name, false otherwise. " + "Message and details are available if no response is available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponseBoolean.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -564,20 +564,20 @@ public interface INames { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Response is true if name is valid to create, false otherwise. " + description = "OK. Response is true if name is valid to create, false otherwise. " + "Message and details are available if no response is available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponseBoolean.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -618,20 +618,20 @@ public interface INames { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Response is true if all name elements validated ok, false otherwise. " + description = "OK. Response is true if all name elements validated ok, false otherwise. " + "Responses contain array with result for each name element. Message and details are available if no response is available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponseBooleanList.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -682,20 +682,20 @@ public interface INames { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Response is true if all name elements validated ok, false otherwise. " + description = "OK. Response is true if all name elements validated ok, false otherwise. " + "Responses contain array with result for each name element. Message and details are available if no response is available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponseBooleanList.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -744,20 +744,20 @@ public interface INames { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Response is true if all name elements validated ok, false otherwise. " + description = "OK. Response is true if all name elements validated ok, false otherwise. " + "Responses contain array with result for each name element. Message and details are available if no response is available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponseBooleanList.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -806,19 +806,19 @@ public interface INames { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return array of updated name elements.", + description = "OK. Return array of updated name elements.", content = @Content( mediaType = "application/json", array = @ArraySchema(schema = @Schema(implementation = NameElement.class)))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -864,19 +864,19 @@ public interface INames { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return array of deleted name elements.", + description = "OK. Return array of deleted name elements.", content = @Content( mediaType = "application/json", array = @ArraySchema(schema = @Schema(implementation = NameElement.class)))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) diff --git a/src/main/java/org/openepics/names/rest/api/v1/IStructures.java b/src/main/java/org/openepics/names/rest/api/v1/IStructures.java index 73d6dbf80b9e83386cc939994ea3315960696bee..d49c221677b5e2326a82f1b90292ab5742047db1 100644 --- a/src/main/java/org/openepics/names/rest/api/v1/IStructures.java +++ b/src/main/java/org/openepics/names/rest/api/v1/IStructures.java @@ -161,19 +161,19 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "201", - description = "Method completed OK. Return array of structure elements for created structures (proposals).", + description = "OK. Return array of structure elements for created structures (proposals).", content = @Content( mediaType = "application/json", array = @ArraySchema(schema = @Schema(implementation = StructureElement.class)))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -222,19 +222,19 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return paged array of structure elements.", + description = "OK. Return paged array of structure elements.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponsePageStructureElements.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -275,19 +275,19 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return paged array of structure elements.", + description = "OK. Return paged array of structure elements.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponsePageStructureElements.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -324,19 +324,19 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return paged array of structure elements.", + description = "OK. Return paged array of structure elements.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponsePageStructureElements.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -372,19 +372,19 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return paged array of structure elements.", + description = "OK. Return paged array of structure elements.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponsePageStructureElements.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -421,19 +421,19 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return paged array of structure elements.", + description = "OK. Return paged array of structure elements.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponsePageStructureElements.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -464,19 +464,19 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return mnemonic equivalence.", + description = "OK. Return mnemonic equivalence.", content = @Content( mediaType = "text/plain", schema = @Schema(implementation = String.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -513,20 +513,20 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Response is true if mnemonic path exists, false otherwise. " + description = "OK. Response is true if mnemonic path exists, false otherwise. " + "Message and details are available if no response is available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponseBoolean.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -567,20 +567,20 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Response is true if structure is valid to create, false otherwise. " + description = "OK. Response is true if structure is valid to create, false otherwise. " + "Message and details are available if no response is available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponseBoolean.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -630,20 +630,20 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Response is true if all structure elements validated ok, false otherwise. " + description = "OK. Response is true if all structure elements validated ok, false otherwise. " + "Responses contain array with result for each structure element. Message and details are available if no response is available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponseBooleanList.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -702,20 +702,20 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Response is true if all structure elements validated ok, false otherwise. " + description = "OK. Response is true if all structure elements validated ok, false otherwise. " + "Responses contain array with result for each structure element. Message and details are available if no response is available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponseBooleanList.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -770,20 +770,20 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Response is true if all structure elements validated ok, false otherwise. " + description = "OK. Response is true if all structure elements validated ok, false otherwise. " + "Responses contain array with result for each structure element. Message and details are available if no response is available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponseBooleanList.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -842,20 +842,20 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Response is true if all structure elements validated ok, false otherwise. " + description = "OK. Response is true if all structure elements validated ok, false otherwise. " + "Responses contain array with result for each structure element. Message and details are available if no response is available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponseBooleanList.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -914,20 +914,20 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Response is true if all structure elements validated ok, false otherwise. " + description = "OK. Response is true if all structure elements validated ok, false otherwise. " + "Responses contain array with result for each structure element. Message and details are available if no response is available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponseBooleanList.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -986,20 +986,20 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Response is true if all structure elements validated ok, false otherwise. " + description = "OK. Response is true if all structure elements validated ok, false otherwise. " + "Responses contain array with result for each structure element. Message and details are available if no response is available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = ResponseBooleanList.class))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -1049,19 +1049,19 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return array of structure elements for updated structures (proposals).", + description = "OK. Return array of structure elements for updated structures (proposals).", content = @Content( mediaType = "application/json", array = @ArraySchema(schema = @Schema(implementation = StructureElement.class)))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -1108,19 +1108,19 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return array of structure elements for deleted structures (proposals).", + description = "OK. Return array of structure elements for deleted structures (proposals).", content = @Content( mediaType = "application/json", array = @ArraySchema(schema = @Schema(implementation = StructureElement.class)))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -1170,19 +1170,19 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return array of structure elements for approved structures.", + description = "OK. Return array of structure elements for approved structures.", content = @Content( mediaType = "application/json", array = @ArraySchema(schema = @Schema(implementation = StructureElement.class)))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -1230,19 +1230,19 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return array of structure elements for cancelled structures.", + description = "OK. Return array of structure elements for cancelled structures.", content = @Content( mediaType = "application/json", array = @ArraySchema(schema = @Schema(implementation = StructureElement.class)))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) @@ -1290,19 +1290,19 @@ public interface IStructures { @ApiResponses(value = { @ApiResponse( responseCode = "200", - description = "Method completed OK. Return array of structure elements for rejected structures.", + description = "OK. Return array of structure elements for rejected structures.", content = @Content( mediaType = "application/json", array = @ArraySchema(schema = @Schema(implementation = StructureElement.class)))), @ApiResponse( responseCode = "400", - description = "Bad request. Message and details are available.", + description = "Bad request. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))), @ApiResponse( responseCode = "500", - description = "Internal server error. Message and details are available.", + description = "Internal server error. Reason and information such as message, details, field are available.", content = @Content( mediaType = "application/json", schema = @Schema(implementation = Response.class))) diff --git a/src/main/java/org/openepics/names/rest/controller/GlobalControllerExceptionHandler.java b/src/main/java/org/openepics/names/rest/controller/GlobalControllerExceptionHandler.java index cc6dc3c9b53aa26158b797576e402ba59f972cce..c39844c21dc4eb2b9c96c14ef5064657a3be5c4c 100644 --- a/src/main/java/org/openepics/names/rest/controller/GlobalControllerExceptionHandler.java +++ b/src/main/java/org/openepics/names/rest/controller/GlobalControllerExceptionHandler.java @@ -55,9 +55,11 @@ public class GlobalControllerExceptionHandler extends ResponseEntityExceptionHan HttpStatus resultStatus = HttpStatus.INTERNAL_SERVER_ERROR; if (ex instanceof ServiceHttpStatusException) { + ServiceHttpStatusException shse = (ServiceHttpStatusException) ex; response.setMessage(StringUtils.trimToEmpty(ex.getMessage())); - response.setDetails(StringUtils.trimToEmpty(((ServiceHttpStatusException) ex).getDetails())); - resultStatus = ((ServiceHttpStatusException) ex).getHttpStatus(); + response.setDetails(StringUtils.trimToEmpty(shse.getDetails())); + response.setField(StringUtils.trimToEmpty(shse.getField())); + resultStatus = shse.getHttpStatus(); } return new ResponseEntity<>(response, Response.HEADER_JSON, resultStatus); diff --git a/src/main/java/org/openepics/names/rest/controller/NamesController.java b/src/main/java/org/openepics/names/rest/controller/NamesController.java index 5abce3cf096a72c4cfc2be5bc01bfad2611f9cdc..bd3b44236ddaf6243933c0c6e2132018aa868f3d 100644 --- a/src/main/java/org/openepics/names/rest/controller/NamesController.java +++ b/src/main/java/org/openepics/names/rest/controller/NamesController.java @@ -198,7 +198,7 @@ public class NamesController implements INames { } catch (ServiceHttpStatusException e) { LogUtil.logServiceHttpStatusException(LOGGER, Level.SEVERE, e); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); - return new ResponseEntity<>(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails()), Response.HEADER_JSON, HttpStatus.OK); + return new ResponseEntity<>(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails(), e.getField()), Response.HEADER_JSON, HttpStatus.OK); } catch (Exception e) { LOGGER.log(Level.SEVERE, e.getMessage()); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); @@ -213,7 +213,7 @@ public class NamesController implements INames { } catch (ServiceHttpStatusException e) { LogUtil.logServiceHttpStatusException(LOGGER, Level.SEVERE, e); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); - return new ResponseEntity<>(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails()), Response.HEADER_JSON, HttpStatus.OK); + return new ResponseEntity<>(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails(), e.getField()), Response.HEADER_JSON, HttpStatus.OK); } catch (Exception e) { LOGGER.log(Level.SEVERE, e.getMessage()); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); @@ -228,7 +228,7 @@ public class NamesController implements INames { } catch (ServiceHttpStatusException e) { LogUtil.logServiceHttpStatusException(LOGGER, Level.SEVERE, e); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); - return new ResponseEntity<>(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails()), Response.HEADER_JSON, HttpStatus.OK); + return new ResponseEntity<>(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails(), e.getField()), Response.HEADER_JSON, HttpStatus.OK); } catch (Exception e) { LOGGER.log(Level.SEVERE, e.getMessage()); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); @@ -254,7 +254,7 @@ public class NamesController implements INames { response = false; reason = ExceptionUtil.ONE_OR_MORE_ELEMENTS_ARE_NOT_CORRECT; } - responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails())); + responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails(), e.getField())); } catch (Exception e) { LOGGER.log(Level.SEVERE, e.getMessage()); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); @@ -284,7 +284,7 @@ public class NamesController implements INames { response = false; reason = ExceptionUtil.ONE_OR_MORE_ELEMENTS_ARE_NOT_CORRECT; } - responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails())); + responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails(), e.getField())); } catch (Exception e) { LOGGER.log(Level.SEVERE, e.getMessage()); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); @@ -314,7 +314,7 @@ public class NamesController implements INames { response = false; reason = ExceptionUtil.ONE_OR_MORE_ELEMENTS_ARE_NOT_CORRECT; } - responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails())); + responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails(), e.getField())); } catch (Exception e) { LOGGER.log(Level.SEVERE, e.getMessage()); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); diff --git a/src/main/java/org/openepics/names/rest/controller/StructuresController.java b/src/main/java/org/openepics/names/rest/controller/StructuresController.java index 1ca9d87edebec1583d9081074c296a39809f43ff..98f363309321f121ee1f07d301aed91ddc8066ca 100644 --- a/src/main/java/org/openepics/names/rest/controller/StructuresController.java +++ b/src/main/java/org/openepics/names/rest/controller/StructuresController.java @@ -211,7 +211,7 @@ public class StructuresController implements IStructures { } catch (ServiceHttpStatusException e) { LogUtil.logServiceHttpStatusException(LOGGER, Level.SEVERE, e); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); - return new ResponseEntity<>(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails()), Response.HEADER_JSON, HttpStatus.OK); + return new ResponseEntity<>(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails(), e.getField()), Response.HEADER_JSON, HttpStatus.OK); } catch (Exception e) { LOGGER.log(Level.SEVERE, e.getMessage()); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); @@ -226,7 +226,7 @@ public class StructuresController implements IStructures { } catch (ServiceHttpStatusException e) { LogUtil.logServiceHttpStatusException(LOGGER, Level.SEVERE, e); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); - return new ResponseEntity<>(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails()), Response.HEADER_JSON, HttpStatus.OK); + return new ResponseEntity<>(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails(), e.getField()), Response.HEADER_JSON, HttpStatus.OK); } catch (Exception e) { LOGGER.log(Level.SEVERE, e.getMessage()); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); @@ -252,7 +252,7 @@ public class StructuresController implements IStructures { response = false; reason = ExceptionUtil.ONE_OR_MORE_ELEMENTS_ARE_NOT_CORRECT; } - responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails())); + responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails(), e.getField())); } catch (Exception e) { LOGGER.log(Level.SEVERE, e.getMessage()); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); @@ -282,7 +282,7 @@ public class StructuresController implements IStructures { response = false; reason = ExceptionUtil.ONE_OR_MORE_ELEMENTS_ARE_NOT_CORRECT; } - responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails())); + responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails(), e.getField())); } catch (Exception e) { LOGGER.log(Level.SEVERE, e.getMessage()); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); @@ -312,7 +312,7 @@ public class StructuresController implements IStructures { response = false; reason = ExceptionUtil.ONE_OR_MORE_ELEMENTS_ARE_NOT_CORRECT; } - responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails())); + responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails(), e.getField())); } catch (Exception e) { LOGGER.log(Level.SEVERE, e.getMessage()); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); @@ -342,7 +342,7 @@ public class StructuresController implements IStructures { response = false; reason = ExceptionUtil.ONE_OR_MORE_ELEMENTS_ARE_NOT_CORRECT; } - responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails())); + responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails(), e.getField())); } catch (Exception e) { LOGGER.log(Level.SEVERE, e.getMessage()); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); @@ -372,7 +372,7 @@ public class StructuresController implements IStructures { response = false; reason = ExceptionUtil.ONE_OR_MORE_ELEMENTS_ARE_NOT_CORRECT; } - responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails())); + responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails(), e.getField())); } catch (Exception e) { LOGGER.log(Level.SEVERE, e.getMessage()); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); @@ -402,7 +402,7 @@ public class StructuresController implements IStructures { response = false; reason = ExceptionUtil.ONE_OR_MORE_ELEMENTS_ARE_NOT_CORRECT; } - responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails())); + responses.add(new ResponseBoolean(Boolean.FALSE, e.getMessage(), e.getDetails(), e.getField())); } catch (Exception e) { LOGGER.log(Level.SEVERE, e.getMessage()); LogUtil.logStackTraceElements(LOGGER, Level.SEVERE, e); diff --git a/src/main/java/org/openepics/names/service/NamesService.java b/src/main/java/org/openepics/names/service/NamesService.java index 2253996af7baf8c2c8a9c551fefe2210377e4a2b..bdf2c295c61d61ff5500d4ff8956e7feffe258d7 100644 --- a/src/main/java/org/openepics/names/service/NamesService.java +++ b/src/main/java/org/openepics/names/service/NamesService.java @@ -372,49 +372,49 @@ public class NamesService { // do List<Name> names = nameRepository.readNames(false, FieldName.NAME, name); - ValidateUtil.validateCondition(names != null && names.size() == 1, HttpStatus.BAD_REQUEST, "name not available", name); + ValidateUtil.validateCondition(names != null && names.size() == 1, HttpStatus.BAD_REQUEST, "name not available", name, null); Name toBeChecked = names.get(0); // system structure if (toBeChecked.getSystemgroupUuid() != null) { SystemGroup systemGroup = holderIRepositories.getSystemGroupRepository().findLatestNotDeletedByUuid(toBeChecked.getSystemgroupUuid().toString()); - ValidateUtil.validateCondition(systemGroup != null, HttpStatus.BAD_REQUEST, "system group not available", name); + ValidateUtil.validateCondition(systemGroup != null, HttpStatus.BAD_REQUEST, "system group not available", name, null); if (systemGroup.isDeleted()) { return Boolean.TRUE; } } else if (toBeChecked.getSystemUuid() != null) { org.openepics.names.repository.model.System system = holderIRepositories.getSystemRepository().findLatestNotDeletedByUuid(toBeChecked.getSystemUuid().toString()); - ValidateUtil.validateCondition(system != null, HttpStatus.BAD_REQUEST, "system not available", name); + ValidateUtil.validateCondition(system != null, HttpStatus.BAD_REQUEST, "system not available", name, null); if (system.isDeleted()) { return Boolean.TRUE; } SystemGroup systemGroup = holderIRepositories.getSystemGroupRepository().findLatestNotDeletedByUuid(system.getParentUuid().toString()); - ValidateUtil.validateCondition(systemGroup != null, HttpStatus.BAD_REQUEST, "system group not available", name); + ValidateUtil.validateCondition(systemGroup != null, HttpStatus.BAD_REQUEST, "system group not available", name, null); if (systemGroup.isDeleted()) { return Boolean.TRUE; } } else if (toBeChecked.getSubsystemUuid() != null) { Subsystem subsystem = holderIRepositories.getSubsystemRepository().findLatestNotDeletedByUuid(toBeChecked.getSubsystemUuid().toString()); - ValidateUtil.validateCondition(subsystem != null, HttpStatus.BAD_REQUEST, "subsystem not available", name); + ValidateUtil.validateCondition(subsystem != null, HttpStatus.BAD_REQUEST, "subsystem not available", name, null); if (subsystem.isDeleted()) { return Boolean.TRUE; } org.openepics.names.repository.model.System system = holderIRepositories.getSystemRepository().findLatestNotDeletedByUuid(subsystem.getParentUuid().toString()); - ValidateUtil.validateCondition(system != null, HttpStatus.BAD_REQUEST, "system not available", name); + ValidateUtil.validateCondition(system != null, HttpStatus.BAD_REQUEST, "system not available", name, null); if (system.isDeleted()) { return Boolean.TRUE; } SystemGroup systemGroup = holderIRepositories.getSystemGroupRepository().findLatestNotDeletedByUuid(system.getParentUuid().toString()); - ValidateUtil.validateCondition(systemGroup != null, HttpStatus.BAD_REQUEST, "system group not available", name); + ValidateUtil.validateCondition(systemGroup != null, HttpStatus.BAD_REQUEST, "system group not available", name, null); if (systemGroup.isDeleted()) { return Boolean.TRUE; @@ -423,21 +423,21 @@ public class NamesService { // device structure if (toBeChecked.getDevicetypeUuid() != null) { DeviceType deviceType = holderIRepositories.getDeviceTypeRepository().findLatestNotDeletedByUuid(toBeChecked.getDevicetypeUuid().toString()); - ValidateUtil.validateCondition(deviceType != null, HttpStatus.BAD_REQUEST, "device type not available", name); + ValidateUtil.validateCondition(deviceType != null, HttpStatus.BAD_REQUEST, "device type not available", name, null); if (deviceType.isDeleted()) { return Boolean.TRUE; } DeviceGroup deviceGroup = holderIRepositories.getDeviceGroupRepository().findLatestNotDeletedByUuid(deviceType.getParentUuid().toString()); - ValidateUtil.validateCondition(deviceGroup != null, HttpStatus.BAD_REQUEST, "device group not available", name); + ValidateUtil.validateCondition(deviceGroup != null, HttpStatus.BAD_REQUEST, "device group not available", name, null); if (deviceGroup.isDeleted()) { return Boolean.TRUE; } Discipline discipline = holderIRepositories.getDisciplineRepository().findLatestNotDeletedByUuid(deviceType.getParentUuid().toString()); - ValidateUtil.validateCondition(discipline != null, HttpStatus.BAD_REQUEST, "device group not available", name); + ValidateUtil.validateCondition(discipline != null, HttpStatus.BAD_REQUEST, "device group not available", name, null); if (discipline.isDeleted()) { return Boolean.TRUE; diff --git a/src/main/java/org/openepics/names/util/ExceptionUtil.java b/src/main/java/org/openepics/names/util/ExceptionUtil.java index e008c924d179ee661fea65a3d0e353e146b79727..d44c8525f083b586fbcc50bb74ad301e13c76644 100644 --- a/src/main/java/org/openepics/names/util/ExceptionUtil.java +++ b/src/main/java/org/openepics/names/util/ExceptionUtil.java @@ -167,12 +167,12 @@ public class ExceptionUtil { * @param status http status * @param message message * @param details details - * @param userFriendly user friendly + * @param field field * @param cause cause * @return service http status exception */ - protected static ServiceHttpStatusException createServiceHttpStatusException(HttpStatus status, String message, String details, String userFriendly, Throwable cause) { - return new ServiceHttpStatusException(status, message, details, userFriendly, cause); + protected static ServiceHttpStatusException createServiceHttpStatusException(HttpStatus status, String message, String details, String field, Throwable cause) { + return new ServiceHttpStatusException(status, message, details, field, cause); } /** @@ -180,10 +180,12 @@ public class ExceptionUtil { * Intended for communication inside server. * * @param message message + * @param details details + * @param field field * @return service http status exception */ - public static ServiceHttpStatusException createServiceHttpStatusExceptionBadRequest(String message, String details, String userFriendly) { - return createServiceHttpStatusException(HttpStatus.BAD_REQUEST, message, details, userFriendly, null); + public static ServiceHttpStatusException createServiceHttpStatusExceptionBadRequest(String message, String details, String field) { + return createServiceHttpStatusException(HttpStatus.BAD_REQUEST, message, details, field, null); } /** @@ -191,10 +193,12 @@ public class ExceptionUtil { * Intended for communication inside server. * * @param message message + * @param details details + * @param field field * @return service http status exception */ - public static ServiceHttpStatusException createServiceHttpStatusExceptionUnauthorized(String message, String details, String userFriendly) { - return createServiceHttpStatusException(HttpStatus.UNAUTHORIZED, message, details, userFriendly, null); + public static ServiceHttpStatusException createServiceHttpStatusExceptionUnauthorized(String message, String details, String field) { + return createServiceHttpStatusException(HttpStatus.UNAUTHORIZED, message, details, field, null); } /** @@ -202,10 +206,12 @@ public class ExceptionUtil { * Intended for communication inside server. * * @param message message + * @param details details + * @param field field * @return service http status exception */ - public static ServiceHttpStatusException createServiceHttpStatusExceptionForbidden(String message, String details, String userFriendly) { - return createServiceHttpStatusException(HttpStatus.FORBIDDEN, message, details, userFriendly, null); + public static ServiceHttpStatusException createServiceHttpStatusExceptionForbidden(String message, String details, String field) { + return createServiceHttpStatusException(HttpStatus.FORBIDDEN, message, details, field, null); } /** @@ -213,10 +219,12 @@ public class ExceptionUtil { * Intended for communication inside server. * * @param message message + * @param details details + * @param field field * @return service http status exception */ - public static ServiceHttpStatusException createServiceHttpStatusExceptionNotFound(String message, String details, String userFriendly) { - return createServiceHttpStatusException(HttpStatus.NOT_FOUND, message, details, userFriendly, null); + public static ServiceHttpStatusException createServiceHttpStatusExceptionNotFound(String message, String details, String field) { + return createServiceHttpStatusException(HttpStatus.NOT_FOUND, message, details, field, null); } /** @@ -224,10 +232,12 @@ public class ExceptionUtil { * Intended for communication inside server. * * @param message message + * @param details details + * @param field field * @return service http status exception */ - public static ServiceHttpStatusException createServiceHttpStatusExceptionConflict(String message, String details, String userFriendly) { - return createServiceHttpStatusException(HttpStatus.CONFLICT, message, details, userFriendly, null); + public static ServiceHttpStatusException createServiceHttpStatusExceptionConflict(String message, String details, String field) { + return createServiceHttpStatusException(HttpStatus.CONFLICT, message, details, field, null); } /** @@ -237,8 +247,8 @@ public class ExceptionUtil { * @param message message * @return service http status exception */ - public static ServiceHttpStatusException createServiceHttpStatusExceptionInternalServerError(String message, String details, String userFriendly) { - return createServiceHttpStatusException(HttpStatus.INTERNAL_SERVER_ERROR, message, details, userFriendly, null); + public static ServiceHttpStatusException createServiceHttpStatusExceptionInternalServerError(String message, String details, String field) { + return createServiceHttpStatusException(HttpStatus.INTERNAL_SERVER_ERROR, message, details, field, null); } /** @@ -248,8 +258,8 @@ public class ExceptionUtil { * @param message message * @return service http status exception */ - public static ServiceHttpStatusException createServiceHttpStatusExceptionNotImplemented(String message, String details, String userFriendly) { - return createServiceHttpStatusException(HttpStatus.NOT_IMPLEMENTED, message, details, userFriendly, null); + public static ServiceHttpStatusException createServiceHttpStatusExceptionNotImplemented(String message, String details, String field) { + return createServiceHttpStatusException(HttpStatus.NOT_IMPLEMENTED, message, details, field, null); } } diff --git a/src/main/java/org/openepics/names/util/ServiceHttpStatusException.java b/src/main/java/org/openepics/names/util/ServiceHttpStatusException.java index f0b79ab134a1fb6832a1f2ef690abffef9398ab2..7a839db88e82fb0650441a89960a3b62a14826b0 100644 --- a/src/main/java/org/openepics/names/util/ServiceHttpStatusException.java +++ b/src/main/java/org/openepics/names/util/ServiceHttpStatusException.java @@ -34,20 +34,22 @@ public class ServiceHttpStatusException extends RuntimeException { private final HttpStatus httpStatus; private final String details; - private final String userFriendly; + private final String field; /** * Public constructor. * * @param httpStatus http status * @param message message + * @param details details + * @param field field * @param cause cause */ - public ServiceHttpStatusException(HttpStatus httpStatus, String message, String details, String userFriendly, Throwable cause) { + public ServiceHttpStatusException(HttpStatus httpStatus, String message, String details, String field, Throwable cause) { super(message, cause); this.httpStatus = httpStatus; this.details = details; - this.userFriendly = userFriendly; + this.field = field; } /** @@ -69,12 +71,12 @@ public class ServiceHttpStatusException extends RuntimeException { } /** - * Return user friendly of exception. + * Return field of exception. * - * @return user friendly + * @return field */ - public String getUserFriendly() { - return userFriendly; + public String getField() { + return field; } } diff --git a/src/main/java/org/openepics/names/util/ValidateUtil.java b/src/main/java/org/openepics/names/util/ValidateUtil.java index 6ee8f1a54179240b3b6f6ccdaa8b45f2545aaa95..91ad1ade99f94c79e8705dbfcdcd92208408f277 100644 --- a/src/main/java/org/openepics/names/util/ValidateUtil.java +++ b/src/main/java/org/openepics/names/util/ValidateUtil.java @@ -107,7 +107,7 @@ public class ValidateUtil { public static void validateInputComment(String comment) { // available validateCondition(!StringUtils.isEmpty(comment), HttpStatus.BAD_REQUEST, - "comment " + ValidateUtil.IS_NOT_AVAILABLE, comment); + "comment " + ValidateUtil.IS_NOT_AVAILABLE, comment, "comment"); } /** @@ -118,7 +118,7 @@ public class ValidateUtil { public static void validateInputDescription(String description) { // available validateCondition(!StringUtils.isEmpty(description), HttpStatus.BAD_REQUEST, - "description " + ValidateUtil.IS_NOT_AVAILABLE, description); + "description " + ValidateUtil.IS_NOT_AVAILABLE, description, "description"); } /** @@ -129,7 +129,7 @@ public class ValidateUtil { public static void validateInputIndex(String index) { // available validateCondition(!StringUtils.isEmpty(index), HttpStatus.BAD_REQUEST, - "index " + ValidateUtil.IS_NOT_AVAILABLE, index); + "index " + ValidateUtil.IS_NOT_AVAILABLE, index, "index"); } /** @@ -140,7 +140,7 @@ public class ValidateUtil { public static void validateInputMnemonic(String mnemonic) { // available validateCondition(!StringUtils.isEmpty(mnemonic), HttpStatus.BAD_REQUEST, - "mnemonic " + ValidateUtil.IS_NOT_AVAILABLE, mnemonic); + "mnemonic " + ValidateUtil.IS_NOT_AVAILABLE, mnemonic, "mnemonic"); } /** @@ -151,7 +151,7 @@ public class ValidateUtil { public static void validateInputMnemonicpath(String mnemonicpath) { // available validateCondition(!StringUtils.isEmpty(mnemonicpath), HttpStatus.BAD_REQUEST, - "mnemonicpath " + ValidateUtil.IS_NOT_AVAILABLE, mnemonicpath); + "mnemonicpath " + ValidateUtil.IS_NOT_AVAILABLE, mnemonicpath, "mnemonicpath"); } /** @@ -162,7 +162,7 @@ public class ValidateUtil { public static void validateInputName(String name) { // available validateCondition(!StringUtils.isEmpty(name), HttpStatus.BAD_REQUEST, - "name " + ValidateUtil.IS_NOT_AVAILABLE, name); + "name " + ValidateUtil.IS_NOT_AVAILABLE, name, "name"); } /** @@ -183,11 +183,11 @@ public class ValidateUtil { public static void validateInputStatus(Status status, Status expected) { // available validateCondition(status != null, HttpStatus.BAD_REQUEST, - "status " + ValidateUtil.IS_NOT_AVAILABLE, null); + "status " + ValidateUtil.IS_NOT_AVAILABLE, null, "status"); // expected status if (expected != null) { validateCondition(expected.equals(status), HttpStatus.BAD_REQUEST, - "status " + ValidateUtil.IS_NOT_CORRECT, status.toString()); + "status " + ValidateUtil.IS_NOT_CORRECT, status.toString(), "status"); } } @@ -209,11 +209,11 @@ public class ValidateUtil { public static void validateInputType(Type type, Type expected) { // available validateCondition(type != null, HttpStatus.BAD_REQUEST, - "type " + ValidateUtil.IS_NOT_AVAILABLE, null); + "type " + ValidateUtil.IS_NOT_AVAILABLE, null, "type"); // expected type if (expected != null) { validateCondition(expected.equals(type), HttpStatus.BAD_REQUEST, - "type " + ValidateUtil.IS_NOT_CORRECT, type.toString()); + "type " + ValidateUtil.IS_NOT_CORRECT, type.toString(), "type"); } } @@ -226,7 +226,7 @@ public class ValidateUtil { // available // correct validateCondition(!StringUtils.isEmpty(uuid), HttpStatus.BAD_REQUEST, - "uuid " + ValidateUtil.IS_NOT_AVAILABLE, uuid); + "uuid " + ValidateUtil.IS_NOT_AVAILABLE, uuid, "uuid"); try { UUID.fromString(uuid); } catch (IllegalArgumentException e) { @@ -265,7 +265,7 @@ public class ValidateUtil { boolean condition = ((queryFields == null && queryValues == null) || (queryFields != null && queryValues != null && queryFields.length == queryValues.length && queryFields.length > 0)); ValidateUtil.validateCondition(condition, HttpStatus.BAD_REQUEST, - "url and parameters " + ValidateUtil.ARE_NOT_CORRECT, "queryFields, queryValues with different lengths or empty"); + "url and parameters " + ValidateUtil.ARE_NOT_CORRECT, "queryFields, queryValues with different lengths or empty", null); if (queryFields != null) { for (int i=0; i<queryFields.length; i++) { if (FieldName.UUID.equals(queryFields[i])) { @@ -327,7 +327,7 @@ public class ValidateUtil { if (!NameChoice.DELETE.equals(nameChoice)) { ValidateUtil.validateCondition(nameElement.getParentsystemstructure() != null, HttpStatus.BAD_REQUEST, - "parent system structure uuid " + ValidateUtil.IS_NOT_CORRECT, nameElement.toString()); + "parent system structure uuid " + ValidateUtil.IS_NOT_CORRECT, nameElement.toString(), "parentsystemstructure"); // parentdevicestructure optional @@ -413,7 +413,7 @@ public class ValidateUtil { if (NameChoice.UPDATE.equals(nameChoice) || NameChoice.DELETE.equals(nameChoice)) { List<Name> names = nameRepository.readNames(false, FieldName.UUID, nameElement.getUuid().toString()); validateCondition(names != null && names.size() == 1, HttpStatus.BAD_REQUEST, - ValidateUtil.NAME + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, nameElement.toString()); + ValidateUtil.NAME + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, nameElement.toString(), "uuid"); } SystemGroup systemGroup = null; @@ -451,21 +451,21 @@ public class ValidateUtil { if (nameElement.getParentdevicestructure() != null) { countDevicestructureIndex++; deviceType = holderIRepositories.getDeviceTypeRepository().findLatestByUuid(nameElement.getParentdevicestructure().toString()); - ValidateUtil.validateCondition(deviceType != null, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_AVAILABLE, nameElement.toString()); - ValidateUtil.validateCondition(!deviceType.isDeleted(), HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + ValidateUtil.IS_DELETED, nameElement.toString()); + ValidateUtil.validateCondition(deviceType != null, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_AVAILABLE, nameElement.toString(), "parentdevicestructure"); + ValidateUtil.validateCondition(!deviceType.isDeleted(), HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + ValidateUtil.IS_DELETED, nameElement.toString(), "parentdevicestructure"); } // system structure if (systemGroup != null) { - ValidateUtil.validateCondition(!systemGroup.isDeleted(), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEMGROUP + ValidateUtil.SPACE + ValidateUtil.IS_DELETED, nameElement.toString()); + ValidateUtil.validateCondition(!systemGroup.isDeleted(), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEMGROUP + ValidateUtil.SPACE + ValidateUtil.IS_DELETED, nameElement.toString(), "parentsystemstructure"); derivedName = NameUtil.getName(systemGroup, deviceType, nameElement.getIndex(), holder); } else if (system != null) { - ValidateUtil.validateCondition(!system.isDeleted(), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_DELETED, nameElement.toString()); + ValidateUtil.validateCondition(!system.isDeleted(), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_DELETED, nameElement.toString(), "parentsystemstructure"); derivedName = NameUtil.getName(system, deviceType, nameElement.getIndex(), holder); } else if (subsystem != null) { - ValidateUtil.validateCondition(!subsystem.isDeleted(), HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_DELETED, nameElement.toString()); + ValidateUtil.validateCondition(!subsystem.isDeleted(), HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_DELETED, nameElement.toString(), "parentsystemstructure"); derivedName = NameUtil.getName(subsystem, deviceType, nameElement.getIndex(), holder); } else { @@ -477,11 +477,11 @@ public class ValidateUtil { countDevicestructureIndex++; // TODO overrideRuleset depend on user authority condition = namingConvention.isInstanceIndexValid(derivedName, false); - validateCondition(condition, HttpStatus.BAD_REQUEST, "instance index " + ValidateUtil.IS_NOT_VALID, nameElement.toString()); + validateCondition(condition, HttpStatus.BAD_REQUEST, "instance index " + ValidateUtil.IS_NOT_VALID, nameElement.toString(), "index"); } condition = countDevicestructureIndex == 0 || countDevicestructureIndex == 2; - ValidateUtil.validateCondition(condition, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + "or instance index " + ValidateUtil.IS_NOT_AVAILABLE, nameElement.toString()); + ValidateUtil.validateCondition(condition, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + "or instance index " + ValidateUtil.IS_NOT_AVAILABLE, nameElement.toString(), "parentdevicestructure"); // name // ok with same name, name equivalence if same uuid @@ -492,7 +492,7 @@ public class ValidateUtil { // NameChoice.UPDATE.equals(nameChoice) condition = names == null || names.isEmpty() || names.size() == 1 && names.get(0).getUuid().equals(nameElement.getUuid()); } - validateCondition(condition, HttpStatus.BAD_REQUEST, "convention name " + ValidateUtil.EXISTS, nameElement.toString()); + validateCondition(condition, HttpStatus.BAD_REQUEST, "convention name " + ValidateUtil.EXISTS, nameElement.toString(), null); names = nameRepository.readNames(false, FieldName.NAMEEQUIVALENCE, namingConvention.equivalenceClassRepresentative(derivedName)); if (NameChoice.CREATE.equals(nameChoice)) { @@ -501,7 +501,7 @@ public class ValidateUtil { // NameChoice.UPDATE.equals(nameChoice) condition = names == null || names.isEmpty() || names.size() == 1 && names.get(0).getUuid().equals(nameElement.getUuid()); } - validateCondition(condition, HttpStatus.BAD_REQUEST, "convention name equivalence " + ValidateUtil.EXISTS, nameElement.toString()); + validateCondition(condition, HttpStatus.BAD_REQUEST, "convention name equivalence " + ValidateUtil.EXISTS, nameElement.toString(), null); } else if (NameChoice.DELETE.equals(nameChoice)) { // n.a. // uuid - already handled @@ -584,21 +584,21 @@ public class ValidateUtil { if (!StringUtils.isEmpty(dt)) { deviceType = holderIRepositories.getDeviceTypeRepository().findLatestNotDeletedByMnemonic(dt); ValidateUtil.validateCondition(deviceType != null, HttpStatus.BAD_REQUEST, - ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_AVAILABLE, name); + ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_AVAILABLE, name, null); } // system structure if (!StringUtils.isEmpty(sg)) { systemGroup = holderIRepositories.getSystemGroupRepository().findLatestNotDeletedByMnemonic(sg); ValidateUtil.validateCondition(systemGroup != null, HttpStatus.BAD_REQUEST, - ValidateUtil.SYSTEMGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_AVAILABLE, name); + ValidateUtil.SYSTEMGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_AVAILABLE, name, null); derivedName = NameUtil.getName(systemGroup, deviceType, NamingConventionUtil.extractInstanceIndex(name), holder); } else { if (!StringUtils.isEmpty(sys)) { system = holderIRepositories.getSystemRepository().findLatestNotDeletedByMnemonic(sys); ValidateUtil.validateCondition(system != null, HttpStatus.BAD_REQUEST, - ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_AVAILABLE, name); + ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_AVAILABLE, name, null); derivedName = NameUtil.getName(system, deviceType, NamingConventionUtil.extractInstanceIndex(name), holder); } else { @@ -607,11 +607,11 @@ public class ValidateUtil { } // TODO is this condition correct? ValidateUtil.validateCondition(system != null, HttpStatus.BAD_REQUEST, - ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_AVAILABLE, name); + ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_AVAILABLE, name, null); if (!StringUtils.isEmpty(sub)) { subsystem = holderIRepositories.getSubsystemRepository().findLatestNotDeletedByParentAndMnemonic(system.getUuid().toString(), sub); ValidateUtil.validateCondition(subsystem != null, HttpStatus.BAD_REQUEST, - ValidateUtil.SUBSYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_AVAILABLE, name); + ValidateUtil.SUBSYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_AVAILABLE, name, null); derivedName = NameUtil.getName(subsystem, deviceType, NamingConventionUtil.extractInstanceIndex(name), holder); } @@ -622,7 +622,7 @@ public class ValidateUtil { // TODO overrideRuleset depend on user authority condition = namingConvention.isInstanceIndexValid(name, false); validateCondition(condition, HttpStatus.BAD_REQUEST, - "instance index " + ValidateUtil.IS_NOT_VALID, name); + "instance index " + ValidateUtil.IS_NOT_VALID, name, null); } // name @@ -631,17 +631,17 @@ public class ValidateUtil { // convention name equivalence not exists condition = StringUtils.equals(name, derivedName); validateCondition(condition, HttpStatus.BAD_REQUEST, - "convention name " + ValidateUtil.IS_NOT_CORRECT, name); + "convention name " + ValidateUtil.IS_NOT_CORRECT, name, null); List<Name> names = nameRepository.readNames(false, FieldName.NAME, name); condition = names == null || names.isEmpty(); validateCondition(condition, HttpStatus.BAD_REQUEST, - "convention name " + ValidateUtil.EXISTS, name); + "convention name " + ValidateUtil.EXISTS, name, null); names = nameRepository.readNames(false, FieldName.NAMEEQUIVALENCE, namingConvention.equivalenceClassRepresentative(name)); condition = names == null || names.isEmpty(); validateCondition(condition, HttpStatus.BAD_REQUEST, - "convention name equivalence " + ValidateUtil.EXISTS, name); + "convention name equivalence " + ValidateUtil.EXISTS, name, null); } // ---------------------------------------------------------------------------------------------------- @@ -678,7 +678,7 @@ public class ValidateUtil { boolean condition = ((queryFields == null && queryValues == null) || (queryFields != null && queryValues != null && queryFields.length == queryValues.length && queryFields.length > 0)); ValidateUtil.validateCondition(condition, HttpStatus.BAD_REQUEST, - "url and parameters " + ValidateUtil.ARE_NOT_CORRECT, "queryFields, queryValues with different lengths or empty"); + "url and parameters " + ValidateUtil.ARE_NOT_CORRECT, "queryFields, queryValues with different lengths or empty", null); if (queryFields != null) { for (int i=0; i<queryFields.length; i++) { if (FieldStructure.UUID.equals(queryFields[i])) { @@ -769,16 +769,16 @@ public class ValidateUtil { if (!StructureChoice.DELETE.equals(structureChoice)) { if (Type.SYSTEM.equals(structureElement.getType())) { - validateCondition(structureElement.getParent() != null, HttpStatus.BAD_REQUEST, "parent uuid " + ValidateUtil.IS_NOT_AVAILABLE, structureElement.toString()); + validateCondition(structureElement.getParent() != null, HttpStatus.BAD_REQUEST, "parent uuid " + ValidateUtil.IS_NOT_AVAILABLE, structureElement.toString(), "parent"); ValidateUtil.validateInputUuid(structureElement.getParent().toString()); } else if (Type.SUBSYSTEM.equals(structureElement.getType())) { - validateCondition(structureElement.getParent() != null, HttpStatus.BAD_REQUEST, "parent uuid " + ValidateUtil.IS_NOT_AVAILABLE, structureElement.toString()); + validateCondition(structureElement.getParent() != null, HttpStatus.BAD_REQUEST, "parent uuid " + ValidateUtil.IS_NOT_AVAILABLE, structureElement.toString(), "parent"); ValidateUtil.validateInputUuid(structureElement.getParent().toString()); } else if (Type.DEVICEGROUP.equals(structureElement.getType())) { - validateCondition(structureElement.getParent() != null, HttpStatus.BAD_REQUEST, "parent uuid " + ValidateUtil.IS_NOT_AVAILABLE, structureElement.toString()); + validateCondition(structureElement.getParent() != null, HttpStatus.BAD_REQUEST, "parent uuid " + ValidateUtil.IS_NOT_AVAILABLE, structureElement.toString(), "parent"); ValidateUtil.validateInputUuid(structureElement.getParent().toString()); } else if (Type.DEVICETYPE.equals(structureElement.getType())) { - validateCondition(structureElement.getParent() != null, HttpStatus.BAD_REQUEST, "parent uuid " + ValidateUtil.IS_NOT_AVAILABLE, structureElement.toString()); + validateCondition(structureElement.getParent() != null, HttpStatus.BAD_REQUEST, "parent uuid " + ValidateUtil.IS_NOT_AVAILABLE, structureElement.toString(), "parent"); ValidateUtil.validateInputUuid(structureElement.getParent().toString()); } @@ -788,7 +788,7 @@ public class ValidateUtil { // validate mnemonic input (value itself, not in relation to other values) // validateMnemonic takes isMnemonicRequired into account MnemonicValidation mnemonicValidation = namingConvention.validateMnemonic(structureElement.getType(), structureElement.getMnemonic()); - validateCondition(MnemonicValidation.VALID.equals(mnemonicValidation), HttpStatus.BAD_REQUEST, "mnemonic " + ValidateUtil.IS_NOT_VALID, structureElement.toString()); + validateCondition(MnemonicValidation.VALID.equals(mnemonicValidation), HttpStatus.BAD_REQUEST, "mnemonic " + ValidateUtil.IS_NOT_VALID, structureElement.toString(), "mnemonic"); validateInputDescription(structureElement.getDescription()); } @@ -905,80 +905,80 @@ public class ValidateUtil { // status, uuid // status, not deleted, uuid systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(systemGroups != null && systemGroups.size() == 0, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEMGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(systemGroups != null && systemGroups.size() == 0, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEMGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.APPROVED, false, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(systemGroups != null && systemGroups.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEMGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(systemGroups != null && systemGroups.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEMGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); } else if (Type.SYSTEM.equals(structureElement.getType())) { List<System> systems = null; // status, uuid // status, not deleted, uuid systems = holderRepositories.getSystemRepository().readSystems(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(systems != null && systems.size() == 0, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(systems != null && systems.size() == 0, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); systems = holderRepositories.getSystemRepository().readSystems(Status.APPROVED, false, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(systems != null && systems.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(systems != null && systems.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); } else if (Type.SUBSYSTEM.equals(structureElement.getType())) { List<Subsystem> subsystems = null; // status, uuid // status, not deleted, uuid subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(subsystems != null && subsystems.size() == 0, HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(subsystems != null && subsystems.size() == 0, HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.APPROVED, false, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(subsystems != null && subsystems.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(subsystems != null && subsystems.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); } else if (Type.DISCIPLINE.equals(structureElement.getType())) { List<Discipline> disciplines = null; // status, uuid // status, not deleted, uuid disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(disciplines != null && disciplines.size() == 0, HttpStatus.BAD_REQUEST, ValidateUtil.DISCIPLINE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(disciplines != null && disciplines.size() == 0, HttpStatus.BAD_REQUEST, ValidateUtil.DISCIPLINE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.APPROVED, false, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(disciplines != null && disciplines.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.DISCIPLINE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(disciplines != null && disciplines.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.DISCIPLINE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); } else if (Type.DEVICEGROUP.equals(structureElement.getType())) { List<DeviceGroup> deviceGroups = null; // status, uuid // status, not deleted, uuid deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(deviceGroups != null && deviceGroups.size() == 0, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICEGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(deviceGroups != null && deviceGroups.size() == 0, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICEGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.APPROVED, false, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(deviceGroups != null && deviceGroups.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICEGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(deviceGroups != null && deviceGroups.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICEGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); } else if (Type.DEVICETYPE.equals(structureElement.getType())) { List<DeviceType> deviceTypes = null; // status, uuid // status, not deleted, uuid deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(deviceTypes != null && deviceTypes.size() == 0, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(deviceTypes != null && deviceTypes.size() == 0, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.APPROVED, false, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(deviceTypes != null && deviceTypes.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(deviceTypes != null && deviceTypes.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); } } else if (StructureChoice.APPROVE.equals(structureChoice) || StructureChoice.CANCEL.equals(structureChoice) || StructureChoice.REJECT.equals(structureChoice)) { if (Type.SYSTEMGROUP.equals(structureElement.getType())) { // status, uuid List<SystemGroup> systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(systemGroups != null && systemGroups.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEMGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(systemGroups != null && systemGroups.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEMGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); } else if (Type.SYSTEM.equals(structureElement.getType())) { // status, uuid List<System> systems = holderRepositories.getSystemRepository().readSystems(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(systems != null && systems.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(systems != null && systems.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); } else if (Type.SUBSYSTEM.equals(structureElement.getType())) { // status, uuid List<Subsystem> subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(subsystems != null && subsystems.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(subsystems != null && subsystems.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); } else if (Type.DISCIPLINE.equals(structureElement.getType())) { // status, uuid List<Discipline> disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(disciplines != null && disciplines.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.DISCIPLINE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(disciplines != null && disciplines.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.DISCIPLINE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); } else if (Type.DEVICEGROUP.equals(structureElement.getType())) { // status, uuid List<DeviceGroup> deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(deviceGroups != null && deviceGroups.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICEGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(deviceGroups != null && deviceGroups.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICEGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); } else if (Type.DEVICETYPE.equals(structureElement.getType())) { // status, uuid List<DeviceType> deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(deviceTypes != null && deviceTypes.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString()); + ValidateUtil.validateCondition(deviceTypes != null && deviceTypes.size() == 1, HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, structureElement.toString(), "uuid"); } } } @@ -1022,19 +1022,19 @@ public class ValidateUtil { // status, mnemonic systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.PENDING, false, FieldStructure.MNEMONIC, structureElement.getMnemonic()); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systemGroups == null || systemGroups.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systemGroups == null || systemGroups.isEmpty() || systemGroups.size() == 1 && systemGroups.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systemGroups == null || systemGroups.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systemGroups == null || systemGroups.isEmpty() || systemGroups.size() == 1 && systemGroups.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.APPROVED, false, FieldStructure.MNEMONIC, structureElement.getMnemonic()); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systemGroups == null || systemGroups.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systemGroups == null || systemGroups.isEmpty() || systemGroups.size() == 1 && systemGroups.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systemGroups == null || systemGroups.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systemGroups == null || systemGroups.isEmpty() || systemGroups.size() == 1 && systemGroups.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); // status, mnemonic equivalence systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.PENDING, false, FieldStructure.MNEMONICEQUIVALENCE, namingConvention.equivalenceClassRepresentative(structureElement.getMnemonic())); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systemGroups == null || systemGroups.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systemGroups == null || systemGroups.isEmpty() || systemGroups.size() == 1 && systemGroups.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systemGroups == null || systemGroups.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systemGroups == null || systemGroups.isEmpty() || systemGroups.size() == 1 && systemGroups.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.APPROVED, false, FieldStructure.MNEMONICEQUIVALENCE, namingConvention.equivalenceClassRepresentative(structureElement.getMnemonic())); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systemGroups == null || systemGroups.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systemGroups == null || systemGroups.isEmpty() || systemGroups.size() == 1 && systemGroups.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systemGroups == null || systemGroups.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systemGroups == null || systemGroups.isEmpty() || systemGroups.size() == 1 && systemGroups.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); } } else if (Type.SYSTEM.equals(structureElement.getType())) { List<SystemGroup> systemGroups = null; @@ -1044,24 +1044,24 @@ public class ValidateUtil { // status, parent message = ValidateUtil.SYSTEMGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.APPROVED, false, FieldStructure.UUID, structureElement.getParent().toString()); - ValidateUtil.validateCondition(systemGroups != null && systemGroups.size() == 1, HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(systemGroups != null && systemGroups.size() == 1, HttpStatus.BAD_REQUEST, message, details, "parent"); // status, parent, mnemonic message = ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; systems = holderRepositories.getSystemRepository().readSystems(new Status[] {Status.PENDING}, false, new FieldStructure[] {FieldStructure.PARENT, FieldStructure.MNEMONIC}, new String[] {systemGroups.get(0).getUuid().toString(), structureElement.getMnemonic()}, null, null, null, null); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systems == null || systems.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systems == null || systems.isEmpty() || systems.size() == 1 && systems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systems == null || systems.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systems == null || systems.isEmpty() || systems.size() == 1 && systems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); systems = holderRepositories.getSystemRepository().readSystems(new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.PARENT, FieldStructure.MNEMONIC}, new String[] {systemGroups.get(0).getUuid().toString(), structureElement.getMnemonic()}, null, null, null, null); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systems == null || systems.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systems == null || systems.isEmpty() || systems.size() == 1 && systems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systems == null || systems.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systems == null || systems.isEmpty() || systems.size() == 1 && systems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); // status, parent, mnemonic equivalence systems = holderRepositories.getSystemRepository().readSystems(new Status[] {Status.PENDING}, false, new FieldStructure[] {FieldStructure.PARENT, FieldStructure.MNEMONICEQUIVALENCE}, new String[] {systemGroups.get(0).getUuid().toString(), namingConvention.equivalenceClassRepresentative(structureElement.getMnemonic())}, null, null, null, null); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systems == null || systems.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systems == null || systems.isEmpty() || systems.size() == 1 && systems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systems == null || systems.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systems == null || systems.isEmpty() || systems.size() == 1 && systems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); systems = holderRepositories.getSystemRepository().readSystems(new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.PARENT, FieldStructure.MNEMONICEQUIVALENCE}, new String[] {systemGroups.get(0).getUuid().toString(), namingConvention.equivalenceClassRepresentative(structureElement.getMnemonic())}, null, null, null, null); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systems == null || systems.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systems == null || systems.isEmpty() || systems.size() == 1 && systems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systems == null || systems.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systems == null || systems.isEmpty() || systems.size() == 1 && systems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); } else if (Type.SUBSYSTEM.equals(structureElement.getType())) { List<System> systems = null; List<Subsystem> subsystems = null; @@ -1070,43 +1070,43 @@ public class ValidateUtil { // status, parent message = ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; systems = holderRepositories.getSystemRepository().readSystems(Status.APPROVED, false, FieldStructure.UUID, structureElement.getParent().toString()); - ValidateUtil.validateCondition(systems != null && systems.size() == 1, HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(systems != null && systems.size() == 1, HttpStatus.BAD_REQUEST, message, details, "parent"); // status, parent, mnemonic message = ValidateUtil.SUBSYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; subsystems = holderRepositories.getSubsystemRepository().readSubsystems(new Status[] {Status.PENDING}, false, new FieldStructure[] {FieldStructure.PARENT, FieldStructure.MNEMONIC}, new String[] {systems.get(0).getUuid().toString(), structureElement.getMnemonic()}, null, null, null, null); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, subsystems == null || subsystems.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, subsystems == null || subsystems.isEmpty() || subsystems.size() == 1 && subsystems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, subsystems == null || subsystems.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, subsystems == null || subsystems.isEmpty() || subsystems.size() == 1 && subsystems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); subsystems = holderRepositories.getSubsystemRepository().readSubsystems(new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.PARENT, FieldStructure.MNEMONIC}, new String[] {systems.get(0).getUuid().toString(), structureElement.getMnemonic()}, null, null, null, null); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, subsystems == null || subsystems.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, subsystems == null || subsystems.isEmpty() || subsystems.size() == 1 && subsystems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, subsystems == null || subsystems.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, subsystems == null || subsystems.isEmpty() || subsystems.size() == 1 && subsystems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); // status. parent, mnemonic equivalence subsystems = holderRepositories.getSubsystemRepository().readSubsystems(new Status[] {Status.PENDING}, false, new FieldStructure[] {FieldStructure.PARENT, FieldStructure.MNEMONICEQUIVALENCE}, new String[] {systems.get(0).getUuid().toString(), namingConvention.equivalenceClassRepresentative(structureElement.getMnemonic())}, null, null, null, null); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, subsystems == null || subsystems.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, subsystems == null || subsystems.isEmpty() || subsystems.size() == 1 && subsystems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, subsystems == null || subsystems.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, subsystems == null || subsystems.isEmpty() || subsystems.size() == 1 && subsystems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); subsystems = holderRepositories.getSubsystemRepository().readSubsystems(new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.PARENT, FieldStructure.MNEMONICEQUIVALENCE}, new String[] {systems.get(0).getUuid().toString(), namingConvention.equivalenceClassRepresentative(structureElement.getMnemonic())}, null, null, null, null); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, subsystems == null || subsystems.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, subsystems == null || subsystems.isEmpty() || subsystems.size() == 1 && subsystems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, subsystems == null || subsystems.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, subsystems == null || subsystems.isEmpty() || subsystems.size() == 1 && subsystems.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); } else if (Type.DISCIPLINE.equals(structureElement.getType())) { List<Discipline> disciplines = null; String message = ValidateUtil.DISCIPLINE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; // status, mnemonic disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.PENDING, false, FieldStructure.MNEMONIC, structureElement.getMnemonic()); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, disciplines == null || disciplines.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, disciplines == null || disciplines.isEmpty() || disciplines.size() == 1 && disciplines.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, disciplines == null || disciplines.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, disciplines == null || disciplines.isEmpty() || disciplines.size() == 1 && disciplines.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.APPROVED, false, FieldStructure.MNEMONIC, structureElement.getMnemonic()); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, disciplines == null || disciplines.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, disciplines == null || disciplines.isEmpty() || disciplines.size() == 1 && disciplines.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, disciplines == null || disciplines.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, disciplines == null || disciplines.isEmpty() || disciplines.size() == 1 && disciplines.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); // status, mnemonic equivalence disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.PENDING, false, FieldStructure.MNEMONICEQUIVALENCE, namingConvention.equivalenceClassRepresentative(structureElement.getMnemonic())); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, disciplines == null || disciplines.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, disciplines == null || disciplines.isEmpty() || disciplines.size() == 1 && disciplines.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, disciplines == null || disciplines.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, disciplines == null || disciplines.isEmpty() || disciplines.size() == 1 && disciplines.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.APPROVED, false, FieldStructure.MNEMONICEQUIVALENCE, namingConvention.equivalenceClassRepresentative(structureElement.getMnemonic())); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, disciplines == null || disciplines.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, disciplines == null || disciplines.isEmpty() || disciplines.size() == 1 && disciplines.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, disciplines == null || disciplines.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, disciplines == null || disciplines.isEmpty() || disciplines.size() == 1 && disciplines.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); } else if (Type.DEVICEGROUP.equals(structureElement.getType())) { List<Discipline> disciplines = null; String message = null; @@ -1114,13 +1114,13 @@ public class ValidateUtil { // status, parent message = ValidateUtil.DISCIPLINE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.APPROVED, false, FieldStructure.UUID, structureElement.getParent().toString()); - ValidateUtil.validateCondition(disciplines != null && disciplines.size() == 1, HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(disciplines != null && disciplines.size() == 1, HttpStatus.BAD_REQUEST, message, details, "parent"); // note rules for mnemonic for device group // mnemonic message = ValidateUtil.DEVICEGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; - ValidateUtil.validateCondition(StringUtils.isEmpty(structureElement.getMnemonic()), HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(StringUtils.isEmpty(structureElement.getMnemonic()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); } else if (Type.DEVICETYPE.equals(structureElement.getType())) { List<DeviceGroup> deviceGroups = null; List<DeviceType> deviceTypes = null; @@ -1129,24 +1129,24 @@ public class ValidateUtil { // status, parent message = ValidateUtil.DEVICEGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.APPROVED, false, FieldStructure.UUID, structureElement.getParent().toString()); - ValidateUtil.validateCondition(deviceGroups != null && deviceGroups.size() == 1, HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(deviceGroups != null && deviceGroups.size() == 1, HttpStatus.BAD_REQUEST, message, details, "parent"); // status, parent, mnemonic message = ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(new Status[] {Status.PENDING}, false, new FieldStructure[] {FieldStructure.PARENT, FieldStructure.MNEMONIC}, new String[] {deviceGroups.get(0).getUuid().toString(), structureElement.getMnemonic()}, null, null, null, null); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty() || deviceTypes.size() == 1 && deviceTypes.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty() || deviceTypes.size() == 1 && deviceTypes.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.PARENT, FieldStructure.MNEMONIC}, new String[] {deviceGroups.get(0).getUuid().toString(), structureElement.getMnemonic()}, null, null, null, null); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty() || deviceTypes.size() == 1 && deviceTypes.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty() || deviceTypes.size() == 1 && deviceTypes.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); // status, parent, mnemonic equivalence deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(new Status[] {Status.PENDING}, false, new FieldStructure[] {FieldStructure.PARENT, FieldStructure.MNEMONICEQUIVALENCE}, new String[] {deviceGroups.get(0).getUuid().toString(), namingConvention.equivalenceClassRepresentative(structureElement.getMnemonic())}, null, null, null, null); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty() || deviceTypes.size() == 1 && deviceTypes.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty() || deviceTypes.size() == 1 && deviceTypes.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(new Status[] {Status.APPROVED}, false, new FieldStructure[] {FieldStructure.PARENT, FieldStructure.MNEMONICEQUIVALENCE}, new String[] {deviceGroups.get(0).getUuid().toString(), namingConvention.equivalenceClassRepresentative(structureElement.getMnemonic())}, null, null, null, null); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty() || deviceTypes.size() == 1 && deviceTypes.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty() || deviceTypes.size() == 1 && deviceTypes.get(0).getUuid().equals(structureElement.getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); } } else if (StructureChoice.APPROVE.equals(structureChoice)) { if (Type.SYSTEMGROUP.equals(structureElement.getType())) { @@ -1156,17 +1156,17 @@ public class ValidateUtil { // to be approved - status, uuid toBeApproved = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(toBeApproved != null && toBeApproved.size() == 1, HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(toBeApproved != null && toBeApproved.size() == 1, HttpStatus.BAD_REQUEST, message, details, "uuid"); // status, mnemonic systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.APPROVED, false, FieldStructure.MNEMONIC, toBeApproved.get(0).getMnemonic()); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systemGroups == null || systemGroups.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systemGroups == null || systemGroups.isEmpty() || systemGroups.size() == 1 && systemGroups.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systemGroups == null || systemGroups.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systemGroups == null || systemGroups.isEmpty() || systemGroups.size() == 1 && systemGroups.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); // status, mnemonic equivalence systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.APPROVED, false, FieldStructure.MNEMONICEQUIVALENCE, toBeApproved.get(0).getMnemonicEquivalence()); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systemGroups == null || systemGroups.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systemGroups == null || systemGroups.isEmpty() || systemGroups.size() == 1 && systemGroups.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systemGroups == null || systemGroups.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systemGroups == null || systemGroups.isEmpty() || systemGroups.size() == 1 && systemGroups.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); } else if (Type.SYSTEM.equals(structureElement.getType())) { List<SystemGroup> systemGroups = null; List<System> toBeApproved = null; @@ -1176,23 +1176,23 @@ public class ValidateUtil { // to be approved - status, uuid message = ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; toBeApproved = holderRepositories.getSystemRepository().readSystems(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(toBeApproved != null && toBeApproved.size() == 1, HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(toBeApproved != null && toBeApproved.size() == 1, HttpStatus.BAD_REQUEST, message, details, "uuid"); // status, parent message = ValidateUtil.SYSTEMGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; systemGroups = holderRepositories.getSystemGroupRepository().readSystemGroups(Status.APPROVED, false, FieldStructure.UUID, toBeApproved.get(0).getParentUuid().toString()); - ValidateUtil.validateCondition(systemGroups != null && systemGroups.size() == 1, HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(systemGroups != null && systemGroups.size() == 1, HttpStatus.BAD_REQUEST, message, details, "parent"); // status, mnemonic message = ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; systems = holderRepositories.getSystemRepository().readSystems(Status.APPROVED, false, FieldStructure.MNEMONIC, toBeApproved.get(0).getMnemonic()); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systems == null || systems.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systems == null || systems.isEmpty() || systems.size() == 1 && systems.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systems == null || systems.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systems == null || systems.isEmpty() || systems.size() == 1 && systems.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); // status, mnemonic equivalence systems = holderRepositories.getSystemRepository().readSystems(Status.APPROVED, false, FieldStructure.MNEMONICEQUIVALENCE, toBeApproved.get(0).getMnemonicEquivalence()); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systems == null || systems.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systems == null || systems.isEmpty() || systems.size() == 1 && systems.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, systems == null || systems.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, systems == null || systems.isEmpty() || systems.size() == 1 && systems.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); } else if (Type.SUBSYSTEM.equals(structureElement.getType())) { List<System> systems = null; List<Subsystem> toBeApproved = null; @@ -1202,23 +1202,23 @@ public class ValidateUtil { // to be approved - status, uuid message = ValidateUtil.SUBSYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; toBeApproved = holderRepositories.getSubsystemRepository().readSubsystems(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(toBeApproved != null && toBeApproved.size() == 1, HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(toBeApproved != null && toBeApproved.size() == 1, HttpStatus.BAD_REQUEST, message, details, "uuid"); // status, parent message = ValidateUtil.SYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; systems = holderRepositories.getSystemRepository().readSystems(Status.APPROVED, false, FieldStructure.UUID, toBeApproved.get(0).getParentUuid().toString()); - ValidateUtil.validateCondition(systems != null && systems.size() == 1, HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(systems != null && systems.size() == 1, HttpStatus.BAD_REQUEST, message, details, "parent"); // status, mnemonic message = ValidateUtil.SUBSYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.APPROVED, false, FieldStructure.MNEMONIC, toBeApproved.get(0).getMnemonic()); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, subsystems == null || subsystems.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, subsystems == null || subsystems.isEmpty() || subsystems.size() == 1 && subsystems.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, subsystems == null || subsystems.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, subsystems == null || subsystems.isEmpty() || subsystems.size() == 1 && subsystems.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); // status, mnemonic equivalence subsystems = holderRepositories.getSubsystemRepository().readSubsystems(Status.APPROVED, false, FieldStructure.MNEMONICEQUIVALENCE, toBeApproved.get(0).getMnemonicEquivalence()); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, subsystems == null || subsystems.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, subsystems == null || subsystems.isEmpty() || subsystems.size() == 1 && subsystems.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, subsystems == null || subsystems.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, subsystems == null || subsystems.isEmpty() || subsystems.size() == 1 && subsystems.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); } else if (Type.DISCIPLINE.equals(structureElement.getType())) { List<Discipline> toBeApproved = null; List<Discipline> disciplines = null; @@ -1226,17 +1226,17 @@ public class ValidateUtil { // to be approved - status, uuid toBeApproved = holderRepositories.getDisciplineRepository().readDisciplines(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(toBeApproved != null && toBeApproved.size() == 1, HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(toBeApproved != null && toBeApproved.size() == 1, HttpStatus.BAD_REQUEST, message, details, "uuid"); // status, mnemonic disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.APPROVED, false, FieldStructure.MNEMONIC, toBeApproved.get(0).getMnemonic()); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, disciplines == null || disciplines.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, disciplines == null || disciplines.isEmpty() || disciplines.size() == 1 && disciplines.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, disciplines == null || disciplines.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, disciplines == null || disciplines.isEmpty() || disciplines.size() == 1 && disciplines.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); // status, mnemonic equivalence disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.APPROVED, false, FieldStructure.MNEMONICEQUIVALENCE, toBeApproved.get(0).getMnemonicEquivalence()); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, disciplines == null || disciplines.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, disciplines == null || disciplines.isEmpty() || disciplines.size() == 1 && disciplines.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, disciplines == null || disciplines.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, disciplines == null || disciplines.isEmpty() || disciplines.size() == 1 && disciplines.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); } else if (Type.DEVICEGROUP.equals(structureElement.getType())) { List<Discipline> disciplines = null; List<DeviceGroup> toBeApproved = null; @@ -1245,18 +1245,18 @@ public class ValidateUtil { // to be approved - status, uuid message = ValidateUtil.DEVICEGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; toBeApproved = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(toBeApproved != null && toBeApproved.size() == 1, HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(toBeApproved != null && toBeApproved.size() == 1, HttpStatus.BAD_REQUEST, message, details, "uuid"); // status, parent message = ValidateUtil.DISCIPLINE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; disciplines = holderRepositories.getDisciplineRepository().readDisciplines(Status.APPROVED, false, FieldStructure.UUID, toBeApproved.get(0).getParentUuid().toString()); - ValidateUtil.validateCondition(disciplines != null && disciplines.size() == 1, HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(disciplines != null && disciplines.size() == 1, HttpStatus.BAD_REQUEST, message, details, "parent"); // note rules for mnemonic for device group // mnemonic message = ValidateUtil.DEVICEGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; - ValidateUtil.validateCondition(StringUtils.isEmpty(structureElement.getMnemonic()), HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(StringUtils.isEmpty(structureElement.getMnemonic()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); } else if (Type.DEVICETYPE.equals(structureElement.getType())) { List<DeviceGroup> deviceGroups = null; List<DeviceType> toBeApproved = null; @@ -1266,23 +1266,23 @@ public class ValidateUtil { // to be approved - status, uuid message = ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; toBeApproved = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.PENDING, null, FieldStructure.UUID, structureElement.getUuid().toString()); - ValidateUtil.validateCondition(toBeApproved != null && toBeApproved.size() == 1, HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(toBeApproved != null && toBeApproved.size() == 1, HttpStatus.BAD_REQUEST, message, details, "uuid"); // status, parent message = ValidateUtil.DEVICEGROUP + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; deviceGroups = holderRepositories.getDeviceGroupRepository().readDeviceGroups(Status.APPROVED, false, FieldStructure.UUID, toBeApproved.get(0).getParentUuid().toString()); - ValidateUtil.validateCondition(deviceGroups != null && deviceGroups.size() == 1, HttpStatus.BAD_REQUEST, message, details); + ValidateUtil.validateCondition(deviceGroups != null && deviceGroups.size() == 1, HttpStatus.BAD_REQUEST, message, details, "parent"); // status, mnemonic message = ValidateUtil.DEVICETYPE + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT; deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.APPROVED, false, FieldStructure.MNEMONIC, toBeApproved.get(0).getMnemonic()); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty() || deviceTypes.size() == 1 && deviceTypes.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty() || deviceTypes.size() == 1 && deviceTypes.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); // status, mnemonic equivalence deviceTypes = holderRepositories.getDeviceTypeRepository().readDeviceTypes(Status.APPROVED, false, FieldStructure.MNEMONICEQUIVALENCE, toBeApproved.get(0).getMnemonicEquivalence()); - validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty(), HttpStatus.BAD_REQUEST, message, details); - validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty() || deviceTypes.size() == 1 && deviceTypes.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details); + validateConditionIfStructureChoice(StructureChoice.CREATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty(), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); + validateConditionIfStructureChoice(StructureChoice.UPDATE, structureChoice, deviceTypes == null || deviceTypes.isEmpty() || deviceTypes.size() == 1 && deviceTypes.get(0).getUuid().equals(toBeApproved.get(0).getUuid()), HttpStatus.BAD_REQUEST, message, details, "mnemonic"); } } } @@ -1306,25 +1306,25 @@ public class ValidateUtil { String[] path = NamingConventionUtil.string2MnemonicPath(mnemonicpath); validateCondition(path != null && path.length >= 1 && path.length <= 2, - HttpStatus.BAD_REQUEST, ValidateUtil.STRUCTURE + " mnemonic path " + ValidateUtil.IS_NOT_VALID, path + ", " + mnemonicpath); + HttpStatus.BAD_REQUEST, ValidateUtil.STRUCTURE + " mnemonic path " + ValidateUtil.IS_NOT_VALID, path + ", " + mnemonicpath, null); String mnemonicpathEquivalence = namingConvention.equivalenceClassRepresentative(mnemonicpath); if (Type.SYSTEMGROUP.equals(type)) { - validateCondition(path.length == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEMGROUP + " mnemonic path " + ValidateUtil.IS_NOT_VALID, path.length + ", " + mnemonicpath); + validateCondition(path.length == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEMGROUP + " mnemonic path " + ValidateUtil.IS_NOT_VALID, path.length + ", " + mnemonicpath, null); // system group may have empty path but there will be mnemonicpath in this context // mnemonic SystemGroup sg = holderIRepositories.getSystemGroupRepository().findLatestNotDeletedByMnemonic(path[0]); - ValidateUtil.validateCondition(sg == null, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEMGROUP + " mnemonic path duplicate", path[0] + ", " + mnemonicpath); + ValidateUtil.validateCondition(sg == null, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEMGROUP + " mnemonic path duplicate", path[0] + ", " + mnemonicpath, null); // mnemonic equivalence List<SystemGroup> systemGroups = holderIRepositories.getSystemGroupRepository().findLatestNotDeleted(); for (SystemGroup systemGroup : systemGroups) { - validateCondition(!StringUtils.equals(systemGroup.getMnemonicEquivalence(), namingConvention.equivalenceClassRepresentative(path[0])), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEMGROUP + " mnemonic path equivalence duplicate", path[0] + ", " + mnemonicpath); + validateCondition(!StringUtils.equals(systemGroup.getMnemonicEquivalence(), namingConvention.equivalenceClassRepresentative(path[0])), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEMGROUP + " mnemonic path equivalence duplicate", path[0] + ", " + mnemonicpath, null); } } else if (Type.SYSTEM.equals(type)) { - validateCondition(path.length == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + " mnemonic path " + ValidateUtil.IS_NOT_VALID, path.length + ", " + mnemonicpath); + validateCondition(path.length == 1, HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + " mnemonic path " + ValidateUtil.IS_NOT_VALID, path.length + ", " + mnemonicpath, null); // path with 1 element - system group or system ---> check both individually // check mnemonic, mnemonic equivalence @@ -1332,90 +1332,90 @@ public class ValidateUtil { // mnemonic system group List<String> mnemonicPaths = StructureUtil.getMnemonicPathsSystemGroup(holder, false, namingConvention); for (String existingPath : mnemonicPaths) { - validateCondition(!StringUtils.equals(mnemonicpath, existingPath), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + " mnemonic path duplicate", mnemonicpath); + validateCondition(!StringUtils.equals(mnemonicpath, existingPath), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + " mnemonic path duplicate", mnemonicpath, null); } // mnemonic path system group mnemonicPaths = StructureUtil.getMnemonicPathsSystemGroup(holder, true, namingConvention); for (String existingPath : mnemonicPaths) { - validateCondition(!StringUtils.equals(mnemonicpathEquivalence, namingConvention.equivalenceClassRepresentative(existingPath)), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + " mnemonic path equivalence duplicate", mnemonicpath); + validateCondition(!StringUtils.equals(mnemonicpathEquivalence, namingConvention.equivalenceClassRepresentative(existingPath)), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + " mnemonic path equivalence duplicate", mnemonicpath, null); } // mnemonic mnemonicPaths = StructureUtil.getMnemonicPathsSystem(holder, false, namingConvention); for (String existingPath : mnemonicPaths) { - validateCondition(!StringUtils.equals(mnemonicpath, existingPath), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + " mnemonic path duplicate", mnemonicpath); + validateCondition(!StringUtils.equals(mnemonicpath, existingPath), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + " mnemonic path duplicate", mnemonicpath, null); } // mnemonic equivalence mnemonicPaths = StructureUtil.getMnemonicPathsSystem(holder, true, namingConvention); for (String existingPath : mnemonicPaths) { - validateCondition(!StringUtils.equals(mnemonicpathEquivalence, namingConvention.equivalenceClassRepresentative(existingPath)), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + " mnemonic path equivalence duplicate", mnemonicpath); + validateCondition(!StringUtils.equals(mnemonicpathEquivalence, namingConvention.equivalenceClassRepresentative(existingPath)), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + " mnemonic path equivalence duplicate", mnemonicpath, null); } } else if (Type.SUBSYSTEM.equals(type)) { - validateCondition(path.length == 2, HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + " mnemonic path " + ValidateUtil.IS_NOT_VALID, path.length + ", " + mnemonicpath); + validateCondition(path.length == 2, HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + " mnemonic path " + ValidateUtil.IS_NOT_VALID, path.length + ", " + mnemonicpath, null); System sys = holderIRepositories.getSystemRepository().findLatestNotDeletedByMnemonic(path[0]); - ValidateUtil.validateCondition(sys != null, HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + " mnemonic path not available", path[0] + ", " + mnemonicpath); + ValidateUtil.validateCondition(sys != null, HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + " mnemonic path not available", path[0] + ", " + mnemonicpath, null); SystemGroup sg = holderIRepositories.getSystemGroupRepository().findLatestNotDeletedByUuid(sys.getParentUuid().toString()); // mnemonic - validateCondition(!StringUtils.equals(path[0], path[1]), HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + " mnemonic path duplicate", mnemonicpath); + validateCondition(!StringUtils.equals(path[0], path[1]), HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + " mnemonic path duplicate", mnemonicpath, null); if (!StringUtils.isEmpty(sg.getMnemonic())) { - validateCondition(!StringUtils.equals(sg.getMnemonic(), path[1]), HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + " mnemonic path duplicate", mnemonicpath); + validateCondition(!StringUtils.equals(sg.getMnemonic(), path[1]), HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + " mnemonic path duplicate", mnemonicpath, null); } List<String> mnemonicPaths = StructureUtil.getMnemonicPathsSubsystem(holder, false, namingConvention); for (String existingPath : mnemonicPaths) { - validateCondition(!StringUtils.equals(mnemonicpath, existingPath), HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + " mnemonic path duplicate", mnemonicpath); + validateCondition(!StringUtils.equals(mnemonicpath, existingPath), HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + " mnemonic path duplicate", mnemonicpath, null); } // mnemonic equivalence - validateCondition(!StringUtils.equals(namingConvention.equivalenceClassRepresentative(path[0]), namingConvention.equivalenceClassRepresentative(path[1])), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + " mnemonic path duplicate", mnemonicpath); + validateCondition(!StringUtils.equals(namingConvention.equivalenceClassRepresentative(path[0]), namingConvention.equivalenceClassRepresentative(path[1])), HttpStatus.BAD_REQUEST, ValidateUtil.SYSTEM + " mnemonic path duplicate", mnemonicpath, null); if (!StringUtils.isEmpty(sg.getMnemonic())) { - validateCondition(!StringUtils.equals(namingConvention.equivalenceClassRepresentative(sg.getMnemonic()), namingConvention.equivalenceClassRepresentative(path[1])), HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + " mnemonic path duplicate", mnemonicpath); + validateCondition(!StringUtils.equals(namingConvention.equivalenceClassRepresentative(sg.getMnemonic()), namingConvention.equivalenceClassRepresentative(path[1])), HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + " mnemonic path duplicate", mnemonicpath, null); } mnemonicPaths = StructureUtil.getMnemonicPathsSubsystem(holder, true, namingConvention); for (String existingPath : mnemonicPaths) { - validateCondition(!StringUtils.equals(mnemonicpathEquivalence, namingConvention.equivalenceClassRepresentative(existingPath)), HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + " mnemonic path equivalence duplicate", mnemonicpath); + validateCondition(!StringUtils.equals(mnemonicpathEquivalence, namingConvention.equivalenceClassRepresentative(existingPath)), HttpStatus.BAD_REQUEST, ValidateUtil.SUBSYSTEM + " mnemonic path equivalence duplicate", mnemonicpath, null); } } else if (Type.DISCIPLINE.equals(type)) { - validateCondition(path.length == 1, HttpStatus.BAD_REQUEST, ValidateUtil.DISCIPLINE + " mnemonic path " + ValidateUtil.IS_NOT_VALID, path[0] + ", " + mnemonicpath); + validateCondition(path.length == 1, HttpStatus.BAD_REQUEST, ValidateUtil.DISCIPLINE + " mnemonic path " + ValidateUtil.IS_NOT_VALID, path[0] + ", " + mnemonicpath, null); // mnemonic Discipline di = holderIRepositories.getDisciplineRepository().findLatestNotDeletedByMnemonic(path[0]); - ValidateUtil.validateCondition(di == null, HttpStatus.BAD_REQUEST, ValidateUtil.DISCIPLINE + " mnemonic path duplicate", path[0] + ", " + mnemonicpath); + ValidateUtil.validateCondition(di == null, HttpStatus.BAD_REQUEST, ValidateUtil.DISCIPLINE + " mnemonic path duplicate", path[0] + ", " + mnemonicpath, null); // mnemonic equivalence List<Discipline> disciplines = holderIRepositories.getDisciplineRepository().findLatestNotDeleted(); for (Discipline discipline : disciplines) { validateCondition(!StringUtils.equals(discipline.getMnemonicEquivalence(), namingConvention.equivalenceClassRepresentative(path[0])), - HttpStatus.BAD_REQUEST, ValidateUtil.DISCIPLINE + " mnemonic path equivalence duplicate", path[0] + ", " + mnemonicpath); + HttpStatus.BAD_REQUEST, ValidateUtil.DISCIPLINE + " mnemonic path equivalence duplicate", path[0] + ", " + mnemonicpath, null); } } else if (Type.DEVICEGROUP.equals(type)) { throw ExceptionUtil.createServiceHttpStatusExceptionBadRequest(ValidateUtil.DEVICEGROUP + " mnemonic path " + ValidateUtil.IS_NOT_VALID, path.length + ", " + mnemonicpath, null); } else if (Type.DEVICETYPE.equals(type)) { - validateCondition(path.length == 2, HttpStatus.BAD_REQUEST, ValidateUtil.STRUCTURE + " " + ValidateUtil.DEVICETYPE + " mnemonic path " + ValidateUtil.IS_NOT_VALID, path.length + ", " + mnemonicpath); + validateCondition(path.length == 2, HttpStatus.BAD_REQUEST, ValidateUtil.STRUCTURE + " " + ValidateUtil.DEVICETYPE + " mnemonic path " + ValidateUtil.IS_NOT_VALID, path.length + ", " + mnemonicpath, null); // discipline Discipline discipline = holderIRepositories.getDisciplineRepository().findLatestNotDeletedByMnemonic(path[0]); - ValidateUtil.validateCondition(discipline != null, HttpStatus.BAD_REQUEST, ValidateUtil.DISCIPLINE + " " + ValidateUtil.IS_NOT_VALID, path[0] + ", " + mnemonicpath); + ValidateUtil.validateCondition(discipline != null, HttpStatus.BAD_REQUEST, ValidateUtil.DISCIPLINE + " " + ValidateUtil.IS_NOT_VALID, path[0] + ", " + mnemonicpath, null); // mnemonic - validateCondition(!StringUtils.equals(path[0], path[1]), HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + " mnemonic path duplicate", mnemonicpath); + validateCondition(!StringUtils.equals(path[0], path[1]), HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + " mnemonic path duplicate", mnemonicpath, null); List<String> mnemonicPaths = StructureUtil.getMnemonicPathsDeviceType(holder, false, namingConvention); for (String existingPath : mnemonicPaths) { - validateCondition(!StringUtils.equals(mnemonicpath, existingPath), HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + " mnemonic path duplicate", mnemonicpath); + validateCondition(!StringUtils.equals(mnemonicpath, existingPath), HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + " mnemonic path duplicate", mnemonicpath, null); } // mnemonic equivalence - validateCondition(!StringUtils.equals(namingConvention.equivalenceClassRepresentative(path[0]), namingConvention.equivalenceClassRepresentative(path[1])), HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + " mnemonic path duplicate", mnemonicpath); + validateCondition(!StringUtils.equals(namingConvention.equivalenceClassRepresentative(path[0]), namingConvention.equivalenceClassRepresentative(path[1])), HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + " mnemonic path duplicate", mnemonicpath, null); mnemonicPaths = StructureUtil.getMnemonicPathsDeviceType(holder, true, namingConvention); for (String existingPath : mnemonicPaths) { - validateCondition(!StringUtils.equals(mnemonicpathEquivalence, namingConvention.equivalenceClassRepresentative(existingPath)), HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + " mnemonic path equivalence duplicate", mnemonicpath); + validateCondition(!StringUtils.equals(mnemonicpathEquivalence, namingConvention.equivalenceClassRepresentative(existingPath)), HttpStatus.BAD_REQUEST, ValidateUtil.DEVICETYPE + " mnemonic path equivalence duplicate", mnemonicpath, null); } // since device group is between discipline and device type and device group has no mnemonic, @@ -1436,16 +1436,17 @@ public class ValidateUtil { * @param status http status * @param message message * @param details details + * @param field field * * @see ServiceHttpStatusException */ - public static void validateCondition(boolean condition, HttpStatus status, String message, String details) { + public static void validateCondition(boolean condition, HttpStatus status, String message, String details, String field) { if (!condition) { switch(status) { case BAD_REQUEST: - throw ExceptionUtil.createServiceHttpStatusExceptionBadRequest(message, details, null); + throw ExceptionUtil.createServiceHttpStatusExceptionBadRequest(message, details, field); default: - throw ExceptionUtil.createServiceHttpStatusExceptionInternalServerError(message, details, null); + throw ExceptionUtil.createServiceHttpStatusExceptionInternalServerError(message, details, field); } } } @@ -1458,12 +1459,13 @@ public class ValidateUtil { * @param status http status * @param message message * @param details details + * @param field field * * @see ServiceHttpStatusException */ - public static void validateConditionIfPrecondition(boolean precondition, boolean condition, HttpStatus status, String message, String details) { + public static void validateConditionIfPrecondition(boolean precondition, boolean condition, HttpStatus status, String message, String details, String field) { if (precondition) { - validateCondition(condition, status, message, details); + validateCondition(condition, status, message, details, field); } } @@ -1476,11 +1478,12 @@ public class ValidateUtil { * @param status http status * @param message message * @param details details + * @param field field * * @see ServiceHttpStatusException */ - public static void validateConditionIfStructureChoice(StructureChoice expected, StructureChoice actual, boolean condition, HttpStatus status, String message, String details) { - validateConditionIfPrecondition(expected != null && expected.equals(actual), condition, status, message, details); + public static void validateConditionIfStructureChoice(StructureChoice expected, StructureChoice actual, boolean condition, HttpStatus status, String message, String details, String field) { + validateConditionIfPrecondition(expected != null && expected.equals(actual), condition, status, message, details, field); } diff --git a/src/test/java/org/openepics/names/util/ExceptionUtilTest.java b/src/test/java/org/openepics/names/util/ExceptionUtilTest.java index af5aae8145c34d4a24935dea854a9ad15dd3e4e8..b2d4ae9b15d11bc4a9cb4e5e168dbfa428212074 100644 --- a/src/test/java/org/openepics/names/util/ExceptionUtilTest.java +++ b/src/test/java/org/openepics/names/util/ExceptionUtilTest.java @@ -89,56 +89,56 @@ public class ExceptionUtilTest { assertNull(exception.getHttpStatus()); assertNull(exception.getMessage()); assertNull(exception.getDetails()); - assertNull(exception.getUserFriendly()); + assertNull(exception.getField()); assertNull(exception.getCause()); exception = ExceptionUtil.createServiceHttpStatusExceptionBadRequest(null, null, null); assertEquals(HttpStatus.BAD_REQUEST, exception.getHttpStatus()); assertEquals(null, exception.getMessage()); assertEquals(null, exception.getDetails()); - assertEquals(null, exception.getUserFriendly()); + assertEquals(null, exception.getField()); assertEquals(null, exception.getCause()); exception = ExceptionUtil.createServiceHttpStatusExceptionUnauthorized(null, null, null); assertEquals(HttpStatus.UNAUTHORIZED, exception.getHttpStatus()); assertEquals(null, exception.getMessage()); assertEquals(null, exception.getDetails()); - assertEquals(null, exception.getUserFriendly()); + assertEquals(null, exception.getField()); assertEquals(null, exception.getCause()); exception = ExceptionUtil.createServiceHttpStatusExceptionForbidden(null, null, null); assertEquals(HttpStatus.FORBIDDEN, exception.getHttpStatus()); assertEquals(null, exception.getMessage()); assertEquals(null, exception.getDetails()); - assertEquals(null, exception.getUserFriendly()); + assertEquals(null, exception.getField()); assertEquals(null, exception.getCause()); exception = ExceptionUtil.createServiceHttpStatusExceptionNotFound(null, null, null); assertEquals(HttpStatus.NOT_FOUND, exception.getHttpStatus()); assertEquals(null, exception.getMessage()); assertEquals(null, exception.getDetails()); - assertEquals(null, exception.getUserFriendly()); + assertEquals(null, exception.getField()); assertEquals(null, exception.getCause()); exception = ExceptionUtil.createServiceHttpStatusExceptionConflict(null, null, null); assertEquals(HttpStatus.CONFLICT, exception.getHttpStatus()); assertEquals(null, exception.getMessage()); assertEquals(null, exception.getDetails()); - assertEquals(null, exception.getUserFriendly()); + assertEquals(null, exception.getField()); assertEquals(null, exception.getCause()); exception = ExceptionUtil.createServiceHttpStatusExceptionInternalServerError(null, null, null); assertEquals(HttpStatus.INTERNAL_SERVER_ERROR, exception.getHttpStatus()); assertEquals(null, exception.getMessage()); assertEquals(null, exception.getDetails()); - assertEquals(null, exception.getUserFriendly()); + assertEquals(null, exception.getField()); assertEquals(null, exception.getCause()); exception = ExceptionUtil.createServiceHttpStatusExceptionNotImplemented(null, null, null); assertEquals(HttpStatus.NOT_IMPLEMENTED, exception.getHttpStatus()); assertEquals(null, exception.getMessage()); assertEquals(null, exception.getDetails()); - assertEquals(null, exception.getUserFriendly()); + assertEquals(null, exception.getField()); assertEquals(null, exception.getCause()); } diff --git a/src/test/java/org/openepics/names/util/ValidateUtilTest.java b/src/test/java/org/openepics/names/util/ValidateUtilTest.java index 98118ac814e4525b121554c77dcca409a42144e4..fb2333047d81db1170e48e5206e4d1339846fbac 100644 --- a/src/test/java/org/openepics/names/util/ValidateUtilTest.java +++ b/src/test/java/org/openepics/names/util/ValidateUtilTest.java @@ -395,7 +395,7 @@ public class ValidateUtilTest { final List<Subsystem> subsystems = Lists.newArrayList(); try { ValidateUtil.validateCondition(subsystems != null && subsystems.size() == 1, HttpStatus.INTERNAL_SERVER_ERROR, - ValidateUtil.SUBSYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, null); + ValidateUtil.SUBSYSTEM + ValidateUtil.SPACE + ValidateUtil.IS_NOT_CORRECT, null, null); fail(); } catch (ServiceHttpStatusException e) { assertEquals(HttpStatus.INTERNAL_SERVER_ERROR, e.getHttpStatus());