+ private String getGlobalCldsString() {
+ try {
+ if (null == globalCldsProperties) {
+ globalCldsProperties = new Properties();
+ globalCldsProperties.load(appContext.getResource(globalClds).getInputStream());
+ }
+ return (String) globalCldsProperties.get("globalCldsProps");
+ } catch (IOException e) {
+ logger.error("Unable to load the globalClds due to an exception", e);
+ throw new CldsConfigException("Unable to load the globalClds due to an exception", e);
+ }
+ }
+
+ private void duplicateCheckforServiceVf(String modelName, String modelPropText) throws IOException {
+ JsonNode modelJson = new ObjectMapper().readTree(modelPropText);
+ JsonNode globalNode = modelJson.get("global");
+ String service = AbstractModelElement.getValueByName(globalNode, "service");
+ List<String> resourceVf = AbstractModelElement.getValuesByName(globalNode, "vf");
+ if (resourceVf != null && !resourceVf.isEmpty()) {
+ List<CldsModelProp> cldsModelPropList = cldsDao.getAllModelProperties();
+ for (CldsModelProp cldsModelProp : cldsModelPropList) {
+ JsonNode currentJson = new ObjectMapper().readTree(cldsModelProp.getPropText());
+ JsonNode currentNode = currentJson.get("global");
+ String currentService = AbstractModelElement.getValueByName(currentNode, "service");
+ List<String> currentVf = AbstractModelElement.getValuesByName(currentNode, "vf");
+ if (currentVf != null && !currentVf.isEmpty()) {
+ if (!modelName.equalsIgnoreCase(cldsModelProp.getName()) && service.equalsIgnoreCase(currentService)
+ && resourceVf.get(0).equalsIgnoreCase(currentVf.get(0))) {
+ throw new BadRequestException("Same service/VF already exists in " + cldsModelProp.getName()
+ + " model, please select different service/VF.");
+ }
+ }
+ }