import java.util.Set;
import javax.persistence.EntityNotFoundException;
import org.apache.commons.lang3.RandomStringUtils;
+import org.onap.clamp.loop.template.LoopTemplatesService;
import org.onap.clamp.loop.template.PolicyModel;
import org.onap.clamp.loop.template.PolicyModelsService;
import org.onap.clamp.policy.Policy;
@Autowired
private PolicyModelsService policyModelsService;
+ @Autowired
+ private LoopTemplatesService loopTemplateService;
+
Loop saveOrUpdateLoop(Loop loop) {
return loopsRepository.save(loop);
}
loopsRepository.deleteById(loopName);
}
+ /**
+ * Creates a Loop Instance from Loop Template Name.
+ *
+ * @param loopName Name of the Loop to be created
+ * @param templateName Loop Template to used for Loop
+ * @return Loop Instance
+ */
+ public Loop createLoopFromTemplate(String loopName, String templateName) {
+ return loopsRepository.save(new Loop(loopName,loopTemplateService.getLoopTemplate(templateName)));
+ }
+
/**
* This method is used to refresh the DCAE deployment status fields.
*
loopsRepository.save(loop);
}
+ /**
+ * This method add an operational policy to a loop instance.
+ *
+ * @param loopName The loop name
+ * @param policyType The policy model type
+ * @param policyVersion The policy model version
+ * @return The loop modified
+ */
Loop addOperationalPolicy(String loopName, String policyType, String policyVersion) {
- Loop loop = findClosedLoopByName(loopName);
+ Loop loop = getLoop(loopName);
PolicyModel policyModel = policyModelsService.getPolicyModel(policyType, policyVersion);
if (policyModel == null) {
return null;
loop.addOperationalPolicy(
new OperationalPolicy(Policy.generatePolicyName("OPERATIONAL", loop.getModelService().getName(),
loop.getModelService().getVersion(), RandomStringUtils.randomAlphanumeric(3),
- RandomStringUtils.randomAlphanumeric(4)), loop, null, policyModel));
+ RandomStringUtils.randomAlphanumeric(4)), loop, null, policyModel, null));
return loopsRepository.save(loop);
}