Initial OpenECOMP SDC commit
Change-Id: I0924d5a6ae9cdc161ae17c68d3689a30d10f407b
Signed-off-by: Michael Lando <ml636r@att.com>
diff --git a/asdctool/src/main/resources/scripts/baseOperation.sh b/asdctool/src/main/resources/scripts/baseOperation.sh
new file mode 100644
index 0000000..b27b734
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/baseOperation.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+#echo $FULL_PATH
+
+LIB_DIR=$FULL_PATH/..
+BIN_DIR=$FULL_PATH/../bin
+CONFIG_DIR=$FULL_PATH/../config
+
+JVM_VERBOSE=-Dverbose
+
+JVM_LOG_FILE="-Dlogback.configurationFile=${CONFIG_DIR}/logback.xml"
+
+######################################################
+
+#BINS=`find $BIN_DIR -name "*.jar" | tr "\\n" ":"`
+
+LIBS=`find $LIB_DIR -name "*.jar" | tr "\\n" ":"`
+
+JARS=$JARS:$BINS:$LIBS
+
+
+export JARS
+export JVM_LOG_FILE
diff --git a/asdctool/src/main/resources/scripts/cleanCsar.sh b/asdctool/src/main/resources/scripts/cleanCsar.sh
new file mode 100644
index 0000000..c11cdef
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/cleanCsar.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+##############################
+# Data Migration
+##############################
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.MigrationMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass clean-csar $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/dataMigration.sh b/asdctool/src/main/resources/scripts/dataMigration.sh
new file mode 100644
index 0000000..b05c6dc
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/dataMigration.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+##############################
+# Data Migration
+##############################
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.MigrationMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass migrate-1602-1604 $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/dataMigration1607.sh b/asdctool/src/main/resources/scripts/dataMigration1607.sh
new file mode 100644
index 0000000..027852d
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/dataMigration1607.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+##############################
+# Data Migration 1607
+##############################
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.MigrationMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass migrate-1604-1607 $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/dataMigration1610.sh b/asdctool/src/main/resources/scripts/dataMigration1610.sh
new file mode 100644
index 0000000..45d61ad
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/dataMigration1610.sh
@@ -0,0 +1,41 @@
+#!/bin/bash
+
+##############################
+# Data Migration 1610
+##############################
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.MigrationMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass fix-properties $@"
+echo $command
+
+$command
+result=$?
+
+if [ $result -eq 0 ]
+then
+ command="java $JVM_LOG_FILE -cp $JARS $mainClass align-tosca-artifacts $@"
+ echo $command
+ $command
+ result=$?
+fi
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/deleteAllProducts.sh b/asdctool/src/main/resources/scripts/deleteAllProducts.sh
new file mode 100644
index 0000000..38e468d
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/deleteAllProducts.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+##############################
+# delete all products from titan
+##############################
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.RemoveUtils"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass remove-products $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/derivedFromAlignment.sh b/asdctool/src/main/resources/scripts/derivedFromAlignment.sh
new file mode 100644
index 0000000..05025a0
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/derivedFromAlignment.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+##############################
+# Data Migration
+##############################
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.MigrationMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass align-derived-from-1604 $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/esToCassandraMigration.sh b/asdctool/src/main/resources/scripts/esToCassandraMigration.sh
new file mode 100644
index 0000000..383904c
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/esToCassandraMigration.sh
@@ -0,0 +1,29 @@
+#!/bin/bash
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.EsToCassandraDataMigrationMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass es-to-cassndra-migration $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/esToCassandraMigrationExportOnly.sh b/asdctool/src/main/resources/scripts/esToCassandraMigrationExportOnly.sh
new file mode 100644
index 0000000..2c8e346
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/esToCassandraMigrationExportOnly.sh
@@ -0,0 +1,29 @@
+#!/bin/bash
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.EsToCassandraDataMigrationMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass es-to-cassndra-migration-export-only $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/esToCassandraMigrationImportOnly.sh b/asdctool/src/main/resources/scripts/esToCassandraMigrationImportOnly.sh
new file mode 100644
index 0000000..9ce3ca8
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/esToCassandraMigrationImportOnly.sh
@@ -0,0 +1,29 @@
+#!/bin/bash
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.EsToCassandraDataMigrationMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass es-to-cassndra-migration-import-only $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/exportGraph.sh b/asdctool/src/main/resources/scripts/exportGraph.sh
new file mode 100644
index 0000000..648cb50
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/exportGraph.sh
@@ -0,0 +1,29 @@
+#!/bin/bash
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.ExportImportMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass export $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/exportGraphAsGraphMl.sh b/asdctool/src/main/resources/scripts/exportGraphAsGraphMl.sh
new file mode 100644
index 0000000..17d660c
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/exportGraphAsGraphMl.sh
@@ -0,0 +1,29 @@
+#!/bin/bash
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.ExportImportMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass export-as-graph-ml $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/exportUsers.sh b/asdctool/src/main/resources/scripts/exportUsers.sh
new file mode 100644
index 0000000..d701c57
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/exportUsers.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+##############################
+# export all users from titan
+##############################
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.ExportImportMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass exportusers $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/fix_icons.sh b/asdctool/src/main/resources/scripts/fix_icons.sh
new file mode 100644
index 0000000..230dea7
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/fix_icons.sh
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+##############################
+# Data Migration
+##############################
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.MigrationMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass fix-icons $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
\ No newline at end of file
diff --git a/asdctool/src/main/resources/scripts/fix_issue.sh b/asdctool/src/main/resources/scripts/fix_issue.sh
new file mode 100644
index 0000000..af63ec5
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/fix_issue.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+##############################
+# Data Migration
+##############################
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.MigrationMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass fix-properties $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/groupsAlignment.sh b/asdctool/src/main/resources/scripts/groupsAlignment.sh
new file mode 100644
index 0000000..742b246
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/groupsAlignment.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+##############################
+# Groups Alignment
+##############################
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.MigrationMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass align-groups $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/importGraph.sh b/asdctool/src/main/resources/scripts/importGraph.sh
new file mode 100644
index 0000000..ffdd2fd
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/importGraph.sh
@@ -0,0 +1,29 @@
+#!/bin/bash
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.ExportImportMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass import $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/populateComponentCache.sh b/asdctool/src/main/resources/scripts/populateComponentCache.sh
new file mode 100644
index 0000000..79ddbf8
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/populateComponentCache.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+##############################
+# Groups Alignment
+##############################
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.MigrationMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass populate-component-cache $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/python/duplicates.py b/asdctool/src/main/resources/scripts/python/duplicates.py
new file mode 100644
index 0000000..be60b05
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/python/duplicates.py
@@ -0,0 +1,47 @@
+import json
+import sys
+
+dict = {}
+dupliacteUid = {}
+#debugFlag = True
+debugFlag = False
+
+def debug(str1, str2=""):
+ 'print only if debug enabled'
+ if (debugFlag == True): print str1, str2
+
+print 'Number of arguments:', len(sys.argv), 'arguments.'
+
+
+with open(sys.argv[1]) as json_file:
+ json_data = json.load(json_file)
+ for x in json_data['vertices']:
+ uid = None
+ nodeLabel=x.get('nodeLabel')
+ debug(nodeLabel)
+ if ( nodeLabel == 'user' ):
+ uid = x['userId']
+ elif ( nodeLabel == 'tag' ):
+ uid = x['name']
+ elif ( nodeLabel == None ):
+ pass
+ elif ( nodeLabel == 'lockNode' ):
+ uid = x.get('uid')
+ else: uid = x['uid']
+
+ debug(nodeLabel, uid)
+
+ existId = dict.get(uid)
+ if (existId == None):
+ dict[uid] = x.get('_id')
+ else:
+ dupliacteUid[uid] = existId
+
+ print dupliacteUid
+
+# with open('data.txt', 'w') as outfile:
+# json.dump(json_data, outfile)
+
+
+
+# print x['uid']
diff --git a/asdctool/src/main/resources/scripts/python/duplicatesAndRemove.py b/asdctool/src/main/resources/scripts/python/duplicatesAndRemove.py
new file mode 100644
index 0000000..a4bd35d
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/python/duplicatesAndRemove.py
@@ -0,0 +1,136 @@
+import json
+import sys, getopt
+from collections import OrderedDict
+
+dict = {}
+dupliacteUid = {}
+#debugFlag = True
+debugFlag = False
+
+def join_strings(lst):
+ concat = ""
+ for string in lst:
+ if (string != None):
+ if (type(string) == int):
+ string = str(string)
+ concat += (string + " ")
+ return concat
+
+def debug(desc, *args):
+ 'print only if debug enabled'
+ if (debugFlag == True):
+ print desc, join_strings(args)
+
+def log(desc, arg):
+ 'print log info'
+ print desc, arg
+
+def getUid(vertex):
+ uid = None
+ nodeLabel=vertex.get('nodeLabel')
+ debug(nodeLabel)
+ if ( nodeLabel == 'user' ):
+ uid = vertex['userId']
+ elif ( nodeLabel == 'tag' ):
+ uid = vertex['name']
+ elif ( nodeLabel == None ):
+ pass
+ elif ( nodeLabel == 'lockNode' ):
+ uid = vertex.get('uid')
+ else: uid = vertex['uid']
+
+ debug(nodeLabel, uid)
+
+ return uid
+
+def generateFile(inputFile, outputFile):
+
+ with open(inputFile) as json_file:
+ dupliacteUid = {}
+ json_data = json.load(json_file)
+ for x in json_data['vertices']:
+ uid = getUid(x)
+
+ existId = dict.get(uid)
+ if (existId == None):
+ dict[uid] = x.get('_id')
+ else:
+ dupliacteUid[uid] = existId
+
+ log("duplicate ids", dupliacteUid)
+
+ json_data_vertices = json_data['vertices']
+ log("number of vertices is", len(json_data_vertices))
+
+ ids = {}
+ deleteIndexes = []
+
+ for i in xrange(len(json_data_vertices)):
+ #print "****** ", i, " *************"
+ #print json_data_vertices[i]
+ id = json_data_vertices[i]["_id"]
+ uid = getUid(json_data_vertices[i])
+ isDuplicateId = dupliacteUid.get(uid)
+ if (isDuplicateId != None):
+ debug("uid to id pair", uid if uid != None else 'None', id)
+ value = ids.get(uid)
+ if (value == None):
+ list = [id,]
+ ids[uid] = list
+ else:
+ value.append(id)
+ deleteIndexes.append(id)
+
+ log("ids", ids)
+ log("deleteIndexes", deleteIndexes)
+ log("deleteIndexes size", len(deleteIndexes))
+
+ filter_vertex = [ x for x in json_data_vertices if x.get('_id') not in deleteIndexes ]
+ json_data['vertices'] = filter_vertex
+
+ log("number of vertexes after filter", len(filter_vertex))
+
+ json_data_edges = json_data['edges']
+
+ log("number of edges", len(json_data_edges))
+
+ filter_edge = [ x for x in json_data_edges if x['_outV'] not in (deleteIndexes) and x['_inV'] not in (deleteIndexes) ]
+ json_data['edges'] = filter_edge
+
+ log("number of edges after filter", len(json_data['edges']))
+
+ json_data = OrderedDict(sorted(json_data.items(), key=lambda t: t[0], reverse=True))
+
+ with open(outputFile, 'w') as outfile:
+ #json.dump(json_data, outfile)
+ json.dump(json_data, outfile)
+ log("output file is", outputFile);
+
+def main(argv):
+ print 'Number of arguments:', len(sys.argv), 'arguments.'
+ inputfile = None
+ outputfile = ''
+ try:
+ opts, args = getopt.getopt(argv,"h:i:o:",["ifile=","ofile="])
+ except getopt.GetoptError:
+ print sys.argv[0], '-i <inputfile>'
+ sys.exit(2)
+ for opt, arg in opts:
+ if opt == '-h':
+ print sys.argv[0], '-i <inputfile>'
+ sys.exit(3)
+ elif opt in ("-i", "--ifile"):
+ inputfile = arg
+
+ if ( inputfile == None ):
+ print sys.argv[0] ,'-i <inputfile>'
+ sys.exit(3)
+
+ print 'Input file is "', inputfile
+ generateFile(inputfile, inputfile + '.noduplicates')
+
+
+if __name__ == "__main__":
+ main(sys.argv[1:])
+
+# print x['uid']
diff --git a/asdctool/src/main/resources/scripts/python/graphSize.py b/asdctool/src/main/resources/scripts/python/graphSize.py
new file mode 100644
index 0000000..6c36ec6
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/python/graphSize.py
@@ -0,0 +1,56 @@
+import json
+import sys, getopt
+
+dict = {}
+dupliacteUid = {}
+#debugFlag = True
+debugFlag = False
+
+def debug(desc, *args):
+ 'print only if debug enabled'
+ if (debugFlag == True):
+ print desc, join_strings(args)
+
+def log(desc, arg):
+ 'print log info'
+ print desc, arg
+
+def graphSize(inputFile):
+
+ with open(inputFile) as json_file:
+ json_data = json.load(json_file)
+
+ json_data_vertices = json_data['vertices']
+ log("number of vertices is", len(json_data_vertices))
+
+ json_data_edges = json_data['edges']
+ log("number of edges is", len(json_data_edges))
+
+def main(argv):
+ print 'Number of arguments:', len(sys.argv), 'arguments.'
+ inputfile = None
+ outputfile = ''
+ try:
+ opts, args = getopt.getopt(argv,"h:i:o:",["ifile=","ofile="])
+ except getopt.GetoptError:
+ print sys.argv[0], '-i <inputfile>'
+ sys.exit(2)
+ for opt, arg in opts:
+ if opt == '-h':
+ print sys.argv[0], '-i <inputfile>'
+ sys.exit(3)
+ elif opt in ("-i", "--ifile"):
+ inputfile = arg
+
+ if ( inputfile == None ):
+ print sys.argv[0], '-i <inputfile>'
+ sys.exit(3)
+
+ print 'Input file is ', inputfile
+ graphSize(inputfile)
+
+
+if __name__ == "__main__":
+ main(sys.argv[1:])
+
+# print x['uid']
diff --git a/asdctool/src/main/resources/scripts/python/user/exportUsers.py b/asdctool/src/main/resources/scripts/python/user/exportUsers.py
new file mode 100644
index 0000000..e32a3b0
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/python/user/exportUsers.py
@@ -0,0 +1,122 @@
+import pycurl
+import sys, getopt
+from StringIO import StringIO
+import json
+
+
+################################################################################################################################################
+# #
+# Export all active users to file - for 1602+ #
+# #
+# activation : #
+# python exportUsers.py [-i <be host> | --ip=<be host>] [-p <be port> | --port=<be port> ] [-f <output file> | --ofile=<output file> ] #
+# #
+# shortest activation (be host = localhost, be port = 8080): # #
+# python exportUsers.py [-f <output file> | --ofile=<output file> ] #
+# #
+################################################################################################################################################
+
+ALL_USERS_SUFFIX = '/sdc2/rest/v1/user/users'
+
+def errorAndExit(errorCode, errorDesc):
+ if ( errorCode > 0 ):
+ print("status=" + str(errorCode) + ". " + errorDesc)
+ else:
+ print("status=" + str(errorCode))
+ sys.exit(errorCode)
+
+def getUsers(beHost, bePort, adminUser):
+
+ try:
+ buffer = StringIO()
+ c = pycurl.Curl()
+
+ url = 'http://' + beHost + ':' + bePort + ALL_USERS_SUFFIX
+ print(url)
+ c.setopt(c.URL, url)
+ c.setopt(c.WRITEFUNCTION, buffer.write)
+ #c.setopt(c.WRITEFUNCTION, lambda x: None)
+ adminHeader = 'USER_ID: ' + adminUser
+ c.setopt(pycurl.HTTPHEADER, ['Content-Type: application/json', 'Accept: application/json', adminHeader])
+ res = c.perform()
+ #print(res)
+
+ #print('Status: %d' % c.getinfo(c.RESPONSE_CODE))
+
+ c.close()
+
+ body = buffer.getvalue()
+
+ #print(body)
+
+ return (body, None)
+
+ except Exception as inst:
+ print inst
+ #print type(inst) # the exception instance
+ #print inst.args # arguments stored in .args
+ #print inst # __str__ allows args to be printed directly
+ #x, y = inst.args
+ #print 'x =', x
+
+ return (None, inst)
+
+
+def usage():
+ print sys.argv[0], '[-i <be host> | --ip=<be host>] [-p <be port> | --port=<be port> ] [-f <output file> | --ofile=<output file> ]'
+
+def main(argv):
+ print 'Number of arguments:', len(sys.argv), 'arguments.'
+
+ adminHeader = 'jh0003'
+ beHost = 'localhost'
+ bePort = '8080'
+ outputfile = None
+
+ try:
+ opts, args = getopt.getopt(argv,"i:p:f:h:",["ip=","port=","ofile="])
+ except getopt.GetoptError:
+ usage()
+ errorAndExit(2, 'Invalid input')
+
+ for opt, arg in opts:
+ #print opt, arg
+ if opt == '-h':
+ usage()
+ sys.exit(3)
+ elif opt in ("-i", "--ip"):
+ beHost = arg
+ elif opt in ("-p", "--port"):
+ bePort = arg
+ elif opt in ("-f", "--ofile"):
+ outputfile = arg
+
+ print 'be host =',beHost,', be port =', bePort,', output file =',outputfile
+
+ if ( outputfile == None ):
+ usage()
+ sys.exit(3)
+
+ users = getUsers(beHost, bePort, adminHeader)
+ error = users[1]
+ body = users[0]
+
+ if ( error != None ):
+ errorAndExit(5, str(error))
+
+ #print body
+
+ io = StringIO(body)
+ usersAsJson = json.load(io)
+
+ writeFile = open(outputfile, 'w')
+
+ json.dump(usersAsJson, writeFile)
+
+ writeFile.close()
+
+ print("-------------------------------------------")
+ errorAndExit(0, None)
+
+if __name__ == "__main__":
+ main(sys.argv[1:])
diff --git a/asdctool/src/main/resources/scripts/python/user/importUsers.py b/asdctool/src/main/resources/scripts/python/user/importUsers.py
new file mode 100644
index 0000000..669cbbe
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/python/user/importUsers.py
@@ -0,0 +1,215 @@
+import pycurl
+import sys, getopt
+from StringIO import StringIO
+import json
+import copy
+
+################################################################################################################################################
+# #
+# Import all users from a given file #
+# #
+# activation : #
+# python importUsers.py [-i <be host> | --ip=<be host>] [-p <be port> | --port=<be port> ] [-f <input file> | --ifile=<input file> ] #
+# #
+# shortest activation (be host = localhost, be port = 8080): # #
+# python importUsers.py [-f <input file> | --ifile=<input file> ] #
+# #
+################################################################################################################################################
+
+
+def importUsers(beHost, bePort, users, adminUser):
+
+ result = []
+
+ for user in users:
+
+ #print("Going to add user " + user['userId'])
+
+ getRes = getUser(beHost, bePort, user)
+ userId = getRes[0]
+ error = getRes[1]
+ #print error
+ if ( error != None and error == 404 ):
+ res = createUser(beHost, bePort, user ,adminUser)
+ result.append(res)
+ else:
+ if ( error == 200 ):
+ curResult = (userId, 409)
+ result.append(curResult)
+ else:
+ result.append(getRes)
+
+ return result
+
+
+def convertUsersToCreationObject(users):
+
+ cloneUsers = copy.deepcopy(users)
+ for user in cloneUsers:
+ #print user
+ if (user.get('fullName') != None):
+ del user['fullName']
+ #user['userId'] = user['userId'] + '1'
+ #print user
+
+ return cloneUsers
+
+def getUser(beHost, bePort, user):
+
+ userId = user['userId']
+ try:
+ buffer = StringIO()
+ c = pycurl.Curl()
+
+ #print type(userId)
+ url = 'http://' + beHost + ':' + bePort + '/sdc2/rest/v1/user/' + str(userId)
+ c.setopt(c.URL, url)
+
+ #adminHeader = 'USER_ID: ' + adminUser
+ c.setopt(pycurl.HTTPHEADER, ['Content-Type: application/json', 'Accept: application/json'])
+ c.setopt(c.WRITEFUNCTION, lambda x: None)
+ res = c.perform()
+
+ #print("Before get response code")
+ httpRes = c.getinfo(c.RESPONSE_CODE)
+ #print("After get response code")
+ responseCode = c.getinfo(c.RESPONSE_CODE)
+
+ #print('Status: ' + str(responseCode))
+
+ c.close()
+
+ return (userId, httpRes)
+
+ except Exception as inst:
+ print(inst)
+ return (userId, None)
+
+
+
+def createUser(beHost, bePort, user, adminUser):
+
+ userId = user['userId']
+ try:
+ buffer = StringIO()
+ c = pycurl.Curl()
+
+ url = 'http://' + beHost + ':' + bePort + '/sdc2/rest/v1/user'
+ c.setopt(c.URL, url)
+ c.setopt(c.POST, 1)
+
+ adminHeader = 'USER_ID: ' + adminUser
+ c.setopt(pycurl.HTTPHEADER, ['Content-Type: application/json', 'Accept: application/json', adminHeader])
+
+ data = json.dumps(user)
+ c.setopt(c.POSTFIELDS, data)
+
+ c.setopt(c.WRITEFUNCTION, lambda x: None)
+ #print("before perform")
+ res = c.perform()
+ #print(res)
+
+ #print("Before get response code")
+ httpRes = c.getinfo(c.RESPONSE_CODE)
+ #print("After get response code")
+ responseCode = c.getinfo(c.RESPONSE_CODE)
+
+ #print('Status: ' + str(responseCode))
+
+ c.close()
+
+ return (userId, httpRes)
+
+ except Exception as inst:
+ print(inst)
+ return (userId, None)
+
+
+def errorAndExit(errorCode, errorDesc):
+ if ( errorCode > 0 ):
+ print("status=" + str(errorCode) + ". " + errorDesc)
+ else:
+ print("status=" + str(errorCode))
+ sys.exit(errorCode)
+
+def usage():
+ print sys.argv[0], '[-i <be host> | --ip=<be host>] [-p <be port> | --port=<be port> ] [-f <input file> | --ifile=<input file> ]'
+
+def main(argv):
+ print 'Number of arguments:', len(sys.argv), 'arguments.'
+
+ beHost = 'localhost'
+ bePort = '8080'
+ inputfile = None
+
+ adminUser = 'jh0003'
+
+ try:
+ opts, args = getopt.getopt(argv,"i:p:f:h:",["ip=","port=","ifile="])
+ except getopt.GetoptError:
+ usage()
+ errorAndExit(2, 'Invalid input')
+
+ for opt, arg in opts:
+ #print opt, arg
+ if opt == '-h':
+ usage()
+ sys.exit(3)
+ elif opt in ("-i", "--ip"):
+ beHost = arg
+ elif opt in ("-p", "--port"):
+ bePort = arg
+ elif opt in ("-f", "--ifile"):
+ inputfile = arg
+
+ print 'be host =',beHost,', be port =', bePort,', users file =',inputfile
+
+ if ( inputfile == None ):
+ usage()
+ sys.exit(3)
+
+ print 'Input file is ', inputfile
+
+ usersFile = open(inputfile)
+
+ json_data = json.load(usersFile)
+
+ #print json_data
+
+ cloneUsers = convertUsersToCreationObject(json_data)
+
+ activeUsers = filter(lambda x: x['status'] == 'ACTIVE', cloneUsers)
+
+ #print activeUsers
+
+ resultTable = importUsers(beHost, bePort, activeUsers, adminUser)
+
+ g = lambda x: x[1] != 201 and x[1] != 409
+
+ result = filter(g, resultTable)
+
+ if ( len(result) > 0 ):
+ #print("ERROR: Failed to load the users " + ', '.join(map(lambda x: x[0],result)))
+ errorAndExit(3, "Failed to load the users " + ', '.join(map(lambda x: x[0],result)))
+
+ g = lambda x: x[1] == 409
+ result = filter(g, resultTable)
+
+ print("-------------------------------------------")
+ print("Existing users: " + ', '.join(map(lambda x: x[0],result)))
+
+ result = filter(lambda x: x[1] == 201, resultTable)
+ if ( len(result) == 0 ):
+ print("-------------------------------------------")
+ print("No NEW user was loaded. All users are already exist")
+ print("-------------------------------------------")
+ else:
+ print("-------------------------------------------")
+ print("Loaded users: " + ', '.join(map(lambda x: x[0],result)))
+ print("-------------------------------------------")
+
+ errorAndExit(0, None)
+
+
+if __name__ == "__main__":
+ main(sys.argv[1:])
diff --git a/asdctool/src/main/resources/scripts/schemaCreation.sh b/asdctool/src/main/resources/scripts/schemaCreation.sh
new file mode 100644
index 0000000..657db5e
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/schemaCreation.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+##############################
+# Data Migration
+##############################
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.DataSchemaMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass create-cassandra-structures $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/updateIsVnf.sh b/asdctool/src/main/resources/scripts/updateIsVnf.sh
new file mode 100644
index 0000000..62bfb9c
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/updateIsVnf.sh
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+########################################################################
+#
+# Example:
+# ./updateIsVnf.sh ../config/titan.properties Bservice,Myservice
+#
+########################################################################
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.UpdateIsVnfMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass updateIsVnfTrue $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+
diff --git a/asdctool/src/main/resources/scripts/vfcNameAlignment.sh b/asdctool/src/main/resources/scripts/vfcNameAlignment.sh
new file mode 100644
index 0000000..10fbb25
--- /dev/null
+++ b/asdctool/src/main/resources/scripts/vfcNameAlignment.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
+##############################
+# Data Migration
+##############################
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+
+source ${FULL_PATH}/baseOperation.sh
+
+mainClass="org.openecomp.sdc.asdctool.main.MigrationMenu"
+
+command="java $JVM_LOG_FILE -cp $JARS $mainClass align-vfc-names-1604 $@"
+echo $command
+
+$command
+result=$?
+
+echo "***********************************"
+echo "***** $result *********************"
+echo "***********************************"
+
+exit $result
+
+