- this.setJsonRepresentation(generateJsonRepresentation(this, toscaConverter));
- }
-
- /**
- * This method can generate a Json representation (json schema) for an operational policy.
- * This is mainly to support a legacy case and a generic case.
- * For the legacy case the operational policy given is modified (configurationJson).
- *
- * @param operationalPolicy The operational policy
- * @param toscaConverter The tosca converter
- * @return The Json Object with Json schema
- */
- public static JsonObject generateJsonRepresentation(OperationalPolicy operationalPolicy,
- ToscaConverterWithDictionarySupport toscaConverter)
- throws IOException {
- JsonObject jsonReturned = new JsonObject();
- if (operationalPolicy.getPolicyModel() == null) {
- return new JsonObject();
- }
- if (operationalPolicy.isLegacy()) {
- // Op policy Legacy case
- LegacyOperationalPolicy.preloadConfiguration(operationalPolicy.getConfigurationsJson(), operationalPolicy.loop);
- jsonReturned = OperationalPolicyRepresentationBuilder
- .generateOperationalPolicySchema(operationalPolicy.loop.getModelService());
- }
- else {
- // Generic Case
- jsonReturned = toscaConverter.convertToscaToJsonSchemaObject(
- operationalPolicy.getPolicyModel().getPolicyModelTosca(),
- operationalPolicy.getPolicyModel().getPolicyModelType());
- }
-
- return jsonReturned;