Rework the structure
Rework of the project structure and static loop cache added for the
entire site
Issue-ID: CLAMP-418
Change-Id: Ia2cf62431cd9139c91bf74bb639b502a368ce761
Signed-off-by: sebdet <sebastien.determe@intl.att.com>
diff --git a/ui-react/src/api/LoopCache.js b/ui-react/src/api/LoopCache.js
new file mode 100644
index 0000000..80f02f0
--- /dev/null
+++ b/ui-react/src/api/LoopCache.js
@@ -0,0 +1,129 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP CLAMP
+ * ================================================================================
+ * Copyright (C) 2019 AT&T Intellectual Property. All rights
+ * reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END============================================
+ * ===================================================================
+ *
+ */
+
+class LoopCache {
+ loopJsonCache;
+
+ constructor(loopJson) {
+ this.loopJsonCache=loopJson;
+ //LoopCache.SET_LOOP_JSON_CACHE(require('./example.json');
+ }
+
+ updateMsProperties(type, newMsProperties) {
+ if (newMsProperties["name"] == type) {
+ for (var policy in this.loopJsonCache["microServicePolicies"]) {
+ if (this.loopJsonCache["microServicePolicies"][policy]["name"] == type) {
+ this.loopJsonCache["microServicePolicies"][policy] = newMsProperties;
+ }
+ }
+ }
+ }
+
+ updateGlobalProperties(newGlobalProperties) {
+ this.loopJsonCache["globalPropertiesJson"] = newGlobalProperties;
+ }
+
+ updateOpPolicyProperties(newOpProperties) {
+ this.loopJsonCache["operationalPolicies"] = newOpProperties;
+ }
+
+ getLoopName() {
+ return this.loopJsonCache["name"];
+ }
+
+ getOperationalPolicyProperty() {
+ return JSON.parse(JSON.stringify(this.loopJsonCache["operationalPolicies"]["0"]["configurationsJson"]));
+ }
+
+ getOperationalPolicies() {
+ return JSON.parse(JSON.stringify(this.loopJsonCache["operationalPolicies"]));
+ }
+
+ getGlobalProperty() {
+ return JSON.parse(JSON.stringify(this.loopJsonCache["globalPropertiesJson"]));
+ }
+
+ getDeploymentProperties() {
+ return JSON.parse(JSON.stringify(this.loopJsonCache["globalPropertiesJson"]["dcaeDeployParameters"]));
+ }
+
+ getMsJson(type) {
+ var msProperties = this.loopJsonCache["microServicePolicies"];
+ for (var policy in msProperties) {
+ if (msProperties[policy]["name"] == type) {
+ return JSON.parse(JSON.stringify(msProperties[policy]));
+ }
+ }
+ return null;
+ }
+
+ getMsProperty(type) {
+ var msProperties = this.loopJsonCache["microServicePolicies"];
+ for (var policy in msProperties) {
+ if (msProperties[policy]["name"] == type) {
+ if (msProperties[policy]["properties"] !== null && msProperties[policy]["properties"] !== undefined) {
+ return JSON.parse(JSON.stringify(msProperties[policy]["properties"]));
+ }
+ }
+ }
+ return null;
+ }
+
+ getMsUI(type) {
+ var msProperties = this.loopJsonCache["microServicePolicies"];
+ for (var policy in msProperties) {
+ if (msProperties[policy]["name"] == type) {
+ return JSON.parse(JSON.stringify(msProperties[policy]["jsonRepresentation"]));
+ }
+ }
+ return null;
+ }
+
+ getResourceDetailsVfProperty() {
+ return this.loopJsonCache["modelPropertiesJson"]["resourceDetails"]["VF"];
+ }
+
+ getResourceDetailsVfModuleProperty() {
+ return this.loopJsonCache["modelPropertiesJson"]["resourceDetails"]["VFModule"];
+ }
+
+ getLoopLogsArray() {
+ return this.loopJsonCache.loopLogs;
+ }
+
+ getComponentStates() {
+ return this.loopJsonCache.components;
+ }
+
+ get getLoopJsonCache() {
+ return this.loopJsonCache;
+ }
+
+ set setLoopJsonCache(newJson) {
+ this.loopJsonCache = newJson;
+ }
+}
+
+export const LOOP_CACHE = new LoopCache(require('./example.json'));
+
+export default LoopCache;