2 * ============LICENSE_START=======================================================
3 * Copyright (C) 2016-2018 Ericsson. All rights reserved.
4 * ================================================================================
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
17 * SPDX-License-Identifier: Apache-2.0
18 * ============LICENSE_END=========================================================
21 load("nashorn:mozilla_compat.js");
23 var logger = executor.logger;
24 logger.trace("start: " + executor.subject.id);
25 logger.trace("-- infields: " + executor.inFields);
27 var ifNodeName = executor.inFields["nodeName"];
28 var ifMininetName = executor.inFields["mininetName"];
30 var albumTopoNodes = executor.getContextAlbum("albumTopoNodes");
32 logger.trace("-- got infields, testing existing node");
34 var ctxtNode = albumTopoNodes.get(ifNodeName);
35 if (ctxtNode != null) {
36 albumTopoNodes.remove(ifNodeName);
37 logger.trace("-- removed node: <" + ifNodeName + ">");
40 logger.trace("-- creating node: <" + ifNodeName + ">");
41 ctxtNode = "{name:" + ifNodeName + ", mnname:" + ifMininetName + "}";
42 albumTopoNodes.put(ifNodeName, ctxtNode);
44 if (logger.isTraceEnabled()) {
45 logger.trace(" >> *** Nodes ***");
46 if (albumTopoNodes != null) {
47 for (var i = 0; i < albumTopoNodes.values().size(); i++) {
48 logger.trace(" >> >> " + albumTopoNodes.values().get(i).get("name") + " : "
49 + albumTopoNodes.values().get(i).get("mnname"));
52 logger.trace(" >> >> node album is null");
56 executor.outFields["report"] = "node ctxt :: added node " + ifNodeName;
58 logger.info("vpnsla: ctxt added node " + ifNodeName);
60 var returnValueType = Java.type("java.lang.Boolean");
61 var returnValue = new returnValueType(true);
62 logger.trace("finished: " + executor.subject.id);