aboutsummaryrefslogtreecommitdiffstats
path: root/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/ProviderUtils.java
diff options
context:
space:
mode:
Diffstat (limited to 'models/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/ProviderUtils.java')
-rwxr-xr-xmodels/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/ProviderUtils.java17
1 files changed, 14 insertions, 3 deletions
diff --git a/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/ProviderUtils.java b/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/ProviderUtils.java
index 6ba6ac016..6feb2b719 100755
--- a/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/ProviderUtils.java
+++ b/models/src/main/java/org/onap/policy/clamp/models/acm/persistence/provider/ProviderUtils.java
@@ -72,17 +72,28 @@ public final class ProviderUtils {
*/
public static <A, J extends Validated & PfAuthorative<A>> J getJpaAndValidate(A authorativeConcept,
Supplier<J> jpaSupplier, String conceptDescription) {
- var validationResult = new BeanValidationResult(conceptDescription, authorativeConcept);
-
var jpaConcept = jpaSupplier.get();
jpaConcept.fromAuthorative(authorativeConcept);
+ validate(authorativeConcept, jpaConcept, conceptDescription);
+ return jpaConcept;
+ }
+
+ /**
+ * Validate a Jpa object.
+ *
+ * @param authorativeConcept the concept
+ * @param jpaConcept the Jpa of the concept
+ * @param conceptDescription the description used for validation result
+ */
+ public static <A, J extends Validated & PfAuthorative<A>> void validate(A authorativeConcept,
+ J jpaConcept, String conceptDescription) {
+ var validationResult = new BeanValidationResult(conceptDescription, authorativeConcept);
validationResult.addResult(jpaConcept.validate(conceptDescription));
if (!validationResult.isValid()) {
throw new PfModelRuntimeException(Response.Status.BAD_REQUEST, validationResult.getResult());
}
- return jpaConcept;
}
/**