summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xdeliveries/src/main/docker/docker-files/Dockerfile188
-rwxr-xr-xepsdk-app-onap/pom.xml9
-rw-r--r--epsdk-app-onap/src/main/java/org/onap/portalapp/conf/ExternalAppConfig.java40
-rwxr-xr-xepsdk-app-onap/src/main/resources/vid-data.sql1501
-rw-r--r--epsdk-app-onap/src/main/webapp/WEB-INF/cert/org.onap.vid.jksbin3573 -> 3576 bytes
-rw-r--r--epsdk-app-onap/src/test/java/org/onap/portalapp/conf/ExternalAppConfigTest.java37
-rw-r--r--epsdk-app-onap/src/test/java/org/onap/portalapp/conf/HibernateMappingLocationsTest.java37
-rw-r--r--epsdk-app-onap/src/test/java/org/onap/portalapp/scheduler/RegisterTest.java37
-rw-r--r--epsdk-app-onap/src/test/java/org/onap/portalapp/scheduler/RegistryAdapterTest.java37
-rw-r--r--epsdk-app-onap/src/test/java/org/onap/portalapp/service/AdminAuthExtensionTest.java37
-rw-r--r--pom.xml15
-rwxr-xr-xvid-app-common/pom.xml20
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/aai/AaiClient.java71
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/aai/AaiClientInterface.java10
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/controller/WorkflowsController.java26
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/model/CategoryParameterOption.java40
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/model/SOWorkflows.kt53
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/properties/Features.java1
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/services/ExternalWorkflowsService.java (renamed from vid-app-common/src/main/java/org/onap/vid/services/ExtWorkflowsService.java)2
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/services/ExternalWorkflowsServiceImpl.java (renamed from vid-app-common/src/main/java/org/onap/vid/services/ExtWorkflowsServiceImpl.java)4
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/services/LocalWorkflowsService.java26
-rw-r--r--vid-app-common/src/main/java/org/onap/vid/services/LocalWorkflowsServiceImpl.java58
-rw-r--r--vid-app-common/src/main/webapp/WEB-INF/conf/dev.features.properties1
-rw-r--r--vid-app-common/src/main/webapp/WEB-INF/conf/features.properties5
-rwxr-xr-xvid-app-common/src/main/webapp/app/vid/scripts/constants/componentConstants.js6
-rw-r--r--vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.controller.js112
-rw-r--r--vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.controller.test.js208
-rw-r--r--vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.html40
-rw-r--r--vid-app-common/src/main/webapp/app/vid/scripts/services/change-management.service.js12
-rw-r--r--vid-app-common/src/test/java/org/onap/aai/util/JettyObfuscationConversionCommandLineUtilTest.java55
-rw-r--r--vid-app-common/src/test/java/org/onap/vid/aai/PombaClientImplTest.java15
-rw-r--r--vid-app-common/src/test/java/org/onap/vid/model/CategoryParameterOptionTest.java186
-rw-r--r--vid-app-common/src/test/java/org/onap/vid/model/CategoryParameterTest.java186
-rw-r--r--vid-app-common/src/test/java/org/onap/vid/mso/MsoBusinessLogicImplTest.java6
-rw-r--r--vid-app-common/src/test/java/org/onap/vid/mso/MsoResponseWrapper2Test.java83
-rw-r--r--vid-app-common/src/test/java/org/onap/vid/mso/MsoResponseWrapperTest.java27
-rw-r--r--vid-app-common/src/test/java/org/onap/vid/mso/RestObjectTest.java20
-rw-r--r--vid-app-common/src/test/java/org/onap/vid/mso/model/OperationalEnvironmentActivateInfoTest.java67
-rw-r--r--vid-app-common/src/test/java/org/onap/vid/mso/model/OperationalEnvironmentDeactivateInfoTest.java44
-rw-r--r--vid-app-common/src/test/java/org/onap/vid/services/ExternalWorkflowServiceImplTest.java (renamed from vid-app-common/src/test/java/org/onap/vid/services/ExtWorkflowServiceImplTest.java)14
-rw-r--r--vid-app-common/src/test/java/org/onap/vid/services/JobsBrokerServiceTest.java60
-rw-r--r--vid-app-common/src/test/java/org/onap/vid/testUtils/TestUtils.java48
-rw-r--r--vid-automation/src/test/resources/features.properties3
43 files changed, 1933 insertions, 1514 deletions
diff --git a/deliveries/src/main/docker/docker-files/Dockerfile b/deliveries/src/main/docker/docker-files/Dockerfile
index 4c1dd7b65..81ebd1747 100755
--- a/deliveries/src/main/docker/docker-files/Dockerfile
+++ b/deliveries/src/main/docker/docker-files/Dockerfile
@@ -1,95 +1,95 @@
-FROM tomcat:8.0-jre8-alpine
-
-# add vim and uncomment alias to speedup troubleshooting purpose
-RUN apk update && apk add openjdk8 vim net-tools
-
-COPY conf.d/ /etc/onap/vid/conf.d/
-
-# MariaDB variables
-ENV VID_MYSQL_HOST="vid-mariadb-docker-instance" \
- VID_MYSQL_PORT="3306" \
- VID_MYSQL_DBNAME="vid_portal" \
- VID_MYSQL_USER="vidadmin" \
- VID_MYSQL_PASS="Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U" \
- VID_MYSQL_MAXCONNECTIONS="5"
-
-# General variables
-ENV VID_APP_DISPLAY_NAME="VID" \
- VID_MYLOGIN_FEED_DIRECTORY="/tmp/MyLogins" \
- VID_ROLE_ACCESS_CENTRALIZED="local" \
- VID_DECRYPTION_KEY="AGLDdG4D04BKm2IxIWEr8o=" \
- VID_ECOMP_PORTAL_INBOX_NAME="ECOMP-PORTAL-INBOX"
-
-ENV ROOT_DIR /opt/app/vid
-ENV CACHE_DIRECTORY="$ROOT_DIR/cache"
-
-# Keystore variables
-ENV VID_KEYSTORE_FILENAME="${ROOT_DIR}/etc/org.onap.vid.jks" \
- VID_TRUSTSTORE_FILENAME="${ROOT_DIR}/etc/org.onap.vid.trust.jks" \
- VID_KEYSTORE_PASSWORD="Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U" \
- VID_TRUSTSTORE_PASSWORD="OBF:1dx01j0e1hs01t981mis1dws156s1ojc1qjc1zsx1pw31qob1qr71pyj1zst1qhy1ojq156i1dua1mm21tb61hvi1j0g1du2" \
- VID_TOMCAT_PATH="/usr/local/tomcat/conf/"
-
-# Logging variables
-ENV VID_LOG_DIR="${ROOT_DIR}/logs" \
- VID_LOG_LEVEL="INFO" \
- LOG4J_LOGLEVEL="INFO" \
- LOG4J_APPENDER="rollingfile" \
- LOG4J_LOGS_DIRECTORY="${ROOT_DIR}/logs"
-
-# UEB variables
-ENV VID_UEB_URL_LIST="ueb.api.simpledemo.onap.org" \
- VID_UEB_CONSUMER_GROUP="VID" \
- VID_UEB_APP_KEY="2Re7Pvdkgw5aeAUD" \
- VID_UEB_APP_SECRET="S31PrbOzGgL4hg4owgtx47Da" \
- VID_UEB_APP_MAILBOX_NAME="ECOMP-PORTAL-OUTBOX-90" \
- VID_UEB_LISTENERS_ENABLE="false"
-
-# SDC variables
-ENV ASDC_CLIENT_REST_PROTOCOL="http" \
- ASDC_CLIENT_REST_HOST="c2.vm1.sdc.simpledemo.onap.org" \
- ASDC_CLIENT_REST_PORT="8080" \
- ASDC_CLIENT_REST_AUTH="Basic dmlkOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU=" \
- ASDC_CLIENT_MODEL_NAMESPACE="org.onap" \
- ASDC_CLIENT_TYPE="REST"
-
-# AAI variables
-ENV VID_AAI_URL="https://aai.api.simpledemo.onap.org:8443" \
- AAI_TRUSTSTORE_FILENAME="tomcat_keystore" \
- AAI_KEYSTORE_FILENAME="tomcat_keystore" \
- AAI_TRUSTSTORE_PASSWD_X="OBF:1ks51l8d1o3i1pcc1r2r1e211r391kls1pyj1z7u1njf1lx51go21hnj1y0k1mli1sop1k8o1j651vu91mxw1vun1mze1vv11j8x1k5i1sp11mjc1y161hlr1gm41m111nkj1z781pw31kku1r4p1e391r571pbm1o741l4x1ksp" \
- AAI_KEYSTORE_PASSWD_X="OBF:1ks51l8d1o3i1pcc1r2r1e211r391kls1pyj1z7u1njf1lx51go21hnj1y0k1mli1sop1k8o1j651vu91mxw1vun1mze1vv11j8x1k5i1sp11mjc1y161hlr1gm41m111nkj1z781pw31kku1r4p1e391r571pbm1o741l4x1ksp" \
- AAI_VID_PASSWD_X="OBF:1jm91i0v1jl9" \
- AAI_VID_UID="VID" \
- AAI_USE_CLIENT_CERT="false" \
- AAI_VNF_PROV_STATUS="PREPROV,NVTPROV,PROV,CAPPED"
-
-# SO environment variables
-ENV VID_MSO_SERVER_URL="http://vm1.mso.simpledemo.onap.org:8080/onap/so/infra" \
- MSO_DME2_SERVER_URL="http://localhost:8081" \
- VID_MSO_PASS="OBF:1ih71i271vny1yf41ymf1ylz1yf21vn41hzj1icz" \
- MSO_DME2_CLIENT_TIMEOUT="10000" \
- MSO_DME2_CLIENT_READ_TIMEOUT="10000" \
- MSO_POLLING_INTERVAL_MSECS="10000" \
- VID_MSO_USER="InfraPortalClient" \
- MSO_DME2_ENABLED="false"
-
-# Portal variables
-ENV VID_CONTACT_US_LINK="https://todo_contact_us_link.com" \
- VID_ECOMP_REDIRECT_URL="http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/login.htm" \
- VID_ECOMP_REST_URL="http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/auxapi" \
- VID_ECOMP_SHARED_CONTEXT_REST_URL="http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/context"
-
-# Custom options
-ENV JAVA_OPTS="-Xmx1536m -Xms1536m"
-ENV CATALINA_OPTS="-Dvid.keystore.password=${VID_KEYSTORE_PASSWORD} -Dvid.keyalias=vid@vid.onap.org -Dvid.keystore.filename=${VID_KEYSTORE_FILENAME}"
-
-ADD maven/config/org.onap.vid.jks ${VID_KEYSTORE_FILENAME}
-ADD maven/config/org.onap.vid.trust.jks ${VID_TRUSTSTORE_FILENAME}
-ADD maven/config/server.xml ${VID_TOMCAT_PATH}
-ADD maven/scripts/*.sh /tmp/vid/
-ADD maven/artifacts/vid.war /tmp/vid/stage/
-
-RUN chmod +x /tmp/vid/localize.sh
-
+FROM tomcat:8.0-jre8-alpine
+
+# add vim and uncomment alias to speedup troubleshooting purpose
+RUN apk update && apk add openjdk8 vim net-tools
+
+COPY conf.d/ /etc/onap/vid/conf.d/
+
+# MariaDB variables
+ENV VID_MYSQL_HOST="vid-mariadb-docker-instance" \
+ VID_MYSQL_PORT="3306" \
+ VID_MYSQL_DBNAME="vid_portal" \
+ VID_MYSQL_USER="vidadmin" \
+ VID_MYSQL_PASS="Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U" \
+ VID_MYSQL_MAXCONNECTIONS="5"
+
+# General variables
+ENV VID_APP_DISPLAY_NAME="VID" \
+ VID_MYLOGIN_FEED_DIRECTORY="/tmp/MyLogins" \
+ VID_ROLE_ACCESS_CENTRALIZED="local" \
+ VID_DECRYPTION_KEY="AGLDdG4D04BKm2IxIWEr8o=" \
+ VID_ECOMP_PORTAL_INBOX_NAME="ECOMP-PORTAL-INBOX"
+
+ENV ROOT_DIR /opt/app/vid
+ENV CACHE_DIRECTORY="$ROOT_DIR/cache"
+
+# Keystore variables
+ENV VID_KEYSTORE_FILENAME="${ROOT_DIR}/etc/org.onap.vid.jks" \
+ VID_TRUSTSTORE_FILENAME="${ROOT_DIR}/etc/org.onap.vid.trust.jks" \
+ VID_KEYSTORE_PASSWORD="ry1RLC(?M6?2fQ]1a2)2y{P:" \
+ VID_TRUSTSTORE_PASSWORD="OBF:1dx01j0e1hs01t981mis1dws156s1ojc1qjc1zsx1pw31qob1qr71pyj1zst1qhy1ojq156i1dua1mm21tb61hvi1j0g1du2" \
+ VID_TOMCAT_PATH="/usr/local/tomcat/conf/"
+
+# Logging variables
+ENV VID_LOG_DIR="${ROOT_DIR}/logs" \
+ VID_LOG_LEVEL="INFO" \
+ LOG4J_LOGLEVEL="INFO" \
+ LOG4J_APPENDER="rollingfile" \
+ LOG4J_LOGS_DIRECTORY="${ROOT_DIR}/logs"
+
+# UEB variables
+ENV VID_UEB_URL_LIST="ueb.api.simpledemo.onap.org" \
+ VID_UEB_CONSUMER_GROUP="VID" \
+ VID_UEB_APP_KEY="2Re7Pvdkgw5aeAUD" \
+ VID_UEB_APP_SECRET="S31PrbOzGgL4hg4owgtx47Da" \
+ VID_UEB_APP_MAILBOX_NAME="ECOMP-PORTAL-OUTBOX-90" \
+ VID_UEB_LISTENERS_ENABLE="false"
+
+# SDC variables
+ENV ASDC_CLIENT_REST_PROTOCOL="http" \
+ ASDC_CLIENT_REST_HOST="c2.vm1.sdc.simpledemo.onap.org" \
+ ASDC_CLIENT_REST_PORT="8080" \
+ ASDC_CLIENT_REST_AUTH="Basic dmlkOktwOGJKNFNYc3pNMFdYbGhhazNlSGxjc2UyZ0F3ODR2YW9HR21KdlV5MlU=" \
+ ASDC_CLIENT_MODEL_NAMESPACE="org.onap" \
+ ASDC_CLIENT_TYPE="REST"
+
+# AAI variables
+ENV VID_AAI_URL="https://aai.api.simpledemo.onap.org:8443" \
+ AAI_TRUSTSTORE_FILENAME="tomcat_keystore" \
+ AAI_KEYSTORE_FILENAME="tomcat_keystore" \
+ AAI_TRUSTSTORE_PASSWD_X="OBF:1ks51l8d1o3i1pcc1r2r1e211r391kls1pyj1z7u1njf1lx51go21hnj1y0k1mli1sop1k8o1j651vu91mxw1vun1mze1vv11j8x1k5i1sp11mjc1y161hlr1gm41m111nkj1z781pw31kku1r4p1e391r571pbm1o741l4x1ksp" \
+ AAI_KEYSTORE_PASSWD_X="OBF:1ks51l8d1o3i1pcc1r2r1e211r391kls1pyj1z7u1njf1lx51go21hnj1y0k1mli1sop1k8o1j651vu91mxw1vun1mze1vv11j8x1k5i1sp11mjc1y161hlr1gm41m111nkj1z781pw31kku1r4p1e391r571pbm1o741l4x1ksp" \
+ AAI_VID_PASSWD_X="OBF:1jm91i0v1jl9" \
+ AAI_VID_UID="VID" \
+ AAI_USE_CLIENT_CERT="false" \
+ AAI_VNF_PROV_STATUS="PREPROV,NVTPROV,PROV,CAPPED"
+
+# SO environment variables
+ENV VID_MSO_SERVER_URL="http://vm1.mso.simpledemo.onap.org:8080/onap/so/infra" \
+ MSO_DME2_SERVER_URL="http://localhost:8081" \
+ VID_MSO_PASS="OBF:1ih71i271vny1yf41ymf1ylz1yf21vn41hzj1icz" \
+ MSO_DME2_CLIENT_TIMEOUT="10000" \
+ MSO_DME2_CLIENT_READ_TIMEOUT="10000" \
+ MSO_POLLING_INTERVAL_MSECS="10000" \
+ VID_MSO_USER="InfraPortalClient" \
+ MSO_DME2_ENABLED="false"
+
+# Portal variables
+ENV VID_CONTACT_US_LINK="https://todo_contact_us_link.com" \
+ VID_ECOMP_REDIRECT_URL="http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/login.htm" \
+ VID_ECOMP_REST_URL="http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/auxapi" \
+ VID_ECOMP_SHARED_CONTEXT_REST_URL="http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/context"
+
+# Custom options
+ENV JAVA_OPTS="-Xmx1536m -Xms1536m"
+ENV CATALINA_OPTS="-Dvid.keystore.password=${VID_KEYSTORE_PASSWORD} -Dvid.keyalias=vid@vid.onap.org -Dvid.keystore.filename=${VID_KEYSTORE_FILENAME}"
+
+ADD maven/config/org.onap.vid.jks ${VID_KEYSTORE_FILENAME}
+ADD maven/config/org.onap.vid.trust.jks ${VID_TRUSTSTORE_FILENAME}
+ADD maven/config/server.xml ${VID_TOMCAT_PATH}
+ADD maven/scripts/*.sh /tmp/vid/
+ADD maven/artifacts/vid.war /tmp/vid/stage/
+
+RUN chmod +x /tmp/vid/localize.sh
+
CMD ["/tmp/vid/localize.sh"] \ No newline at end of file
diff --git a/epsdk-app-onap/pom.xml b/epsdk-app-onap/pom.xml
index 43d1db4f4..00b421e88 100755
--- a/epsdk-app-onap/pom.xml
+++ b/epsdk-app-onap/pom.xml
@@ -13,12 +13,19 @@
<name>ECOMP SDK Webapp for OpenSource</name>
<description>ECOMP SDK Web Application for public release</description>
+ <parent>
+ <groupId>org.onap.oparent</groupId>
+ <artifactId>oparent</artifactId>
+ <version>1.2.3</version>
+ <relativePath/>
+ </parent>
+
<properties>
<encoding>UTF-8</encoding>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<epsdk.version>2.4.0</epsdk.version>
- <jackson.version>2.9.7</jackson.version>
+ <jackson.version>2.9.8</jackson.version>
<springframework.version>4.2.9.RELEASE</springframework.version>
<hibernate.version>4.3.11.Final</hibernate.version>
<!-- Skip assembling the zip; assemble via mvn -Dskipassembly=false .. -->
diff --git a/epsdk-app-onap/src/main/java/org/onap/portalapp/conf/ExternalAppConfig.java b/epsdk-app-onap/src/main/java/org/onap/portalapp/conf/ExternalAppConfig.java
index e29218d9f..2950c7f7d 100644
--- a/epsdk-app-onap/src/main/java/org/onap/portalapp/conf/ExternalAppConfig.java
+++ b/epsdk-app-onap/src/main/java/org/onap/portalapp/conf/ExternalAppConfig.java
@@ -37,8 +37,10 @@
*/
package org.onap.portalapp.conf;
+import java.util.ArrayList;
+import java.util.List;
+import javax.sql.DataSource;
import org.onap.portalapp.login.LoginStrategyImpl;
-import org.onap.portalapp.scheduler.RegistryAdapter;
import org.onap.portalsdk.core.auth.LoginStrategy;
import org.onap.portalsdk.core.conf.AppConfig;
import org.onap.portalsdk.core.conf.Configurable;
@@ -47,9 +49,15 @@ import org.onap.portalsdk.core.objectcache.AbstractCacheManager;
import org.onap.portalsdk.core.service.DataAccessService;
import org.onap.portalsdk.core.util.CacheManager;
import org.onap.portalsdk.core.util.SystemProperties;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
-import org.springframework.context.annotation.*;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.DependsOn;
+import org.springframework.context.annotation.EnableAspectJAutoProxy;
+import org.springframework.context.annotation.Import;
+import org.springframework.context.annotation.Profile;
+import org.springframework.context.annotation.PropertySource;
import org.springframework.core.io.Resource;
import org.springframework.jdbc.datasource.init.DataSourceInitializer;
import org.springframework.jdbc.datasource.init.DatabasePopulator;
@@ -59,14 +67,8 @@ import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.quartz.SchedulerFactoryBean;
import org.springframework.scheduling.quartz.SpringBeanJobFactory;
import org.springframework.web.multipart.commons.CommonsMultipartResolver;
-import org.springframework.web.servlet.ViewResolver;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
-import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
-
-import javax.sql.DataSource;
-import java.util.ArrayList;
-import java.util.List;
/**
* ONAP Portal SDK sample application. Extends core AppConfig class to
@@ -84,7 +86,7 @@ public class ExternalAppConfig extends AppConfig implements Configurable {
/** The Constant LOG. */
private static final EELFLoggerDelegate LOG = EELFLoggerDelegate.getLogger(ExternalAppConfig.class);
-
+
/** The vid schema script. */
@Value("classpath:vid-schema.sql")
private Resource vidSchemaScript;
@@ -92,7 +94,7 @@ public class ExternalAppConfig extends AppConfig implements Configurable {
/** The vid data script. */
@Value("classpath:vid-data.sql")
private Resource vidDataScript;
-
+
/**
* The Class InnerConfiguration.
*/
@@ -115,7 +117,7 @@ public class ExternalAppConfig extends AppConfig implements Configurable {
/**
* Creates a new list with a single entry that is the external app
* definitions.xml path.
- *
+ *
* @return List of String, size 1
*/
@Override
@@ -139,7 +141,7 @@ public class ExternalAppConfig extends AppConfig implements Configurable {
/**
* Creates and returns a new instance of a {@link CacheManager} class.
- *
+ *
* @return New instance of {@link CacheManager}
*/
@Bean
@@ -150,7 +152,7 @@ public class ExternalAppConfig extends AppConfig implements Configurable {
/**
* Creates and returns a new instance of a {@link SchedulerFactoryBean} and
* populates it with triggers.
- *
+ *
* @return New instance of {@link SchedulerFactoryBean}
*/
@Bean
@@ -161,7 +163,7 @@ public class ExternalAppConfig extends AppConfig implements Configurable {
return schedulerFactory;
}
-
+
/**
* Data source initializer.
*
@@ -170,15 +172,15 @@ public class ExternalAppConfig extends AppConfig implements Configurable {
*/
@Bean
public DataSourceInitializer dataSourceInitializer(DataSource dataSource) {
-
+
LOG.info("Initializing VID data source");
-
+
final DataSourceInitializer initializer = new DataSourceInitializer();
initializer.setDataSource(dataSource);
initializer.setDatabasePopulator(databasePopulator());
return initializer;
}
-
+
/**
* Database populator.
*
@@ -186,7 +188,7 @@ public class ExternalAppConfig extends AppConfig implements Configurable {
*/
public DatabasePopulator databasePopulator() {
LOG.info("Populating VID data source");
-
+
final ResourceDatabasePopulator populator = new ResourceDatabasePopulator();
populator.addScript(vidSchemaScript);
populator.addScript(vidDataScript);
diff --git a/epsdk-app-onap/src/main/resources/vid-data.sql b/epsdk-app-onap/src/main/resources/vid-data.sql
index 9c48f853b..3d1d8fe15 100755
--- a/epsdk-app-onap/src/main/resources/vid-data.sql
+++ b/epsdk-app-onap/src/main/resources/vid-data.sql
@@ -1,750 +1,751 @@
-/*-
- * ============LICENSE_START=======================================================
- * VID
- * ================================================================================
- * Copyright (C) 2017 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=========================================================
- */
-USE vid_openecomp_epsdk;
-
-DELETE FROM `fn_datasource`;
-TRUNCATE `fn_menu`;
-DELETE FROM `fn_role_function`;
-DELETE FROM `fn_restricted_url`;
-DELETE FROM `fn_tab_selected`;
-DELETE FROM `fn_tab`;
-DELETE FROM `fn_function`;
-DELETE FROM `fn_lu_alert_method`;
-DELETE FROM `fn_lu_activity`;
-DELETE FROM `fn_lu_call_times`;
-DELETE FROM `fn_lu_country`;
-DELETE FROM `fn_lu_menu_set`;
-DELETE FROM `fn_lu_priority`;
-DELETE FROM `fn_lu_state`;
-DELETE FROM `fn_lu_tab_set`;
-
---
--- Dumping data for table `cr_raptor_action_img`
---
-REPLACE INTO `cr_raptor_action_img` VALUES ('CALENDAR','/static/fusion/raptor/img/Calendar-16x16.png');
-REPLACE INTO `cr_raptor_action_img` VALUES ('DELETE','/static/fusion/raptor/img/deleteicon.gif');
-
---
--- Dumping data for table `fn_app`
---
-INSERT IGNORE INTO `fn_app` VALUES (1,'Default',null,'Some Default Description','Some Default Note',null,null,null,'ECPP','?',1,'okYTaDrhzibcbGVq5mjkVQ==','N','N',null,'Default',null,null,'ECOMP-PORTAL-INBOX');
-
-
---
--- Dumping data for table `vid_workflow`
---
---update & replace workflows are disabled in ONAP
---INSERT INTO `vid_workflow` (`WORKFLOW_DB_ID`, `WORKFLOW_APP_NAME`) VALUES (1, 'Update') ON DUPLICATE KEY UPDATE WORKFLOW_APP_NAME='Update';
---INSERT INTO `vid_workflow` (`WORKFLOW_DB_ID`, `WORKFLOW_APP_NAME`) VALUES (2, 'Replace') ON DUPLICATE KEY UPDATE WORKFLOW_APP_NAME='Replace';
-INSERT INTO `vid_workflow` (`WORKFLOW_DB_ID`, `WORKFLOW_APP_NAME`) VALUES (3, 'VNF In Place Software Update') ON DUPLICATE KEY UPDATE WORKFLOW_APP_NAME='VNF In Place Software Update';
-INSERT INTO `vid_workflow` (`WORKFLOW_DB_ID`, `WORKFLOW_APP_NAME`) VALUES (4, 'VNF Scale Out') ON DUPLICATE KEY UPDATE WORKFLOW_APP_NAME='VNF Scale Out';
-
-
---
--- Dumping data for table `vid_category_parameter`
---
-INSERT INTO `vid_category_parameter` (`CATEGORY_ID`, `NAME`, `ID_SUPPORTED`, `FAMILY`,`CREATED_DATE`, `MODIFIED_DATE`) VALUES (1, 'platform', 0, 'PARAMETER_STANDARDIZATION','2017-09-12 17:01:13', '2017-09-12 17:01:13') ON DUPLICATE KEY UPDATE NAME='platform';
-INSERT INTO `vid_category_parameter` (`CATEGORY_ID`, `NAME`, `ID_SUPPORTED`, `FAMILY`,`CREATED_DATE`, `MODIFIED_DATE`) VALUES (2, 'project', 0, 'PARAMETER_STANDARDIZATION','2017-09-12 18:23:54', '2017-09-13 15:05:25') ON DUPLICATE KEY UPDATE NAME='project';
-INSERT INTO `vid_category_parameter` (`CATEGORY_ID`, `NAME`, `ID_SUPPORTED`, `FAMILY`,`CREATED_DATE`, `MODIFIED_DATE`) VALUES (3, 'lineOfBusiness', 0,'PARAMETER_STANDARDIZATION', '2017-09-12 18:24:14', '2017-09-12 18:24:15') ON DUPLICATE KEY UPDATE NAME='lineOfBusiness';
-INSERT INTO `vid_category_parameter` (`CATEGORY_ID`, `NAME`, `ID_SUPPORTED`, `FAMILY`,`CREATED_DATE`, `MODIFIED_DATE`) VALUES (4, 'owningEntity', 1, 'PARAMETER_STANDARDIZATION', '2017-09-12 18:24:26', '2017-09-12 18:24:28') ON DUPLICATE KEY UPDATE NAME='owningEntity';
-INSERT INTO `vid_category_parameter` (`CATEGORY_ID`, `NAME`, `ID_SUPPORTED`, `FAMILY`,`CREATED_DATE`, `MODIFIED_DATE`) VALUES (5,'operational-environment-type', 0,'TENANT_ISOLATION', '2017-11-12 18:24:26', '2017-11-12 18:24:28') ON DUPLICATE KEY UPDATE NAME='operational-environment-type';
-INSERT INTO `vid_category_parameter` (`CATEGORY_ID`, `NAME`, `ID_SUPPORTED`, `FAMILY`,`CREATED_DATE`, `MODIFIED_DATE`) VALUES (6,'workload-context', 0, 'TENANT_ISOLATION','2017-11-12 18:24:26', '2017-11-12 18:24:28') ON DUPLICATE KEY UPDATE NAME='workload-context';
-
---
--- Dumping data for table `vid_category_parameter_option`
---
-INSERT INTO `vid_category_parameter_option` (`CATEGORY_OPT_APP_ID`, `NAME`, `CATEGORY_ID`) VALUES ('ECOMP', 'ECOMP', '6') ON DUPLICATE KEY UPDATE NAME='ECOMP';
-INSERT INTO `vid_category_parameter_option` (`CATEGORY_OPT_APP_ID`, `NAME`, `CATEGORY_ID`) VALUES ('DEV', 'DEV', '6') ON DUPLICATE KEY UPDATE NAME='DEV';
-INSERT INTO `vid_category_parameter_option` (`CATEGORY_OPT_APP_ID`, `NAME`, `CATEGORY_ID`) VALUES ('TEST', 'TEST', '6') ON DUPLICATE KEY UPDATE NAME='TEST';
-INSERT INTO `vid_category_parameter_option` (`CATEGORY_OPT_APP_ID`, `NAME`, `CATEGORY_ID`) VALUES ('VNF', 'VNF', '5') ON DUPLICATE KEY UPDATE NAME='VNF';
-
---
--- Dumping data for table `fn_function`
---
-INSERT INTO `fn_function` VALUES ('1','test role function','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='test role function';
-INSERT INTO `fn_function` VALUES ('doclib','Document Library','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Document Library';
-INSERT INTO `fn_function` VALUES ('doclib_admin','Document Library Admin','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Document Library Admin';
-INSERT INTO `fn_function` VALUES ('login','Login','url','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Login';
-INSERT INTO `fn_function` VALUES ('menu_admin','Admin Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Admin Menu';
-INSERT INTO `fn_function` VALUES ('menu_ajax','Ajax Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Ajax Menu';
-INSERT INTO `fn_function` VALUES ('menu_servicemodels','Browse SDC Service Instances','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Browse SDC Service Instances';
-INSERT INTO `fn_function` VALUES ('menu_concept','CoNCEPT','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='CoNCEPT';
-INSERT INTO `fn_function` VALUES ('menu_customer','Customer Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Customer Menu';
-INSERT INTO `fn_function` VALUES ('menu_customer_create','Customer Create','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Customer Create';
-INSERT INTO `fn_function` VALUES ('menu_doclib','Document Library Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Document Library Menu';
-INSERT INTO `fn_function` VALUES ('menu_feedback','Feedback Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Feedback Menu';
-INSERT INTO `fn_function` VALUES ('menu_help','Help Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Help Menu';
-INSERT INTO `fn_function` VALUES ('menu_home','Home Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Home Menu';
-INSERT INTO `fn_function` VALUES ('menu_itracker','iTracker Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='iTracker Menu';
-INSERT INTO `fn_function` VALUES ('menu_itracker_admin','Itracker Admin/Support menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Itracker Admin/Support menu';
-INSERT INTO `fn_function` VALUES ('menu_job','Job Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Job Menu';
-INSERT INTO `fn_function` VALUES ('menu_job_create','Job Create','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Job Create';
-INSERT INTO `fn_function` VALUES ('menu_job_designer','Process in Designer view','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Process in Designer view';
-INSERT INTO `fn_function` VALUES ('menu_logout','Logout Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Logout Menu';
-INSERT INTO `fn_function` VALUES ('menu_map','Map Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Map Menu';
-INSERT INTO `fn_function` VALUES ('menu_newserinstance','Create New Service Instance','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Create New Service Instance';
-INSERT INTO `fn_function` VALUES ('menu_notes','Notes Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Notes Menu';
-INSERT INTO `fn_function` VALUES ('menu_process','Process List','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Process List';
-INSERT INTO `fn_function` VALUES ('menu_profile','Profile Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Profile Menu';
-INSERT INTO `fn_function` VALUES ('menu_profile_create','Profile Create','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Profile Create';
-INSERT INTO `fn_function` VALUES ('menu_profile_import','Profile Import','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Profile Import';
-INSERT INTO `fn_function` VALUES ('menu_reports','Reports Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Reports Menu';
-INSERT INTO `fn_function` VALUES ('menu_sample','Sample Pages Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Sample Pages Menu';
-INSERT INTO `fn_function` VALUES ('menu_tab','Sample Tab Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Sample Tab Menu';
-INSERT INTO `fn_function` VALUES ('menu_task','Task Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Task Menu';
-INSERT INTO `fn_function` VALUES ('menu_task_search','Task Search','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Task Search';
-INSERT INTO `fn_function` VALUES ('menu_test','Test Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Test Menu';
-INSERT INTO `fn_function` VALUES ('menu_viewlog','Log Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Log Menu';
-INSERT INTO `fn_function` VALUES ('view_reports','View Raptor reports','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='View Raptor reports';
-INSERT INTO `fn_function` VALUES ('menu_searchexisting', 'Search for Existing Service Instances','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Search for Existing Service Instances';
-INSERT INTO `fn_function` VALUES ('menu_changemanagement','VNF Changes','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='VNF Changes';
---INSERT INTO `fn_function` VALUES ('menu_testenvironment','Test Environments','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Test Environments';
-
---
--- Dumping data for table `fn_lu_activity`
---
-REPLACE INTO `fn_lu_activity` VALUES ('add_child_role','add_child_role');
-REPLACE INTO `fn_lu_activity` VALUES ('add_role','add_role');
-REPLACE INTO `fn_lu_activity` VALUES ('add_role_function','add_role_function');
-REPLACE INTO `fn_lu_activity` VALUES ('add_user_role','add_user_role');
-REPLACE INTO `fn_lu_activity` VALUES ('login','Login');
-REPLACE INTO `fn_lu_activity` VALUES ('logout','Logout');
-REPLACE INTO `fn_lu_activity` VALUES ('mobile_login','Mobile Login');
-REPLACE INTO `fn_lu_activity` VALUES ('mobile_logout','Mobile Logout');
-REPLACE INTO `fn_lu_activity` VALUES ('remove_child_role','remove_child_role');
-REPLACE INTO `fn_lu_activity` VALUES ('remove_role','remove_role');
-REPLACE INTO `fn_lu_activity` VALUES ('remove_role_function','remove_role_function');
-REPLACE INTO `fn_lu_activity` VALUES ('remove_user_role','remove_user_role');
-
---
--- Dumping data for table `fn_lu_alert_method`
---
-REPLACE INTO `fn_lu_alert_method` VALUES ('EMAIL','Email');
-REPLACE INTO `fn_lu_alert_method` VALUES ('FAX','Fax');
-REPLACE INTO `fn_lu_alert_method` VALUES ('PAGER','Pager');
-REPLACE INTO `fn_lu_alert_method` VALUES ('PHONE','Phone');
-REPLACE INTO `fn_lu_alert_method` VALUES ('SMS','SMS');
-
---
--- Dumping data for table `fn_lu_call_times`
---
-REPLACE INTO `fn_lu_call_times` VALUES (1,20,'20 min');
-REPLACE INTO `fn_lu_call_times` VALUES (2,40,'40 min');
-REPLACE INTO `fn_lu_call_times` VALUES (3,60,'1 hr');
-REPLACE INTO `fn_lu_call_times` VALUES (4,80,'1 hr 20 min');
-REPLACE INTO `fn_lu_call_times` VALUES (5,100,'1 hr 40 min');
-REPLACE INTO `fn_lu_call_times` VALUES (6,120,'2 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (7,140,'2 hr 20 min');
-REPLACE INTO `fn_lu_call_times` VALUES (8,160,'2 hr 40 min');
-REPLACE INTO `fn_lu_call_times` VALUES (9,180,'3 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (10,200,'3 hr 20 min');
-REPLACE INTO `fn_lu_call_times` VALUES (11,220,'3 hr 40 min');
-REPLACE INTO `fn_lu_call_times` VALUES (12,240,'4 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (13,260,'4 hr 20 min');
-REPLACE INTO `fn_lu_call_times` VALUES (14,280,'4 hr 40 min');
-REPLACE INTO `fn_lu_call_times` VALUES (15,300,'5 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (16,320,'5 hr 20 min');
-REPLACE INTO `fn_lu_call_times` VALUES (17,340,'5 hr 40 min');
-REPLACE INTO `fn_lu_call_times` VALUES (18,360,'6 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (19,380,'6 hr 20 min');
-REPLACE INTO `fn_lu_call_times` VALUES (20,400,'6 hr 40 min');
-REPLACE INTO `fn_lu_call_times` VALUES (21,420,'7 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (22,440,'7 hr 20 min');
-REPLACE INTO `fn_lu_call_times` VALUES (23,460,'7 hr 40 min');
-REPLACE INTO `fn_lu_call_times` VALUES (24,480,'8 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (25,500,'8 hr 20 min');
-REPLACE INTO `fn_lu_call_times` VALUES (26,520,'8 hr 40 min');
-REPLACE INTO `fn_lu_call_times` VALUES (27,540,'9 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (28,560,'9 hr 20 min');
-REPLACE INTO `fn_lu_call_times` VALUES (29,580,'9 hr 40 min');
-REPLACE INTO `fn_lu_call_times` VALUES (30,600,'10 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (31,10,'10 min');
-REPLACE INTO `fn_lu_call_times` VALUES (32,5,'5 min');
-REPLACE INTO `fn_lu_call_times` VALUES (33,1200,'20 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (34,1800,'30 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (35,2400,'40 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (36,3000,'50 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (37,4200,'70 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (38,4800,'80 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (39,5400,'90 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (40,6000,'100 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (41,7200,'120 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (42,9600,'160 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (43,10800,'180 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (44,12000,'200 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (45,18000,'300 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (46,24000,'400 hrs');
-REPLACE INTO `fn_lu_call_times` VALUES (47,30000,'500 hrs');
-
---
--- Dumping data for table `fn_lu_country`
---
-REPLACE INTO `fn_lu_country` VALUES ('AD','Andorra','Andorra',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('AE','United Arab Emirates','United Arab Emirates',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('AF','Afghanistan','Afghanistan',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('AG','Antigua and Barbuda','Antigua and Barbuda',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('AI','Anguilla','Anguilla',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('AL','Albania','Albania',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('AM','Armenia','Armenia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('AN','Netherlands Antilles','Netherlands Antilles',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('AO','Angola','Angola',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('AQ','Antarctica','Antarctica',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('AR','Argentina','Argentina',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('AS','American Samoa','American Samoa',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('AT','Austria','Austria',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('AU','Australia','Australia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('AW','Aruba','Aruba',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('AZ','Azerbaidjan','Azerbaidjan',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BA','Bosnia-Herzegovina','Bosnia-Herzegovina',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BB','Barbados','Barbados',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BD','Bangladesh','Bangladesh',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BE','Belgium','Belgium',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BF','Burkina Faso','Burkina Faso',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BG','Bulgaria','Bulgaria',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BH','Bahrain','Bahrain',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BI','Burundi','Burundi',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BJ','Benin','Benin',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BM','Bermuda','Bermuda',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BN','Brunei Darussalam','Brunei Darussalam',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BO','Bolivia','Bolivia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BR','Brazil','Brazil',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BS','Bahamas','Bahamas',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BT','Bhutan','Bhutan',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BV','Bouvet Island','Bouvet Island',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BW','Botswana','Botswana',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BY','Belarus','Belarus',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('BZ','Belize','Belize',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CA','Canada','Canada',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CC','Cocos (Keeling) Islands','Cocos (Keeling) Islands',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CF','Central African Republic','Central African Republic',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CG','Congo','Congo',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CH','Switzerland','Switzerland',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CI','Ivory Coast (Cote D\'Ivoire)','Ivory Coast (Cote D\'Ivoire)',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CK','Cook Islands','Cook Islands',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CL','Chile','Chile',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CM','Cameroon','Cameroon',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CN','China','China','China');
-REPLACE INTO `fn_lu_country` VALUES ('CO','Colombia','Colombia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CR','Costa Rica','Costa Rica',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CS','Former Czechoslovakia','Former Czechoslovakia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CU','Cuba','Cuba',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CV','Cape Verde','Cape Verde',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CX','Christmas Island','Christmas Island',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CY','Cyprus','Cyprus',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('CZ','Czech Republic','Czech Republic',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('DE','Germany','Germany',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('DJ','Djibouti','Djibouti',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('DK','Denmark','Denmark',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('DM','Dominica','Dominica',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('DO','Dominican Republic','Dominican Republic',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('DZ','Algeria','Algeria',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('EC','Ecuador','Ecuador',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('EE','Estonia','Estonia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('EG','Egypt','Egypt',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('EH','Western Sahara','Western Sahara',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('ER','Eritrea','Eritrea',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('ES','Spain','Spain',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('ET','Ethiopia','Ethiopia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('FI','Finland','Finland',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('FJ','Fiji','Fiji',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('FK','Falkland Islands','Falkland Islands',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('FM','Micronesia','Micronesia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('FO','Faroe Islands','Faroe Islands',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('FR','France','France',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('FX','France (European Territory)','France (European Territory)',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GA','Gabon','Gabon',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GB','Great Britain','Great Britain',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GD','Grenada','Grenada',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GE','Georgia','Georgia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GF','French Guyana','French Guyana',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GH','Ghana','Ghana',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GI','Gibraltar','Gibraltar',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GL','Greenland','Greenland',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GM','Gambia','Gambia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GN','Guinea','Guinea',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GP','Guadeloupe (French)','Guadeloupe (French)',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GQ','Equatorial Guinea','Equatorial Guinea',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GR','Greece','Greece',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GS','S. Georgia and S. Sandwich Isls.','S. Georgia and S. Sandwich Isls.',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GT','Guatemala','Guatemala',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GU','Guam (USA)','Guam (USA)',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GW','Guinea Bissau','Guinea Bissau',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('GY','Guyana','Guyana',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('HK','Hong Kong','Hong Kong',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('HM','Heard and McDonald Islands','Heard and McDonald Islands',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('HN','Honduras','Honduras',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('HR','Croatia','Croatia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('HT','Haiti','Haiti',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('HU','Hungary','Hungary',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('ID','Indonesia','Indonesia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('IE','Ireland','Ireland',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('IL','Israel','Israel',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('IN','India','India',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('IO','British Indian Ocean Territory','British Indian Ocean Territory',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('IQ','Iraq','Iraq',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('IR','Iran','Iran',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('IS','Iceland','Iceland',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('IT','Italy','Italy',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('JM','Jamaica','Jamaica',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('JO','Jordan','Jordan',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('JP','Japan','Japan',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('KE','Kenya','Kenya',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('KG','Kyrgyzstan','Kyrgyzstan',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('KH','Cambodia','Cambodia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('KI','Kiribati','Kiribati',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('KM','Comoros','Comoros',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('KN','Saint Kitts and Nevis Anguilla','Saint Kitts and Nevis Anguilla',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('KP','North Korea','North Korea',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('KR','South Korea','South Korea',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('KW','Kuwait','Kuwait',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('KY','Cayman Islands','Cayman Islands',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('KZ','Kazakhstan','Kazakhstan',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('LA','Laos','Laos',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('LB','Lebanon','Lebanon',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('LC','Saint Lucia','Saint Lucia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('LI','Liechtenstein','Liechtenstein',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('LK','Sri Lanka','Sri Lanka',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('LR','Liberia','Liberia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('LS','Lesotho','Lesotho',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('LT','Lithuania','Lithuania',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('LU','Luxembourg','Luxembourg',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('LV','Latvia','Latvia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('LY','Libya','Libya',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MA','Morocco','Morocco',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MC','Monaco','Monaco',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MD','Moldavia','Moldavia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MG','Madagascar','Madagascar',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MH','Marshall Islands','Marshall Islands',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MK','Macedonia','Macedonia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('ML','Mali','Mali',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MM','Myanmar','Myanmar',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MN','Mongolia','Mongolia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MO','Macau','Macau',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MP','Northern Mariana Islands','Northern Mariana Islands',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MQ','Martinique (French)','Martinique (French)',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MR','Mauritania','Mauritania',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MS','Montserrat','Montserrat',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MT','Malta','Malta',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MU','Mauritius','Mauritius',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MV','Maldives','Maldives',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MW','Malawi','Malawi',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MX','Mexico','Mexico','Mexico');
-REPLACE INTO `fn_lu_country` VALUES ('MY','Malaysia','Malaysia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('MZ','Mozambique','Mozambique',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('NA','Namibia','Namibia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('NC','New Caledonia (French)','New Caledonia (French)',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('NE','Niger','Niger',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('NF','Norfolk Island','Norfolk Island',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('NG','Nigeria','Nigeria',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('NI','Nicaragua','Nicaragua',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('NL','Netherlands','Netherlands',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('NO','Norway','Norway',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('NP','Nepal','Nepal',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('NR','Nauru','Nauru',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('NU','Niue','Niue',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('NZ','New Zealand','New Zealand',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('OM','Oman','Oman',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('PA','Panama','Panama',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('PE','Peru','Peru',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('PF','Polynesia (French)','Polynesia (French)',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('PG','Papua New Guinea','Papua New Guinea',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('PH','Philippines','Philippines',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('PK','Pakistan','Pakistan',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('PL','Poland','Poland',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('PM','Saint Pierre and Miquelon','Saint Pierre and Miquelon',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('PN','Pitcairn Island','Pitcairn Island',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('PR','Puerto Rico','Puerto Rico',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('PT','Portugal','Portugal',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('PW','Palau','Palau',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('PY','Paraguay','Paraguay',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('QA','Qatar','Qatar',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('RE','Reunion (French)','Reunion (French)',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('RO','Romania','Romania',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('RU','Russian Federation','Russian Federation',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('RW','Rwanda','Rwanda',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SA','Saudi Arabia','Saudi Arabia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SB','Solomon Islands','Solomon Islands',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SC','Seychelles','Seychelles',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SD','Sudan','Sudan',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SE','Sweden','Sweden',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SG','Singapore','Singapore',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SH','Saint Helena','Saint Helena',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SI','Slovenia','Slovenia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SJ','Svalbard and Jan Mayen Islands','Svalbard and Jan Mayen Islands',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SK','Slovak Republic','Slovak Republic',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SL','Sierra Leone','Sierra Leone',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SM','San Marino','San Marino',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SN','Senegal','Senegal',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SO','Somalia','Somalia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SR','Suriname','Suriname',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('ST','Saint Tome (Sao Tome) and Principe','Saint Tome (Sao Tome) and Principe',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SU','Former USSR','Former USSR',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SV','El Salvador','El Salvador',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SY','Syria','Syria',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('SZ','Swaziland','Swaziland',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TC','Turks and Caicos Islands','Turks and Caicos Islands',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TD','Chad','Chad',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TF','French Southern Territories','French Southern Territories',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TG','Togo','Togo',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TH','Thailand','Thailand',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TJ','Tadjikistan','Tadjikistan',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TK','Tokelau','Tokelau',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TM','Turkmenistan','Turkmenistan',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TN','Tunisia','Tunisia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TO','Tonga','Tonga',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TP','East Timor','East Timor',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TR','Turkey','Turkey',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TT','Trinidad and Tobago','Trinidad and Tobago',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TV','Tuvalu','Tuvalu',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TW','Taiwan','Taiwan',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('TZ','Tanzania','Tanzania',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('UA','Ukraine','Ukraine',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('UG','Uganda','Uganda',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('UK','United Kingdom','United Kingdom',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('UM','USA Minor Outlying Islands','USA Minor Outlying Islands',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('US','United States','United States','USA');
-REPLACE INTO `fn_lu_country` VALUES ('UY','Uruguay','Uruguay',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('UZ','Uzbekistan','Uzbekistan',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('VA','Vatican City State','Vatican City State',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('VC','Saint Vincent and Grenadines','Saint Vincent and Grenadines',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('VE','Venezuela','Venezuela',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('VG','Virgin Islands (British)','Virgin Islands (British)',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('VI','Virgin Islands (USA)','Virgin Islands (USA)',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('VN','Vietnam','Vietnam',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('VU','Vanuatu','Vanuatu',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('WF','Wallis and Futuna Islands','Wallis and Futuna Islands',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('WS','Samoa','Samoa',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('YE','Yemen','Yemen',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('YT','Mayotte','Mayotte',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('YU','Yugoslavia','Yugoslavia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('ZA','South Africa','South Africa',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('ZM','Zambia','Zambia',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('ZR','Zaire','Zaire',NULL);
-REPLACE INTO `fn_lu_country` VALUES ('ZW','Zimbabwe','Zimbabwe',NULL);
-
---
--- Dumping data for table `fn_lu_menu_set`
---
-INSERT INTO `fn_lu_menu_set` VALUES ('APP','Application Menu') ON DUPLICATE KEY UPDATE MENU_SET_NAME='Application Menu';
-
---
--- Dumping data for table `fn_lu_priority`
---
-REPLACE INTO `fn_lu_priority` VALUES (10,'Low','Y',10);
-REPLACE INTO `fn_lu_priority` VALUES (20,'Normal','Y',20);
-REPLACE INTO `fn_lu_priority` VALUES (30,'High','Y',30);
-REPLACE INTO `fn_lu_priority` VALUES (40,'Urgent','Y',40);
-REPLACE INTO `fn_lu_priority` VALUES (50,'Fatal','Y',50);
-
---
--- Dumping data for table `fn_lu_state`
---
-REPLACE INTO `fn_lu_state` VALUES ('AK','AK - Alaska');
-REPLACE INTO `fn_lu_state` VALUES ('AL','AL - Alabama');
-REPLACE INTO `fn_lu_state` VALUES ('AR','AR - Arkansas');
-REPLACE INTO `fn_lu_state` VALUES ('AZ','AZ - Arizona');
-REPLACE INTO `fn_lu_state` VALUES ('CA','CA - California');
-REPLACE INTO `fn_lu_state` VALUES ('CO','CO - Colorado');
-REPLACE INTO `fn_lu_state` VALUES ('CT','CT - Connecticut');
-REPLACE INTO `fn_lu_state` VALUES ('DC','DC - District Of Columbia');
-REPLACE INTO `fn_lu_state` VALUES ('DE','DE - Delaware');
-REPLACE INTO `fn_lu_state` VALUES ('FL','FL - Florida');
-REPLACE INTO `fn_lu_state` VALUES ('GA','GA - Georgia');
-REPLACE INTO `fn_lu_state` VALUES ('HI','HI - Hawaii');
-REPLACE INTO `fn_lu_state` VALUES ('IA','IA - Iowa');
-REPLACE INTO `fn_lu_state` VALUES ('ID','ID - Idaho');
-REPLACE INTO `fn_lu_state` VALUES ('IL','IL - Illinois');
-REPLACE INTO `fn_lu_state` VALUES ('IN','IN - Indiana');
-REPLACE INTO `fn_lu_state` VALUES ('KS','KS - Kansas');
-REPLACE INTO `fn_lu_state` VALUES ('KY','KY - Kentucky');
-REPLACE INTO `fn_lu_state` VALUES ('LA','LA - Louisiana');
-REPLACE INTO `fn_lu_state` VALUES ('MA','MA - Massachusetts');
-REPLACE INTO `fn_lu_state` VALUES ('MD','MD - Maryland');
-REPLACE INTO `fn_lu_state` VALUES ('ME','ME - Maine');
-REPLACE INTO `fn_lu_state` VALUES ('MI','MI - Michigan');
-REPLACE INTO `fn_lu_state` VALUES ('MN','MN - Minnesota');
-REPLACE INTO `fn_lu_state` VALUES ('MO','MO - Missouri');
-REPLACE INTO `fn_lu_state` VALUES ('MS','MS - Mississippi');
-REPLACE INTO `fn_lu_state` VALUES ('MT','MT - Montana');
-REPLACE INTO `fn_lu_state` VALUES ('NC','NC - North Carolina');
-REPLACE INTO `fn_lu_state` VALUES ('ND','ND - North Dakota');
-REPLACE INTO `fn_lu_state` VALUES ('NE','NE - Nebraska');
-REPLACE INTO `fn_lu_state` VALUES ('NH','NH - New Hampshire');
-REPLACE INTO `fn_lu_state` VALUES ('NJ','NJ - New Jersey');
-REPLACE INTO `fn_lu_state` VALUES ('NM','NM - New Mexico');
-REPLACE INTO `fn_lu_state` VALUES ('NV','NV - Nevada');
-REPLACE INTO `fn_lu_state` VALUES ('NY','NY - New York');
-REPLACE INTO `fn_lu_state` VALUES ('OH','OH - Ohio');
-REPLACE INTO `fn_lu_state` VALUES ('OK','OK - Oklahoma');
-REPLACE INTO `fn_lu_state` VALUES ('OR','OR - Oregon');
-REPLACE INTO `fn_lu_state` VALUES ('PA','PA - Pennsylvania');
-REPLACE INTO `fn_lu_state` VALUES ('PR','PR - Puerto Rico');
-REPLACE INTO `fn_lu_state` VALUES ('RI','RI - Rhode Island');
-REPLACE INTO `fn_lu_state` VALUES ('SC','SC - South Carolina');
-REPLACE INTO `fn_lu_state` VALUES ('SD','SD - South Dakota');
-REPLACE INTO `fn_lu_state` VALUES ('TN','TN - Tennessee');
-REPLACE INTO `fn_lu_state` VALUES ('TX','TX - Texas');
-REPLACE INTO `fn_lu_state` VALUES ('UT','UT - Utah');
-REPLACE INTO `fn_lu_state` VALUES ('VA','VA - Virginia');
-REPLACE INTO `fn_lu_state` VALUES ('VI','VI-Virgin Island');
-REPLACE INTO `fn_lu_state` VALUES ('VT','VT - Vermont');
-REPLACE INTO `fn_lu_state` VALUES ('WA','WA - Washington');
-REPLACE INTO `fn_lu_state` VALUES ('WI','WI - Wisconsin');
-REPLACE INTO `fn_lu_state` VALUES ('WV','WV - West Virginia');
-REPLACE INTO `fn_lu_state` VALUES ('WY','WY - Wyoming');
-
---
--- Dumping data for table `fn_lu_tab_set`
---
-INSERT INTO `fn_lu_tab_set` VALUES ('APP','Application Tabs') ON DUPLICATE KEY UPDATE TAB_SET_NAME='Application Tabs';
-
---
--- Dumping data for table `fn_lu_timezone`
---
-INSERT INTO `fn_lu_timezone` VALUES (10,'US/Eastern','US/Eastern') ON DUPLICATE KEY UPDATE TIMEZONE_NAME='US/Eastern', TIMEZONE_VALUE='US/Eastern';
-INSERT INTO `fn_lu_timezone` VALUES (20,'US/Central','US/Central') ON DUPLICATE KEY UPDATE TIMEZONE_NAME='US/Central', TIMEZONE_VALUE='US/Central';
-INSERT INTO `fn_lu_timezone` VALUES (30,'US/Mountain','US/Mountain') ON DUPLICATE KEY UPDATE TIMEZONE_NAME='US/Mountain', TIMEZONE_VALUE='US/Mountain';
-INSERT INTO `fn_lu_timezone` VALUES (40,'US/Arizona','America/Phoenix') ON DUPLICATE KEY UPDATE TIMEZONE_NAME='US/Arizona', TIMEZONE_VALUE='America/Phoenix';
-INSERT INTO `fn_lu_timezone` VALUES (50,'US/Pacific','US/Pacific') ON DUPLICATE KEY UPDATE TIMEZONE_NAME='US/Pacific', TIMEZONE_VALUE='US/Pacific';
-INSERT INTO `fn_lu_timezone` VALUES (60,'US/Alaska','US/Alaska') ON DUPLICATE KEY UPDATE TIMEZONE_NAME='US/Alaska', TIMEZONE_VALUE='US/Alaska';
-INSERT INTO `fn_lu_timezone` VALUES (70,'US/Hawaii','US/Hawaii') ON DUPLICATE KEY UPDATE TIMEZONE_NAME='US/Hawaii', TIMEZONE_VALUE='US/Hawaii';
-
---
--- Dumping data for table `fn_menu`
---
-INSERT INTO `fn_menu` VALUES (1,'Root',NULL,10,NULL,'menu_home','N',NULL,NULL,NULL,NULL,'APP','N',NULL) ON DUPLICATE KEY UPDATE LABEL='Root', PARENT_ID=NULL, SORT_ORDER=10, ACTION=NULL, FUNCTION_CD='menu_home', ACTIVE_YN='N', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC=NULL;
-INSERT INTO `fn_menu` VALUES (2,'VID Home',1,10,'welcome.htm','menu_home','Y',NULL,NULL,NULL,NULL,'APP','N','icon-location-pin') ON DUPLICATE KEY UPDATE LABEL='VID Home', PARENT_ID=1, SORT_ORDER=10, ACTION='welcome.htm', FUNCTION_CD='menu_home', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-location-pin';
-
-INSERT INTO `fn_menu` VALUES (3,'Search for Existing Service Instances',1,10,'serviceModels.htm#/instances/services','menu_searchexisting','Y',NULL,NULL,NULL,NULL,'APP','N','icon-location-pin') ON DUPLICATE KEY UPDATE LABEL='Search for Existing Service Instances', PARENT_ID=1, SORT_ORDER=10, ACTION='serviceModels.htm#/instances/services', FUNCTION_CD='menu_searchexisting', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-location-pin';
-INSERT INTO `fn_menu` VALUES (10,'Admin',1,110,'role_list.htm','menu_admin','Y',NULL,NULL,NULL,NULL,'APP','N','icon-settings') ON DUPLICATE KEY UPDATE LABEL='Admin', PARENT_ID=1, SORT_ORDER=110, ACTION='admin', FUNCTION_CD='menu_admin', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-settings';
-INSERT INTO `fn_menu` VALUES (13,'VID Logout',1,130,'app_logout.htm','menu_logout','N',NULL,NULL,NULL,NULL,'APP','N','icon-sign-out') ON DUPLICATE KEY UPDATE LABEL='VID Logout', PARENT_ID=1, SORT_ORDER=130, ACTION='app_logout.htm', FUNCTION_CD='menu_logout', ACTIVE_YN='N', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-sign-out';
-INSERT INTO `fn_menu` VALUES (42,'Browse SDC Service Models',1,10,'serviceModels.htm','menu_servicemodels','Y',NULL,NULL,NULL,NULL,'APP','N','icon-location-pin') ON DUPLICATE KEY UPDATE LABEL='Browse SDC Service Instances', PARENT_ID=1, SORT_ORDER=10, ACTION='serviceModels.htm', FUNCTION_CD='menu_servicemodels', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-location-pin';
-INSERT INTO `fn_menu` VALUES (41,'Create New Service Instance',1,10,'serviceModels.htm#/instances/subscribers','menu_newserinstance','Y',NULL,NULL,NULL,NULL,'APP','N','icon-location-pin') ON DUPLICATE KEY UPDATE LABEL='Create New Service Instance', PARENT_ID=1, SORT_ORDER=10, ACTION='serviceModels.htm#/instances/subscribers', FUNCTION_CD='menu_newserinstance', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-location-pin';
-INSERT INTO `fn_menu` VALUES (43,'View Log',1,10,'viewlog.htm','menu_viewlog','N',NULL,NULL,NULL,NULL,'APP','N','icon-location-pin') ON DUPLICATE KEY UPDATE LABEL='View Log', PARENT_ID=1, SORT_ORDER=10, ACTION='viewlog.htm', FUNCTION_CD='menu_viewlog', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-location-pin';
-INSERT INTO `fn_menu` VALUES (101,'Roles',10,20,'admin','menu_admin','Y',NULL,NULL,NULL,NULL,'APP','N','/static/fusion/images/users.png') ON DUPLICATE KEY UPDATE LABEL='Roles', PARENT_ID=10, SORT_ORDER=20, ACTION='admin', FUNCTION_CD='menu_admin', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='/static/fusion/images/users.png';
-INSERT INTO `fn_menu` VALUES (102,'Role Functions',10,30,'admin#/role_function_list','menu_admin','Y',NULL,NULL,NULL,NULL,'APP','N',NULL) ON DUPLICATE KEY UPDATE LABEL='Role Functions', PARENT_ID=10, SORT_ORDER=30, ACTION='admin#/role_function_list', FUNCTION_CD='menu_admin', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC=NULL;
-INSERT INTO `fn_menu` VALUES (103,'Broadcast Messages',10,50,'admin#/broadcast_list','menu_admin','N',NULL,NULL,NULL,NULL,'APP','N','/static/fusion/images/bubble.png') ON DUPLICATE KEY UPDATE LABEL='Broadcast Messages', PARENT_ID=10, SORT_ORDER=50, ACTION='admin#/broadcast_list', FUNCTION_CD='menu_admin', ACTIVE_YN='N', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='/static/fusion/images/bubble.png';
-INSERT INTO `fn_menu` VALUES (105,'Cache Admin',10,40,'admin#/jcs_admin','menu_admin','N',NULL,NULL,NULL,NULL,'APP','N','/static/fusion/images/cache.png') ON DUPLICATE KEY UPDATE LABEL='Cache Admin', PARENT_ID=10, SORT_ORDER=40, ACTION='admin#/jcs_admin', FUNCTION_CD='menu_admin', ACTIVE_YN='N', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='/static/fusion/images/cache.png';
-INSERT INTO `fn_menu` VALUES (106,'Lock/Unlock Application',10,60,'application_lockout.htm','menu_admin','N',NULL,NULL,NULL,NULL,'APP','N','/static/fusion/images/decrypted.png') ON DUPLICATE KEY UPDATE LABEL='Lock/Unlock Application', PARENT_ID=10, SORT_ORDER=60, ACTION='application_lockout.htm', FUNCTION_CD='menu_admin', ACTIVE_YN='N', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='/static/fusion/images/decrypted.png';
-INSERT INTO `fn_menu` VALUES (108,'Usage',10,80,'admin#/usage_list','menu_admin','N',NULL,NULL,NULL,NULL,'APP','N','/static/fusion/images/users.png') ON DUPLICATE KEY UPDATE LABEL='Usage', PARENT_ID=10, SORT_ORDER=80, ACTION='admin#/usage_list', FUNCTION_CD='menu_admin', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='/static/fusion/images/users.png';
-INSERT INTO `fn_menu` VALUES (109, 'VNF Changes', 1, 11, 'serviceModels.htm#/change-management', 'menu_changemanagement', 'Y', NULL, NULL, NULL, NULL, 'APP', 'N', 'icon-location-pin') ON DUPLICATE KEY UPDATE LABEL='VNF Changes', PARENT_ID=1, SORT_ORDER=11, ACTION='serviceModels.htm#/change-management', FUNCTION_CD='menu_changemanagement', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-location-pin';
---INSERT INTO `fn_menu` VALUES (110, 'Test Environments', 1, 12, 'serviceModels.htm#/testEnvironments', 'menu_testenvironment', 'Y', NULL, NULL, NULL, NULL, 'APP', 'N', 'icon-location-pin') ON DUPLICATE KEY UPDATE LABEL='Test Environments', PARENT_ID=1, SORT_ORDER=12, ACTION='serviceModels.htm#/testEnvironments', FUNCTION_CD='menu_testenvironment', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-location-pin';
---
--- Dumping data for table `fn_restricted_url`
---
-REPLACE INTO `fn_restricted_url` VALUES ('attachment.htm','menu_admin');
-REPLACE INTO `fn_restricted_url` VALUES ('broadcast.htm','menu_admin');
-REPLACE INTO `fn_restricted_url` VALUES ('file_upload.htm','menu_admin');
-REPLACE INTO `fn_restricted_url` VALUES ('job.htm','menu_admin');
-REPLACE INTO `fn_restricted_url` VALUES ('role.htm','menu_admin');
-REPLACE INTO `fn_restricted_url` VALUES ('role_function.htm','menu_admin');
-REPLACE INTO `fn_restricted_url` VALUES ('test.htm','menu_admin');
-REPLACE INTO `fn_restricted_url` VALUES ('serviceModels.htm','menu_servicemodels');
-REPLACE INTO `fn_restricted_url` VALUES ('async_test.htm','menu_home');
-REPLACE INTO `fn_restricted_url` VALUES ('chatWindow.htm','menu_home');
-REPLACE INTO `fn_restricted_url` VALUES ('contact_list.htm','menu_home');
-REPLACE INTO `fn_restricted_url` VALUES ('customer_dynamic_list.htm','menu_home');
-REPLACE INTO `fn_restricted_url` VALUES ('event.htm','menu_home');
-REPLACE INTO `fn_restricted_url` VALUES ('event_list.htm','menu_home');
-REPLACE INTO `fn_restricted_url` VALUES ('mobile_welcome.htm','menu_home');
-REPLACE INTO `fn_restricted_url` VALUES ('sample_map.htm','menu_home');
-REPLACE INTO `fn_restricted_url` VALUES ('template.jsp','menu_home');
-REPLACE INTO `fn_restricted_url` VALUES ('welcome.htm','menu_home');
-REPLACE INTO `fn_restricted_url` VALUES ('zkau','menu_home');
-REPLACE INTO `fn_restricted_url` VALUES ('itracker_assign.htm','menu_itracker');
-REPLACE INTO `fn_restricted_url` VALUES ('itracker_byassignee.htm','menu_itracker');
-REPLACE INTO `fn_restricted_url` VALUES ('itracker_create.htm','menu_itracker');
-REPLACE INTO `fn_restricted_url` VALUES ('itracker_update.htm','menu_itracker');
-REPLACE INTO `fn_restricted_url` VALUES ('manage_license.htm','menu_itracker');
-REPLACE INTO `fn_restricted_url` VALUES ('support_ticket.htm','menu_itracker');
-REPLACE INTO `fn_restricted_url` VALUES ('jbpm_designer.htm','menu_job_create');
-REPLACE INTO `fn_restricted_url` VALUES ('jbpm_drools.htm','menu_job_create');
-REPLACE INTO `fn_restricted_url` VALUES ('process_job.htm','menu_job_create');
--- REPLACE INTO `fn_restricted_url` VALUES ('novamap_controller.htm','menu_map');
-REPLACE INTO `fn_restricted_url` VALUES ('createnewserviceinstance.htm','menu_newserinstance');
-REPLACE INTO `fn_restricted_url` VALUES ('profile.htm','menu_profile_create');
-REPLACE INTO `fn_restricted_url` VALUES ('raptor.htm','menu_reports');
-REPLACE INTO `fn_restricted_url` VALUES ('raptor2.htm','menu_reports');
-REPLACE INTO `fn_restricted_url` VALUES ('raptor_blob_extract.htm','menu_reports');
-REPLACE INTO `fn_restricted_url` VALUES ('raptor_email_attachment.htm','menu_reports');
-REPLACE INTO `fn_restricted_url` VALUES ('raptor_search.htm','menu_reports');
-REPLACE INTO `fn_restricted_url` VALUES ('report_list.htm','menu_reports');
-REPLACE INTO `fn_restricted_url` VALUES ('gauge.htm','menu_tab');
-REPLACE INTO `fn_restricted_url` VALUES ('gmap_controller.htm','menu_tab');
-REPLACE INTO `fn_restricted_url` VALUES ('gmap_frame.htm','menu_tab');
-REPLACE INTO `fn_restricted_url` VALUES ('map.htm','menu_tab');
-REPLACE INTO `fn_restricted_url` VALUES ('map_download.htm','menu_tab');
-REPLACE INTO `fn_restricted_url` VALUES ('map_grid_search.htm','menu_tab');
-REPLACE INTO `fn_restricted_url` VALUES ('sample_animated_map.htm','menu_tab');
--- REPLACE INTO `fn_restricted_url` VALUES ('sample_heat_map.htm','menu_tab');
--- REPLACE INTO `fn_restricted_url` VALUES ('sample_heat_map_no_header.htm','menu_tab');
-REPLACE INTO `fn_restricted_url` VALUES ('sample_map_2.htm','menu_tab');
-REPLACE INTO `fn_restricted_url` VALUES ('sample_map_3.htm','menu_tab');
-REPLACE INTO `fn_restricted_url` VALUES ('tab2_sub1.htm','menu_tab');
-REPLACE INTO `fn_restricted_url` VALUES ('tab2_sub2_link1.htm','menu_tab');
-REPLACE INTO `fn_restricted_url` VALUES ('tab2_sub2_link2.htm','menu_tab');
-REPLACE INTO `fn_restricted_url` VALUES ('tab2_sub3.htm','menu_tab');
-REPLACE INTO `fn_restricted_url` VALUES ('tab3.htm','menu_tab');
-REPLACE INTO `fn_restricted_url` VALUES ('tab4.htm','menu_tab');
-REPLACE INTO `fn_restricted_url` VALUES ('viewlog.htm','menu_viewlog');
--- REPLACE INTO `fn_restricted_url` VALUES ('bd_optima.htm','quantum_bd');
--- REPLACE INTO `fn_restricted_url` VALUES ('bd_optima_interactive.htm','quantum_bd');
--- REPLACE INTO `fn_restricted_url` VALUES ('bd_p2t.htm','quantum_bd');
--- REPLACE INTO `fn_restricted_url` VALUES ('grid_heatmap.htm','quantum_bd');
--- REPLACE INTO `fn_restricted_url` VALUES ('hive.htm','quantum_bd');
--- REPLACE INTO `fn_restricted_url` VALUES ('hiveconfig.htm','quantum_bd');
--- REPLACE INTO `fn_restricted_url` VALUES ('hiveconfig_popup.htm','quantum_bd');
--- REPLACE INTO `fn_restricted_url` VALUES ('hive_search.htm','quantum_bd');
--- REPLACE INTO `fn_restricted_url` VALUES ('hive_search_popup.htm','quantum_bd');
--- REPLACE INTO `fn_restricted_url` VALUES ('jbpmTestProcess.htm','quantum_bd');
--- REPLACE INTO `fn_restricted_url` VALUES ('job_progress.htm','quantum_bd');
--- REPLACE INTO `fn_restricted_url` VALUES ('mapreduce.htm','quantum_bd');
--- REPLACE INTO `fn_restricted_url` VALUES ('mapreduce_search.htm','quantum_bd');
-REPLACE INTO `fn_restricted_url` VALUES ('raptor.htm','view_reports');
-REPLACE INTO `fn_restricted_url` VALUES ('raptor_blob_extract.htm','view_reports');
-REPLACE INTO `fn_restricted_url` VALUES ('serviceModels.htm','menu_servicemodels');
---
--- Dumping data for table `fn_role`
---
-INSERT INTO `fn_role` VALUES (1,'System Administrator','Y',1) ON DUPLICATE KEY UPDATE ROLE_NAME='System Administrator', ACTIVE_YN='Y', PRIORITY=1;
-INSERT INTO `fn_role` VALUES (16,'Standard User','Y',5) ON DUPLICATE KEY UPDATE ROLE_NAME='Standard User', ACTIVE_YN='Y', PRIORITY=5;
-INSERT INTO `fn_role` VALUES (17,'Demonstration___vFWCL','Y',5) ON DUPLICATE KEY UPDATE ROLE_NAME='Demonstration___vFWCL', ACTIVE_YN='Y', PRIORITY=5;
-INSERT INTO `fn_role` VALUES (18,'Demonstration___vFW','Y',5) ON DUPLICATE KEY UPDATE ROLE_NAME='Demonstration___vFW', ACTIVE_YN='Y', PRIORITY=5;
-INSERT INTO `fn_role` VALUES (19,'Demonstration___vCPE','Y',5) ON DUPLICATE KEY UPDATE ROLE_NAME='Demonstration___vCPE', ACTIVE_YN='Y', PRIORITY=5;
-INSERT INTO `fn_role` VALUES (20,'Demonstration___vIMS','Y',5) ON DUPLICATE KEY UPDATE ROLE_NAME='Demonstration___vIMS', ACTIVE_YN='Y', PRIORITY=5;
-INSERT INTO `fn_role` VALUES (21,'Demonstration___vLB','Y',5) ON DUPLICATE KEY UPDATE ROLE_NAME='Demonstration___vLB', ACTIVE_YN='Y', PRIORITY=5;
-INSERT INTO `fn_role` VALUES (22,'Demonstration___gNB','Y',5) ON DUPLICATE KEY UPDATE ROLE_NAME='Demonstration___gNB', ACTIVE_YN='Y', PRIORITY=5;
-
---
--- Dumping data for table `fn_role_composite`
---
-REPLACE INTO `fn_role_composite` VALUES (1,16);
-
---
--- Dumping data for table `fn_role_function`
---
-REPLACE INTO `fn_role_function` VALUES (1,'doclib');
-REPLACE INTO `fn_role_function` VALUES (1,'doclib_admin');
-REPLACE INTO `fn_role_function` VALUES (1,'login');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_admin');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_ajax');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_servicemodels');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_customer');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_customer_create');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_feedback');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_help');
--- REPLACE INTO `fn_role_function` VALUES (1,'menu_hiveconfig');
--- REPLACE INTO `fn_role_function` VALUES (1,'menu_hiveconfig_create');
--- REPLACE INTO `fn_role_function` VALUES (1,'menu_hiveconfig_search');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_home');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_itracker');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_itracker_admin');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_job');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_job_create');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_logout');
--- REPLACE INTO `fn_role_function` VALUES (1,'menu_mapreduce');
--- REPLACE INTO `fn_role_function` VALUES (1,'menu_mapreduce_create');
--- REPLACE INTO `fn_role_function` VALUES (1,'menu_mapreduce_search');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_newserinstance');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_notes');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_process');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_profile');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_profile_create');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_profile_import');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_reports');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_sample');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_tab');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_test');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_viewlog');
--- REPLACE INTO `fn_role_function` VALUES (1,'quantum_bd');
-REPLACE INTO `fn_role_function` VALUES (16,'login');
-REPLACE INTO `fn_role_function` VALUES (16,'menu_ajax');
-REPLACE INTO `fn_role_function` VALUES (16,'menu_servicemodels');
-REPLACE INTO `fn_role_function` VALUES (16,'menu_customer');
-REPLACE INTO `fn_role_function` VALUES (16,'menu_customer_create');
-REPLACE INTO `fn_role_function` VALUES (16,'menu_home');
-REPLACE INTO `fn_role_function` VALUES (16,'menu_itracker');
-REPLACE INTO `fn_role_function` VALUES (16,'menu_logout');
-REPLACE INTO `fn_role_function` VALUES (16,'menu_map');
-REPLACE INTO `fn_role_function` VALUES (16,'menu_newserinstance');
-REPLACE INTO `fn_role_function` VALUES (16,'menu_profile');
-REPLACE INTO `fn_role_function` VALUES (16,'menu_reports');
-REPLACE INTO `fn_role_function` VALUES (16,'menu_tab');
-REPLACE INTO `fn_role_function` VALUES (16,'menu_viewlog');
--- REPLACE INTO `fn_role_function` VALUES (16,'quantum_bd');
-REPLACE INTO `fn_role_function` VALUES ('1', 'menu_searchexisting');
-REPLACE INTO `fn_role_function` VALUES ('16', 'menu_searchexisting');
-REPLACE INTO `fn_role_function` VALUES (1,'menu_changemanagement');
-REPLACE INTO `fn_role_function` VALUES (16,'menu_changemanagement');
---REPLACE INTO `fn_role_function` VALUES (1,'menu_testenvironment');
---REPLACE INTO `fn_role_function` VALUES (16,'menu_testenvironment');
-
-update fn_menu set active_yn = 'Y' where label = 'Admin';
-update fn_menu set active_yn = 'Y' where label = 'Root';
-update fn_menu set action = 'admin' where label = 'Admin';
-
---
--- Dumping data for table `fn_tab`
---
-INSERT INTO `fn_tab` VALUES ('TAB1','Tab 1','Tab 1 Information','tab1.htm','menu_tab','Y',10,NULL,'APP') ON DUPLICATE KEY UPDATE TAB_NAME='Tab 1', TAB_DESCR='Tab 1 Information', ACTION='tab1.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=10, PARENT_TAB_CD=NULL, TAB_SET_CD='APP';
-INSERT INTO `fn_tab` VALUES ('TAB2','Tab 2','Tab 2 Information','tab2_sub1.htm','menu_tab','Y',20,NULL,'APP') ON DUPLICATE KEY UPDATE TAB_NAME='Tab 2', TAB_DESCR='Tab 2 Information', ACTION='tab2_sub1.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=20, PARENT_TAB_CD=NULL, TAB_SET_CD='APP';
-INSERT INTO `fn_tab` VALUES ('TAB2_SUB1','Sub Tab 1','Sub Tab 1 Information','tab2_sub1.htm','menu_tab','Y',10,'TAB2','APP') ON DUPLICATE KEY UPDATE TAB_NAME='Sub Tab 1', TAB_DESCR='Sub Tab 1 Information', ACTION='tab2_sub1.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=10, PARENT_TAB_CD='TAB2', TAB_SET_CD='APP';
-INSERT INTO `fn_tab` VALUES ('TAB2_SUB1_S1','Left Tab 1','Sub - Sub Tab 1 Information','tab2_sub1.htm','menu_tab','Y',10,'TAB2_SUB1','APP') ON DUPLICATE KEY UPDATE TAB_NAME='Left Tab 1', TAB_DESCR='Sub - Sub Tab 1 Information', ACTION='tab2_sub1.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=10, PARENT_TAB_CD='TAB2_SUB1', TAB_SET_CD='APP';
-INSERT INTO `fn_tab` VALUES ('TAB2_SUB2','Sub Tab 2','Sub Tab 2 Information','tab2_sub2.htm','menu_tab','Y',20,'TAB2','APP') ON DUPLICATE KEY UPDATE TAB_NAME='Sub Tab 2', TAB_DESCR='Sub Tab 2 Information', ACTION='tab2_sub2.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=20, PARENT_TAB_CD='TAB2', TAB_SET_CD='APP';
-INSERT INTO `fn_tab` VALUES ('TAB2_SUB3','Sub Tab 3','Sub Tab 3 Information','tab2_sub3.htm','menu_tab','Y',30,'TAB2','APP') ON DUPLICATE KEY UPDATE TAB_NAME='Sub Tab 3', TAB_DESCR='Sub Tab 3 Information', ACTION='tab2_sub3.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=30, PARENT_TAB_CD='TAB2', TAB_SET_CD='APP';
-INSERT INTO `fn_tab` VALUES ('TAB3','Tab 3','Tab 3 Information','tab3.htm','menu_tab','Y',30,NULL,'APP') ON DUPLICATE KEY UPDATE TAB_NAME='Tab 3', TAB_DESCR='Tab 3 Information', ACTION='tab3.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=30, PARENT_TAB_CD=NULL, TAB_SET_CD='APP';
-INSERT INTO `fn_tab` VALUES ('TAB4','Tab 4','Tab 4 Information','tab4.htm','menu_tab','Y',40,NULL,'APP') ON DUPLICATE KEY UPDATE TAB_NAME='Tab 4', TAB_DESCR='Tab 4 Information', ACTION='tab4.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=40, PARENT_TAB_CD=NULL, TAB_SET_CD='APP';
-
---
--- Dumping data for table `fn_tab_selected`
---
-REPLACE INTO `fn_tab_selected` VALUES ('TAB1','tab1');
-REPLACE INTO `fn_tab_selected` VALUES ('TAB2','tab2_sub1');
-REPLACE INTO `fn_tab_selected` VALUES ('TAB2','tab2_sub2');
-REPLACE INTO `fn_tab_selected` VALUES ('TAB2','tab2_sub3');
-REPLACE INTO `fn_tab_selected` VALUES ('TAB2_SUB1','tab2_sub1');
-REPLACE INTO `fn_tab_selected` VALUES ('TAB2_SUB1_S1','tab2_sub1');
-REPLACE INTO `fn_tab_selected` VALUES ('TAB2_SUB2','tab2_sub2');
-REPLACE INTO `fn_tab_selected` VALUES ('TAB2_SUB3','tab2_sub3');
-REPLACE INTO `fn_tab_selected` VALUES ('TAB3','tab3');
-REPLACE INTO `fn_tab_selected` VALUES ('TAB4','tab4');
-
-
---
--- Dumping data for table `fn_user`
---
-INSERT IGNORE `fn_user` VALUES (1,null,null,'Demo',null,'User',null,null,null,null,null,null,null,'demo',null,'demo','Kp8bJ4SXszM0WX','2016-11-14 13:24:07','Y',null,'2016-10-17 00:00:00',1,'2016-11-14 13:24:07','N',null,null,null,'NJ',null,'US',null,null,null,null,null,10,null,null,null,null,null,null);
-INSERT IGNORE `fn_user` VALUES (2,null,null,'vid1',null,'User',null,null,null,null,null,null,null,'vid1',null,'vid1','Kp8bJ4SXszM0WX','2016-11-14 13:24:07','Y',null,'2016-10-17 00:00:00',1,'2016-11-14 13:24:07','N',null,null,null,'NJ',null,'US',null,null,null,null,null,10,null,null,null,null,null,null);
-INSERT IGNORE `fn_user` VALUES (3,null,null,'vid2',null,'User',null,null,null,null,null,null,null,'vid2',null,'vid2','Kp8bJ4SXszM0WX','2016-11-14 13:24:07','Y',null,'2016-10-17 00:00:00',1,'2016-11-14 13:24:07','N',null,null,null,'NJ',null,'US',null,null,null,null,null,10,null,null,null,null,null,null);
-INSERT IGNORE `fn_user` VALUES (4,null,null,'vid3',null,'User',null,null,null,null,null,null,null,'vid3',null,'vid3','Kp8bJ4SXszM0WX','2016-11-14 13:24:07','Y',null,'2016-10-17 00:00:00',1,'2016-11-14 13:24:07','N',null,null,null,'NJ',null,'US',null,null,null,null,null,10,null,null,null,null,null,null);
-INSERT IGNORE `fn_user` VALUES (5,null,null,'vid4',null,'User',null,null,null,null,null,null,null,'vid4',null,'vid4','Kp8bJ4SXszM0WX','2016-11-14 13:24:07','Y',null,'2016-10-17 00:00:00',1,'2016-11-14 13:24:07','N',null,null,null,'NJ',null,'US',null,null,null,null,null,10,null,null,null,null,null,null);
-
-INSERT IGNORE `fn_user_role` VALUES (1,1,NULL,1);
-INSERT IGNORE `fn_user_role` VALUES (2,1,NULL,1);
-INSERT IGNORE `fn_user_role` VALUES (3,1,NULL,1);
-INSERT IGNORE `fn_user_role` VALUES (4,1,NULL,1);
-INSERT IGNORE `fn_user_role` VALUES (5,1,NULL,1);
-INSERT IGNORE `fn_user_role` VALUES (1,17,NULL,1);
-INSERT IGNORE `fn_user_role` VALUES (1,18,NULL,1);
-INSERT IGNORE `fn_user_role` VALUES (1,19,NULL,1);
-INSERT IGNORE `fn_user_role` VALUES (1,20,NULL,1);
-INSERT IGNORE `fn_user_role` VALUES (1,21,NULL,1);
-INSERT IGNORE `fn_user_role` VALUES (1,22,NULL,1);
-
+/*-
+ * ============LICENSE_START=======================================================
+ * VID
+ * ================================================================================
+ * Copyright (C) 2017 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=========================================================
+ */
+USE vid_openecomp_epsdk;
+
+DELETE FROM `fn_datasource`;
+TRUNCATE `fn_menu`;
+DELETE FROM `fn_role_function`;
+DELETE FROM `fn_restricted_url`;
+DELETE FROM `fn_tab_selected`;
+DELETE FROM `fn_tab`;
+DELETE FROM `fn_function`;
+DELETE FROM `fn_lu_alert_method`;
+DELETE FROM `fn_lu_activity`;
+DELETE FROM `fn_lu_call_times`;
+DELETE FROM `fn_lu_country`;
+DELETE FROM `fn_lu_menu_set`;
+DELETE FROM `fn_lu_priority`;
+DELETE FROM `fn_lu_state`;
+DELETE FROM `fn_lu_tab_set`;
+
+--
+-- Dumping data for table `cr_raptor_action_img`
+--
+REPLACE INTO `cr_raptor_action_img` VALUES ('CALENDAR','/static/fusion/raptor/img/Calendar-16x16.png');
+REPLACE INTO `cr_raptor_action_img` VALUES ('DELETE','/static/fusion/raptor/img/deleteicon.gif');
+
+--
+-- Dumping data for table `fn_app`
+--
+INSERT IGNORE INTO `fn_app` VALUES (1,'Default',null,'Some Default Description','Some Default Note',null,null,null,'ECPP','?',1,'okYTaDrhzibcbGVq5mjkVQ==','N','N',null,'Default',null,null,'ECOMP-PORTAL-INBOX');
+
+
+--
+-- Dumping data for table `vid_workflow`
+--
+--update & replace workflows are disabled in ONAP
+--INSERT INTO `vid_workflow` (`WORKFLOW_DB_ID`, `WORKFLOW_APP_NAME`) VALUES (1, 'Update') ON DUPLICATE KEY UPDATE WORKFLOW_APP_NAME='Update';
+--INSERT INTO `vid_workflow` (`WORKFLOW_DB_ID`, `WORKFLOW_APP_NAME`) VALUES (2, 'Replace') ON DUPLICATE KEY UPDATE WORKFLOW_APP_NAME='Replace';
+INSERT INTO `vid_workflow` (`WORKFLOW_DB_ID`, `WORKFLOW_APP_NAME`) VALUES (3, 'VNF In Place Software Update') ON DUPLICATE KEY UPDATE WORKFLOW_APP_NAME='VNF In Place Software Update';
+INSERT INTO `vid_workflow` (`WORKFLOW_DB_ID`, `WORKFLOW_APP_NAME`) VALUES (4, 'VNF Scale Out') ON DUPLICATE KEY UPDATE WORKFLOW_APP_NAME='VNF Scale Out';
+INSERT INTO `vid_workflow` (`WORKFLOW_DB_ID`, `WORKFLOW_APP_NAME`) VALUES (5, 'VNF Config Update') ON DUPLICATE KEY UPDATE WORKFLOW_APP_NAME='VNF Config Update';
+
+
+--
+-- Dumping data for table `vid_category_parameter`
+--
+INSERT INTO `vid_category_parameter` (`CATEGORY_ID`, `NAME`, `ID_SUPPORTED`, `FAMILY`,`CREATED_DATE`, `MODIFIED_DATE`) VALUES (1, 'platform', 0, 'PARAMETER_STANDARDIZATION','2017-09-12 17:01:13', '2017-09-12 17:01:13') ON DUPLICATE KEY UPDATE NAME='platform';
+INSERT INTO `vid_category_parameter` (`CATEGORY_ID`, `NAME`, `ID_SUPPORTED`, `FAMILY`,`CREATED_DATE`, `MODIFIED_DATE`) VALUES (2, 'project', 0, 'PARAMETER_STANDARDIZATION','2017-09-12 18:23:54', '2017-09-13 15:05:25') ON DUPLICATE KEY UPDATE NAME='project';
+INSERT INTO `vid_category_parameter` (`CATEGORY_ID`, `NAME`, `ID_SUPPORTED`, `FAMILY`,`CREATED_DATE`, `MODIFIED_DATE`) VALUES (3, 'lineOfBusiness', 0,'PARAMETER_STANDARDIZATION', '2017-09-12 18:24:14', '2017-09-12 18:24:15') ON DUPLICATE KEY UPDATE NAME='lineOfBusiness';
+INSERT INTO `vid_category_parameter` (`CATEGORY_ID`, `NAME`, `ID_SUPPORTED`, `FAMILY`,`CREATED_DATE`, `MODIFIED_DATE`) VALUES (4, 'owningEntity', 1, 'PARAMETER_STANDARDIZATION', '2017-09-12 18:24:26', '2017-09-12 18:24:28') ON DUPLICATE KEY UPDATE NAME='owningEntity';
+INSERT INTO `vid_category_parameter` (`CATEGORY_ID`, `NAME`, `ID_SUPPORTED`, `FAMILY`,`CREATED_DATE`, `MODIFIED_DATE`) VALUES (5,'operational-environment-type', 0,'TENANT_ISOLATION', '2017-11-12 18:24:26', '2017-11-12 18:24:28') ON DUPLICATE KEY UPDATE NAME='operational-environment-type';
+INSERT INTO `vid_category_parameter` (`CATEGORY_ID`, `NAME`, `ID_SUPPORTED`, `FAMILY`,`CREATED_DATE`, `MODIFIED_DATE`) VALUES (6,'workload-context', 0, 'TENANT_ISOLATION','2017-11-12 18:24:26', '2017-11-12 18:24:28') ON DUPLICATE KEY UPDATE NAME='workload-context';
+
+--
+-- Dumping data for table `vid_category_parameter_option`
+--
+INSERT INTO `vid_category_parameter_option` (`CATEGORY_OPT_APP_ID`, `NAME`, `CATEGORY_ID`) VALUES ('ECOMP', 'ECOMP', '6') ON DUPLICATE KEY UPDATE NAME='ECOMP';
+INSERT INTO `vid_category_parameter_option` (`CATEGORY_OPT_APP_ID`, `NAME`, `CATEGORY_ID`) VALUES ('DEV', 'DEV', '6') ON DUPLICATE KEY UPDATE NAME='DEV';
+INSERT INTO `vid_category_parameter_option` (`CATEGORY_OPT_APP_ID`, `NAME`, `CATEGORY_ID`) VALUES ('TEST', 'TEST', '6') ON DUPLICATE KEY UPDATE NAME='TEST';
+INSERT INTO `vid_category_parameter_option` (`CATEGORY_OPT_APP_ID`, `NAME`, `CATEGORY_ID`) VALUES ('VNF', 'VNF', '5') ON DUPLICATE KEY UPDATE NAME='VNF';
+
+--
+-- Dumping data for table `fn_function`
+--
+INSERT INTO `fn_function` VALUES ('1','test role function','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='test role function';
+INSERT INTO `fn_function` VALUES ('doclib','Document Library','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Document Library';
+INSERT INTO `fn_function` VALUES ('doclib_admin','Document Library Admin','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Document Library Admin';
+INSERT INTO `fn_function` VALUES ('login','Login','url','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Login';
+INSERT INTO `fn_function` VALUES ('menu_admin','Admin Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Admin Menu';
+INSERT INTO `fn_function` VALUES ('menu_ajax','Ajax Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Ajax Menu';
+INSERT INTO `fn_function` VALUES ('menu_servicemodels','Browse SDC Service Instances','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Browse SDC Service Instances';
+INSERT INTO `fn_function` VALUES ('menu_concept','CoNCEPT','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='CoNCEPT';
+INSERT INTO `fn_function` VALUES ('menu_customer','Customer Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Customer Menu';
+INSERT INTO `fn_function` VALUES ('menu_customer_create','Customer Create','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Customer Create';
+INSERT INTO `fn_function` VALUES ('menu_doclib','Document Library Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Document Library Menu';
+INSERT INTO `fn_function` VALUES ('menu_feedback','Feedback Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Feedback Menu';
+INSERT INTO `fn_function` VALUES ('menu_help','Help Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Help Menu';
+INSERT INTO `fn_function` VALUES ('menu_home','Home Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Home Menu';
+INSERT INTO `fn_function` VALUES ('menu_itracker','iTracker Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='iTracker Menu';
+INSERT INTO `fn_function` VALUES ('menu_itracker_admin','Itracker Admin/Support menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Itracker Admin/Support menu';
+INSERT INTO `fn_function` VALUES ('menu_job','Job Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Job Menu';
+INSERT INTO `fn_function` VALUES ('menu_job_create','Job Create','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Job Create';
+INSERT INTO `fn_function` VALUES ('menu_job_designer','Process in Designer view','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Process in Designer view';
+INSERT INTO `fn_function` VALUES ('menu_logout','Logout Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Logout Menu';
+INSERT INTO `fn_function` VALUES ('menu_map','Map Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Map Menu';
+INSERT INTO `fn_function` VALUES ('menu_newserinstance','Create New Service Instance','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Create New Service Instance';
+INSERT INTO `fn_function` VALUES ('menu_notes','Notes Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Notes Menu';
+INSERT INTO `fn_function` VALUES ('menu_process','Process List','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Process List';
+INSERT INTO `fn_function` VALUES ('menu_profile','Profile Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Profile Menu';
+INSERT INTO `fn_function` VALUES ('menu_profile_create','Profile Create','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Profile Create';
+INSERT INTO `fn_function` VALUES ('menu_profile_import','Profile Import','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Profile Import';
+INSERT INTO `fn_function` VALUES ('menu_reports','Reports Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Reports Menu';
+INSERT INTO `fn_function` VALUES ('menu_sample','Sample Pages Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Sample Pages Menu';
+INSERT INTO `fn_function` VALUES ('menu_tab','Sample Tab Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Sample Tab Menu';
+INSERT INTO `fn_function` VALUES ('menu_task','Task Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Task Menu';
+INSERT INTO `fn_function` VALUES ('menu_task_search','Task Search','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Task Search';
+INSERT INTO `fn_function` VALUES ('menu_test','Test Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Test Menu';
+INSERT INTO `fn_function` VALUES ('menu_viewlog','Log Menu','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Log Menu';
+INSERT INTO `fn_function` VALUES ('view_reports','View Raptor reports','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='View Raptor reports';
+INSERT INTO `fn_function` VALUES ('menu_searchexisting', 'Search for Existing Service Instances','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Search for Existing Service Instances';
+INSERT INTO `fn_function` VALUES ('menu_changemanagement','VNF Changes','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='VNF Changes';
+--INSERT INTO `fn_function` VALUES ('menu_testenvironment','Test Environments','menu','*') ON DUPLICATE KEY UPDATE FUNCTION_NAME='Test Environments';
+
+--
+-- Dumping data for table `fn_lu_activity`
+--
+REPLACE INTO `fn_lu_activity` VALUES ('add_child_role','add_child_role');
+REPLACE INTO `fn_lu_activity` VALUES ('add_role','add_role');
+REPLACE INTO `fn_lu_activity` VALUES ('add_role_function','add_role_function');
+REPLACE INTO `fn_lu_activity` VALUES ('add_user_role','add_user_role');
+REPLACE INTO `fn_lu_activity` VALUES ('login','Login');
+REPLACE INTO `fn_lu_activity` VALUES ('logout','Logout');
+REPLACE INTO `fn_lu_activity` VALUES ('mobile_login','Mobile Login');
+REPLACE INTO `fn_lu_activity` VALUES ('mobile_logout','Mobile Logout');
+REPLACE INTO `fn_lu_activity` VALUES ('remove_child_role','remove_child_role');
+REPLACE INTO `fn_lu_activity` VALUES ('remove_role','remove_role');
+REPLACE INTO `fn_lu_activity` VALUES ('remove_role_function','remove_role_function');
+REPLACE INTO `fn_lu_activity` VALUES ('remove_user_role','remove_user_role');
+
+--
+-- Dumping data for table `fn_lu_alert_method`
+--
+REPLACE INTO `fn_lu_alert_method` VALUES ('EMAIL','Email');
+REPLACE INTO `fn_lu_alert_method` VALUES ('FAX','Fax');
+REPLACE INTO `fn_lu_alert_method` VALUES ('PAGER','Pager');
+REPLACE INTO `fn_lu_alert_method` VALUES ('PHONE','Phone');
+REPLACE INTO `fn_lu_alert_method` VALUES ('SMS','SMS');
+
+--
+-- Dumping data for table `fn_lu_call_times`
+--
+REPLACE INTO `fn_lu_call_times` VALUES (1,20,'20 min');
+REPLACE INTO `fn_lu_call_times` VALUES (2,40,'40 min');
+REPLACE INTO `fn_lu_call_times` VALUES (3,60,'1 hr');
+REPLACE INTO `fn_lu_call_times` VALUES (4,80,'1 hr 20 min');
+REPLACE INTO `fn_lu_call_times` VALUES (5,100,'1 hr 40 min');
+REPLACE INTO `fn_lu_call_times` VALUES (6,120,'2 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (7,140,'2 hr 20 min');
+REPLACE INTO `fn_lu_call_times` VALUES (8,160,'2 hr 40 min');
+REPLACE INTO `fn_lu_call_times` VALUES (9,180,'3 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (10,200,'3 hr 20 min');
+REPLACE INTO `fn_lu_call_times` VALUES (11,220,'3 hr 40 min');
+REPLACE INTO `fn_lu_call_times` VALUES (12,240,'4 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (13,260,'4 hr 20 min');
+REPLACE INTO `fn_lu_call_times` VALUES (14,280,'4 hr 40 min');
+REPLACE INTO `fn_lu_call_times` VALUES (15,300,'5 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (16,320,'5 hr 20 min');
+REPLACE INTO `fn_lu_call_times` VALUES (17,340,'5 hr 40 min');
+REPLACE INTO `fn_lu_call_times` VALUES (18,360,'6 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (19,380,'6 hr 20 min');
+REPLACE INTO `fn_lu_call_times` VALUES (20,400,'6 hr 40 min');
+REPLACE INTO `fn_lu_call_times` VALUES (21,420,'7 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (22,440,'7 hr 20 min');
+REPLACE INTO `fn_lu_call_times` VALUES (23,460,'7 hr 40 min');
+REPLACE INTO `fn_lu_call_times` VALUES (24,480,'8 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (25,500,'8 hr 20 min');
+REPLACE INTO `fn_lu_call_times` VALUES (26,520,'8 hr 40 min');
+REPLACE INTO `fn_lu_call_times` VALUES (27,540,'9 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (28,560,'9 hr 20 min');
+REPLACE INTO `fn_lu_call_times` VALUES (29,580,'9 hr 40 min');
+REPLACE INTO `fn_lu_call_times` VALUES (30,600,'10 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (31,10,'10 min');
+REPLACE INTO `fn_lu_call_times` VALUES (32,5,'5 min');
+REPLACE INTO `fn_lu_call_times` VALUES (33,1200,'20 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (34,1800,'30 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (35,2400,'40 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (36,3000,'50 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (37,4200,'70 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (38,4800,'80 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (39,5400,'90 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (40,6000,'100 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (41,7200,'120 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (42,9600,'160 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (43,10800,'180 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (44,12000,'200 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (45,18000,'300 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (46,24000,'400 hrs');
+REPLACE INTO `fn_lu_call_times` VALUES (47,30000,'500 hrs');
+
+--
+-- Dumping data for table `fn_lu_country`
+--
+REPLACE INTO `fn_lu_country` VALUES ('AD','Andorra','Andorra',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('AE','United Arab Emirates','United Arab Emirates',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('AF','Afghanistan','Afghanistan',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('AG','Antigua and Barbuda','Antigua and Barbuda',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('AI','Anguilla','Anguilla',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('AL','Albania','Albania',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('AM','Armenia','Armenia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('AN','Netherlands Antilles','Netherlands Antilles',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('AO','Angola','Angola',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('AQ','Antarctica','Antarctica',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('AR','Argentina','Argentina',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('AS','American Samoa','American Samoa',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('AT','Austria','Austria',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('AU','Australia','Australia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('AW','Aruba','Aruba',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('AZ','Azerbaidjan','Azerbaidjan',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BA','Bosnia-Herzegovina','Bosnia-Herzegovina',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BB','Barbados','Barbados',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BD','Bangladesh','Bangladesh',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BE','Belgium','Belgium',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BF','Burkina Faso','Burkina Faso',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BG','Bulgaria','Bulgaria',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BH','Bahrain','Bahrain',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BI','Burundi','Burundi',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BJ','Benin','Benin',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BM','Bermuda','Bermuda',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BN','Brunei Darussalam','Brunei Darussalam',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BO','Bolivia','Bolivia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BR','Brazil','Brazil',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BS','Bahamas','Bahamas',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BT','Bhutan','Bhutan',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BV','Bouvet Island','Bouvet Island',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BW','Botswana','Botswana',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BY','Belarus','Belarus',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('BZ','Belize','Belize',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CA','Canada','Canada',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CC','Cocos (Keeling) Islands','Cocos (Keeling) Islands',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CF','Central African Republic','Central African Republic',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CG','Congo','Congo',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CH','Switzerland','Switzerland',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CI','Ivory Coast (Cote D\'Ivoire)','Ivory Coast (Cote D\'Ivoire)',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CK','Cook Islands','Cook Islands',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CL','Chile','Chile',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CM','Cameroon','Cameroon',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CN','China','China','China');
+REPLACE INTO `fn_lu_country` VALUES ('CO','Colombia','Colombia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CR','Costa Rica','Costa Rica',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CS','Former Czechoslovakia','Former Czechoslovakia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CU','Cuba','Cuba',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CV','Cape Verde','Cape Verde',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CX','Christmas Island','Christmas Island',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CY','Cyprus','Cyprus',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('CZ','Czech Republic','Czech Republic',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('DE','Germany','Germany',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('DJ','Djibouti','Djibouti',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('DK','Denmark','Denmark',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('DM','Dominica','Dominica',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('DO','Dominican Republic','Dominican Republic',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('DZ','Algeria','Algeria',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('EC','Ecuador','Ecuador',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('EE','Estonia','Estonia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('EG','Egypt','Egypt',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('EH','Western Sahara','Western Sahara',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('ER','Eritrea','Eritrea',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('ES','Spain','Spain',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('ET','Ethiopia','Ethiopia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('FI','Finland','Finland',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('FJ','Fiji','Fiji',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('FK','Falkland Islands','Falkland Islands',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('FM','Micronesia','Micronesia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('FO','Faroe Islands','Faroe Islands',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('FR','France','France',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('FX','France (European Territory)','France (European Territory)',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GA','Gabon','Gabon',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GB','Great Britain','Great Britain',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GD','Grenada','Grenada',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GE','Georgia','Georgia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GF','French Guyana','French Guyana',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GH','Ghana','Ghana',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GI','Gibraltar','Gibraltar',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GL','Greenland','Greenland',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GM','Gambia','Gambia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GN','Guinea','Guinea',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GP','Guadeloupe (French)','Guadeloupe (French)',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GQ','Equatorial Guinea','Equatorial Guinea',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GR','Greece','Greece',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GS','S. Georgia and S. Sandwich Isls.','S. Georgia and S. Sandwich Isls.',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GT','Guatemala','Guatemala',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GU','Guam (USA)','Guam (USA)',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GW','Guinea Bissau','Guinea Bissau',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('GY','Guyana','Guyana',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('HK','Hong Kong','Hong Kong',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('HM','Heard and McDonald Islands','Heard and McDonald Islands',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('HN','Honduras','Honduras',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('HR','Croatia','Croatia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('HT','Haiti','Haiti',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('HU','Hungary','Hungary',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('ID','Indonesia','Indonesia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('IE','Ireland','Ireland',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('IL','Israel','Israel',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('IN','India','India',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('IO','British Indian Ocean Territory','British Indian Ocean Territory',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('IQ','Iraq','Iraq',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('IR','Iran','Iran',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('IS','Iceland','Iceland',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('IT','Italy','Italy',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('JM','Jamaica','Jamaica',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('JO','Jordan','Jordan',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('JP','Japan','Japan',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('KE','Kenya','Kenya',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('KG','Kyrgyzstan','Kyrgyzstan',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('KH','Cambodia','Cambodia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('KI','Kiribati','Kiribati',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('KM','Comoros','Comoros',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('KN','Saint Kitts and Nevis Anguilla','Saint Kitts and Nevis Anguilla',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('KP','North Korea','North Korea',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('KR','South Korea','South Korea',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('KW','Kuwait','Kuwait',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('KY','Cayman Islands','Cayman Islands',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('KZ','Kazakhstan','Kazakhstan',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('LA','Laos','Laos',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('LB','Lebanon','Lebanon',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('LC','Saint Lucia','Saint Lucia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('LI','Liechtenstein','Liechtenstein',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('LK','Sri Lanka','Sri Lanka',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('LR','Liberia','Liberia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('LS','Lesotho','Lesotho',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('LT','Lithuania','Lithuania',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('LU','Luxembourg','Luxembourg',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('LV','Latvia','Latvia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('LY','Libya','Libya',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MA','Morocco','Morocco',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MC','Monaco','Monaco',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MD','Moldavia','Moldavia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MG','Madagascar','Madagascar',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MH','Marshall Islands','Marshall Islands',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MK','Macedonia','Macedonia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('ML','Mali','Mali',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MM','Myanmar','Myanmar',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MN','Mongolia','Mongolia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MO','Macau','Macau',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MP','Northern Mariana Islands','Northern Mariana Islands',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MQ','Martinique (French)','Martinique (French)',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MR','Mauritania','Mauritania',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MS','Montserrat','Montserrat',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MT','Malta','Malta',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MU','Mauritius','Mauritius',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MV','Maldives','Maldives',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MW','Malawi','Malawi',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MX','Mexico','Mexico','Mexico');
+REPLACE INTO `fn_lu_country` VALUES ('MY','Malaysia','Malaysia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('MZ','Mozambique','Mozambique',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('NA','Namibia','Namibia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('NC','New Caledonia (French)','New Caledonia (French)',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('NE','Niger','Niger',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('NF','Norfolk Island','Norfolk Island',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('NG','Nigeria','Nigeria',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('NI','Nicaragua','Nicaragua',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('NL','Netherlands','Netherlands',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('NO','Norway','Norway',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('NP','Nepal','Nepal',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('NR','Nauru','Nauru',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('NU','Niue','Niue',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('NZ','New Zealand','New Zealand',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('OM','Oman','Oman',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('PA','Panama','Panama',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('PE','Peru','Peru',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('PF','Polynesia (French)','Polynesia (French)',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('PG','Papua New Guinea','Papua New Guinea',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('PH','Philippines','Philippines',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('PK','Pakistan','Pakistan',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('PL','Poland','Poland',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('PM','Saint Pierre and Miquelon','Saint Pierre and Miquelon',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('PN','Pitcairn Island','Pitcairn Island',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('PR','Puerto Rico','Puerto Rico',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('PT','Portugal','Portugal',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('PW','Palau','Palau',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('PY','Paraguay','Paraguay',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('QA','Qatar','Qatar',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('RE','Reunion (French)','Reunion (French)',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('RO','Romania','Romania',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('RU','Russian Federation','Russian Federation',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('RW','Rwanda','Rwanda',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SA','Saudi Arabia','Saudi Arabia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SB','Solomon Islands','Solomon Islands',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SC','Seychelles','Seychelles',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SD','Sudan','Sudan',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SE','Sweden','Sweden',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SG','Singapore','Singapore',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SH','Saint Helena','Saint Helena',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SI','Slovenia','Slovenia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SJ','Svalbard and Jan Mayen Islands','Svalbard and Jan Mayen Islands',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SK','Slovak Republic','Slovak Republic',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SL','Sierra Leone','Sierra Leone',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SM','San Marino','San Marino',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SN','Senegal','Senegal',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SO','Somalia','Somalia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SR','Suriname','Suriname',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('ST','Saint Tome (Sao Tome) and Principe','Saint Tome (Sao Tome) and Principe',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SU','Former USSR','Former USSR',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SV','El Salvador','El Salvador',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SY','Syria','Syria',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('SZ','Swaziland','Swaziland',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TC','Turks and Caicos Islands','Turks and Caicos Islands',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TD','Chad','Chad',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TF','French Southern Territories','French Southern Territories',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TG','Togo','Togo',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TH','Thailand','Thailand',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TJ','Tadjikistan','Tadjikistan',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TK','Tokelau','Tokelau',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TM','Turkmenistan','Turkmenistan',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TN','Tunisia','Tunisia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TO','Tonga','Tonga',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TP','East Timor','East Timor',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TR','Turkey','Turkey',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TT','Trinidad and Tobago','Trinidad and Tobago',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TV','Tuvalu','Tuvalu',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TW','Taiwan','Taiwan',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('TZ','Tanzania','Tanzania',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('UA','Ukraine','Ukraine',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('UG','Uganda','Uganda',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('UK','United Kingdom','United Kingdom',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('UM','USA Minor Outlying Islands','USA Minor Outlying Islands',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('US','United States','United States','USA');
+REPLACE INTO `fn_lu_country` VALUES ('UY','Uruguay','Uruguay',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('UZ','Uzbekistan','Uzbekistan',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('VA','Vatican City State','Vatican City State',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('VC','Saint Vincent and Grenadines','Saint Vincent and Grenadines',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('VE','Venezuela','Venezuela',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('VG','Virgin Islands (British)','Virgin Islands (British)',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('VI','Virgin Islands (USA)','Virgin Islands (USA)',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('VN','Vietnam','Vietnam',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('VU','Vanuatu','Vanuatu',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('WF','Wallis and Futuna Islands','Wallis and Futuna Islands',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('WS','Samoa','Samoa',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('YE','Yemen','Yemen',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('YT','Mayotte','Mayotte',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('YU','Yugoslavia','Yugoslavia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('ZA','South Africa','South Africa',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('ZM','Zambia','Zambia',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('ZR','Zaire','Zaire',NULL);
+REPLACE INTO `fn_lu_country` VALUES ('ZW','Zimbabwe','Zimbabwe',NULL);
+
+--
+-- Dumping data for table `fn_lu_menu_set`
+--
+INSERT INTO `fn_lu_menu_set` VALUES ('APP','Application Menu') ON DUPLICATE KEY UPDATE MENU_SET_NAME='Application Menu';
+
+--
+-- Dumping data for table `fn_lu_priority`
+--
+REPLACE INTO `fn_lu_priority` VALUES (10,'Low','Y',10);
+REPLACE INTO `fn_lu_priority` VALUES (20,'Normal','Y',20);
+REPLACE INTO `fn_lu_priority` VALUES (30,'High','Y',30);
+REPLACE INTO `fn_lu_priority` VALUES (40,'Urgent','Y',40);
+REPLACE INTO `fn_lu_priority` VALUES (50,'Fatal','Y',50);
+
+--
+-- Dumping data for table `fn_lu_state`
+--
+REPLACE INTO `fn_lu_state` VALUES ('AK','AK - Alaska');
+REPLACE INTO `fn_lu_state` VALUES ('AL','AL - Alabama');
+REPLACE INTO `fn_lu_state` VALUES ('AR','AR - Arkansas');
+REPLACE INTO `fn_lu_state` VALUES ('AZ','AZ - Arizona');
+REPLACE INTO `fn_lu_state` VALUES ('CA','CA - California');
+REPLACE INTO `fn_lu_state` VALUES ('CO','CO - Colorado');
+REPLACE INTO `fn_lu_state` VALUES ('CT','CT - Connecticut');
+REPLACE INTO `fn_lu_state` VALUES ('DC','DC - District Of Columbia');
+REPLACE INTO `fn_lu_state` VALUES ('DE','DE - Delaware');
+REPLACE INTO `fn_lu_state` VALUES ('FL','FL - Florida');
+REPLACE INTO `fn_lu_state` VALUES ('GA','GA - Georgia');
+REPLACE INTO `fn_lu_state` VALUES ('HI','HI - Hawaii');
+REPLACE INTO `fn_lu_state` VALUES ('IA','IA - Iowa');
+REPLACE INTO `fn_lu_state` VALUES ('ID','ID - Idaho');
+REPLACE INTO `fn_lu_state` VALUES ('IL','IL - Illinois');
+REPLACE INTO `fn_lu_state` VALUES ('IN','IN - Indiana');
+REPLACE INTO `fn_lu_state` VALUES ('KS','KS - Kansas');
+REPLACE INTO `fn_lu_state` VALUES ('KY','KY - Kentucky');
+REPLACE INTO `fn_lu_state` VALUES ('LA','LA - Louisiana');
+REPLACE INTO `fn_lu_state` VALUES ('MA','MA - Massachusetts');
+REPLACE INTO `fn_lu_state` VALUES ('MD','MD - Maryland');
+REPLACE INTO `fn_lu_state` VALUES ('ME','ME - Maine');
+REPLACE INTO `fn_lu_state` VALUES ('MI','MI - Michigan');
+REPLACE INTO `fn_lu_state` VALUES ('MN','MN - Minnesota');
+REPLACE INTO `fn_lu_state` VALUES ('MO','MO - Missouri');
+REPLACE INTO `fn_lu_state` VALUES ('MS','MS - Mississippi');
+REPLACE INTO `fn_lu_state` VALUES ('MT','MT - Montana');
+REPLACE INTO `fn_lu_state` VALUES ('NC','NC - North Carolina');
+REPLACE INTO `fn_lu_state` VALUES ('ND','ND - North Dakota');
+REPLACE INTO `fn_lu_state` VALUES ('NE','NE - Nebraska');
+REPLACE INTO `fn_lu_state` VALUES ('NH','NH - New Hampshire');
+REPLACE INTO `fn_lu_state` VALUES ('NJ','NJ - New Jersey');
+REPLACE INTO `fn_lu_state` VALUES ('NM','NM - New Mexico');
+REPLACE INTO `fn_lu_state` VALUES ('NV','NV - Nevada');
+REPLACE INTO `fn_lu_state` VALUES ('NY','NY - New York');
+REPLACE INTO `fn_lu_state` VALUES ('OH','OH - Ohio');
+REPLACE INTO `fn_lu_state` VALUES ('OK','OK - Oklahoma');
+REPLACE INTO `fn_lu_state` VALUES ('OR','OR - Oregon');
+REPLACE INTO `fn_lu_state` VALUES ('PA','PA - Pennsylvania');
+REPLACE INTO `fn_lu_state` VALUES ('PR','PR - Puerto Rico');
+REPLACE INTO `fn_lu_state` VALUES ('RI','RI - Rhode Island');
+REPLACE INTO `fn_lu_state` VALUES ('SC','SC - South Carolina');
+REPLACE INTO `fn_lu_state` VALUES ('SD','SD - South Dakota');
+REPLACE INTO `fn_lu_state` VALUES ('TN','TN - Tennessee');
+REPLACE INTO `fn_lu_state` VALUES ('TX','TX - Texas');
+REPLACE INTO `fn_lu_state` VALUES ('UT','UT - Utah');
+REPLACE INTO `fn_lu_state` VALUES ('VA','VA - Virginia');
+REPLACE INTO `fn_lu_state` VALUES ('VI','VI-Virgin Island');
+REPLACE INTO `fn_lu_state` VALUES ('VT','VT - Vermont');
+REPLACE INTO `fn_lu_state` VALUES ('WA','WA - Washington');
+REPLACE INTO `fn_lu_state` VALUES ('WI','WI - Wisconsin');
+REPLACE INTO `fn_lu_state` VALUES ('WV','WV - West Virginia');
+REPLACE INTO `fn_lu_state` VALUES ('WY','WY - Wyoming');
+
+--
+-- Dumping data for table `fn_lu_tab_set`
+--
+INSERT INTO `fn_lu_tab_set` VALUES ('APP','Application Tabs') ON DUPLICATE KEY UPDATE TAB_SET_NAME='Application Tabs';
+
+--
+-- Dumping data for table `fn_lu_timezone`
+--
+INSERT INTO `fn_lu_timezone` VALUES (10,'US/Eastern','US/Eastern') ON DUPLICATE KEY UPDATE TIMEZONE_NAME='US/Eastern', TIMEZONE_VALUE='US/Eastern';
+INSERT INTO `fn_lu_timezone` VALUES (20,'US/Central','US/Central') ON DUPLICATE KEY UPDATE TIMEZONE_NAME='US/Central', TIMEZONE_VALUE='US/Central';
+INSERT INTO `fn_lu_timezone` VALUES (30,'US/Mountain','US/Mountain') ON DUPLICATE KEY UPDATE TIMEZONE_NAME='US/Mountain', TIMEZONE_VALUE='US/Mountain';
+INSERT INTO `fn_lu_timezone` VALUES (40,'US/Arizona','America/Phoenix') ON DUPLICATE KEY UPDATE TIMEZONE_NAME='US/Arizona', TIMEZONE_VALUE='America/Phoenix';
+INSERT INTO `fn_lu_timezone` VALUES (50,'US/Pacific','US/Pacific') ON DUPLICATE KEY UPDATE TIMEZONE_NAME='US/Pacific', TIMEZONE_VALUE='US/Pacific';
+INSERT INTO `fn_lu_timezone` VALUES (60,'US/Alaska','US/Alaska') ON DUPLICATE KEY UPDATE TIMEZONE_NAME='US/Alaska', TIMEZONE_VALUE='US/Alaska';
+INSERT INTO `fn_lu_timezone` VALUES (70,'US/Hawaii','US/Hawaii') ON DUPLICATE KEY UPDATE TIMEZONE_NAME='US/Hawaii', TIMEZONE_VALUE='US/Hawaii';
+
+--
+-- Dumping data for table `fn_menu`
+--
+INSERT INTO `fn_menu` VALUES (1,'Root',NULL,10,NULL,'menu_home','N',NULL,NULL,NULL,NULL,'APP','N',NULL) ON DUPLICATE KEY UPDATE LABEL='Root', PARENT_ID=NULL, SORT_ORDER=10, ACTION=NULL, FUNCTION_CD='menu_home', ACTIVE_YN='N', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC=NULL;
+INSERT INTO `fn_menu` VALUES (2,'VID Home',1,10,'welcome.htm','menu_home','Y',NULL,NULL,NULL,NULL,'APP','N','icon-location-pin') ON DUPLICATE KEY UPDATE LABEL='VID Home', PARENT_ID=1, SORT_ORDER=10, ACTION='welcome.htm', FUNCTION_CD='menu_home', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-location-pin';
+
+INSERT INTO `fn_menu` VALUES (3,'Search for Existing Service Instances',1,10,'serviceModels.htm#/instances/services','menu_searchexisting','Y',NULL,NULL,NULL,NULL,'APP','N','icon-location-pin') ON DUPLICATE KEY UPDATE LABEL='Search for Existing Service Instances', PARENT_ID=1, SORT_ORDER=10, ACTION='serviceModels.htm#/instances/services', FUNCTION_CD='menu_searchexisting', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-location-pin';
+INSERT INTO `fn_menu` VALUES (10,'Admin',1,110,'role_list.htm','menu_admin','Y',NULL,NULL,NULL,NULL,'APP','N','icon-settings') ON DUPLICATE KEY UPDATE LABEL='Admin', PARENT_ID=1, SORT_ORDER=110, ACTION='admin', FUNCTION_CD='menu_admin', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-settings';
+INSERT INTO `fn_menu` VALUES (13,'VID Logout',1,130,'app_logout.htm','menu_logout','N',NULL,NULL,NULL,NULL,'APP','N','icon-sign-out') ON DUPLICATE KEY UPDATE LABEL='VID Logout', PARENT_ID=1, SORT_ORDER=130, ACTION='app_logout.htm', FUNCTION_CD='menu_logout', ACTIVE_YN='N', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-sign-out';
+INSERT INTO `fn_menu` VALUES (42,'Browse SDC Service Models',1,10,'serviceModels.htm','menu_servicemodels','Y',NULL,NULL,NULL,NULL,'APP','N','icon-location-pin') ON DUPLICATE KEY UPDATE LABEL='Browse SDC Service Instances', PARENT_ID=1, SORT_ORDER=10, ACTION='serviceModels.htm', FUNCTION_CD='menu_servicemodels', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-location-pin';
+INSERT INTO `fn_menu` VALUES (41,'Create New Service Instance',1,10,'serviceModels.htm#/instances/subscribers','menu_newserinstance','Y',NULL,NULL,NULL,NULL,'APP','N','icon-location-pin') ON DUPLICATE KEY UPDATE LABEL='Create New Service Instance', PARENT_ID=1, SORT_ORDER=10, ACTION='serviceModels.htm#/instances/subscribers', FUNCTION_CD='menu_newserinstance', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-location-pin';
+INSERT INTO `fn_menu` VALUES (43,'View Log',1,10,'viewlog.htm','menu_viewlog','N',NULL,NULL,NULL,NULL,'APP','N','icon-location-pin') ON DUPLICATE KEY UPDATE LABEL='View Log', PARENT_ID=1, SORT_ORDER=10, ACTION='viewlog.htm', FUNCTION_CD='menu_viewlog', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-location-pin';
+INSERT INTO `fn_menu` VALUES (101,'Roles',10,20,'admin','menu_admin','Y',NULL,NULL,NULL,NULL,'APP','N','/static/fusion/images/users.png') ON DUPLICATE KEY UPDATE LABEL='Roles', PARENT_ID=10, SORT_ORDER=20, ACTION='admin', FUNCTION_CD='menu_admin', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='/static/fusion/images/users.png';
+INSERT INTO `fn_menu` VALUES (102,'Role Functions',10,30,'admin#/role_function_list','menu_admin','Y',NULL,NULL,NULL,NULL,'APP','N',NULL) ON DUPLICATE KEY UPDATE LABEL='Role Functions', PARENT_ID=10, SORT_ORDER=30, ACTION='admin#/role_function_list', FUNCTION_CD='menu_admin', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC=NULL;
+INSERT INTO `fn_menu` VALUES (103,'Broadcast Messages',10,50,'admin#/broadcast_list','menu_admin','N',NULL,NULL,NULL,NULL,'APP','N','/static/fusion/images/bubble.png') ON DUPLICATE KEY UPDATE LABEL='Broadcast Messages', PARENT_ID=10, SORT_ORDER=50, ACTION='admin#/broadcast_list', FUNCTION_CD='menu_admin', ACTIVE_YN='N', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='/static/fusion/images/bubble.png';
+INSERT INTO `fn_menu` VALUES (105,'Cache Admin',10,40,'admin#/jcs_admin','menu_admin','N',NULL,NULL,NULL,NULL,'APP','N','/static/fusion/images/cache.png') ON DUPLICATE KEY UPDATE LABEL='Cache Admin', PARENT_ID=10, SORT_ORDER=40, ACTION='admin#/jcs_admin', FUNCTION_CD='menu_admin', ACTIVE_YN='N', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='/static/fusion/images/cache.png';
+INSERT INTO `fn_menu` VALUES (106,'Lock/Unlock Application',10,60,'application_lockout.htm','menu_admin','N',NULL,NULL,NULL,NULL,'APP','N','/static/fusion/images/decrypted.png') ON DUPLICATE KEY UPDATE LABEL='Lock/Unlock Application', PARENT_ID=10, SORT_ORDER=60, ACTION='application_lockout.htm', FUNCTION_CD='menu_admin', ACTIVE_YN='N', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='/static/fusion/images/decrypted.png';
+INSERT INTO `fn_menu` VALUES (108,'Usage',10,80,'admin#/usage_list','menu_admin','N',NULL,NULL,NULL,NULL,'APP','N','/static/fusion/images/users.png') ON DUPLICATE KEY UPDATE LABEL='Usage', PARENT_ID=10, SORT_ORDER=80, ACTION='admin#/usage_list', FUNCTION_CD='menu_admin', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='/static/fusion/images/users.png';
+INSERT INTO `fn_menu` VALUES (109, 'VNF Changes', 1, 11, 'serviceModels.htm#/change-management', 'menu_changemanagement', 'Y', NULL, NULL, NULL, NULL, 'APP', 'N', 'icon-location-pin') ON DUPLICATE KEY UPDATE LABEL='VNF Changes', PARENT_ID=1, SORT_ORDER=11, ACTION='serviceModels.htm#/change-management', FUNCTION_CD='menu_changemanagement', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-location-pin';
+--INSERT INTO `fn_menu` VALUES (110, 'Test Environments', 1, 12, 'serviceModels.htm#/testEnvironments', 'menu_testenvironment', 'Y', NULL, NULL, NULL, NULL, 'APP', 'N', 'icon-location-pin') ON DUPLICATE KEY UPDATE LABEL='Test Environments', PARENT_ID=1, SORT_ORDER=12, ACTION='serviceModels.htm#/testEnvironments', FUNCTION_CD='menu_testenvironment', ACTIVE_YN='Y', SERVLET=NULL, QUERY_STRING=NULL, EXTERNAL_URL=NULL, TARGET=NULL, MENU_SET_CD='APP', SEPARATOR_YN='N', IMAGE_SRC='icon-location-pin';
+--
+-- Dumping data for table `fn_restricted_url`
+--
+REPLACE INTO `fn_restricted_url` VALUES ('attachment.htm','menu_admin');
+REPLACE INTO `fn_restricted_url` VALUES ('broadcast.htm','menu_admin');
+REPLACE INTO `fn_restricted_url` VALUES ('file_upload.htm','menu_admin');
+REPLACE INTO `fn_restricted_url` VALUES ('job.htm','menu_admin');
+REPLACE INTO `fn_restricted_url` VALUES ('role.htm','menu_admin');
+REPLACE INTO `fn_restricted_url` VALUES ('role_function.htm','menu_admin');
+REPLACE INTO `fn_restricted_url` VALUES ('test.htm','menu_admin');
+REPLACE INTO `fn_restricted_url` VALUES ('serviceModels.htm','menu_servicemodels');
+REPLACE INTO `fn_restricted_url` VALUES ('async_test.htm','menu_home');
+REPLACE INTO `fn_restricted_url` VALUES ('chatWindow.htm','menu_home');
+REPLACE INTO `fn_restricted_url` VALUES ('contact_list.htm','menu_home');
+REPLACE INTO `fn_restricted_url` VALUES ('customer_dynamic_list.htm','menu_home');
+REPLACE INTO `fn_restricted_url` VALUES ('event.htm','menu_home');
+REPLACE INTO `fn_restricted_url` VALUES ('event_list.htm','menu_home');
+REPLACE INTO `fn_restricted_url` VALUES ('mobile_welcome.htm','menu_home');
+REPLACE INTO `fn_restricted_url` VALUES ('sample_map.htm','menu_home');
+REPLACE INTO `fn_restricted_url` VALUES ('template.jsp','menu_home');
+REPLACE INTO `fn_restricted_url` VALUES ('welcome.htm','menu_home');
+REPLACE INTO `fn_restricted_url` VALUES ('zkau','menu_home');
+REPLACE INTO `fn_restricted_url` VALUES ('itracker_assign.htm','menu_itracker');
+REPLACE INTO `fn_restricted_url` VALUES ('itracker_byassignee.htm','menu_itracker');
+REPLACE INTO `fn_restricted_url` VALUES ('itracker_create.htm','menu_itracker');
+REPLACE INTO `fn_restricted_url` VALUES ('itracker_update.htm','menu_itracker');
+REPLACE INTO `fn_restricted_url` VALUES ('manage_license.htm','menu_itracker');
+REPLACE INTO `fn_restricted_url` VALUES ('support_ticket.htm','menu_itracker');
+REPLACE INTO `fn_restricted_url` VALUES ('jbpm_designer.htm','menu_job_create');
+REPLACE INTO `fn_restricted_url` VALUES ('jbpm_drools.htm','menu_job_create');
+REPLACE INTO `fn_restricted_url` VALUES ('process_job.htm','menu_job_create');
+-- REPLACE INTO `fn_restricted_url` VALUES ('novamap_controller.htm','menu_map');
+REPLACE INTO `fn_restricted_url` VALUES ('createnewserviceinstance.htm','menu_newserinstance');
+REPLACE INTO `fn_restricted_url` VALUES ('profile.htm','menu_profile_create');
+REPLACE INTO `fn_restricted_url` VALUES ('raptor.htm','menu_reports');
+REPLACE INTO `fn_restricted_url` VALUES ('raptor2.htm','menu_reports');
+REPLACE INTO `fn_restricted_url` VALUES ('raptor_blob_extract.htm','menu_reports');
+REPLACE INTO `fn_restricted_url` VALUES ('raptor_email_attachment.htm','menu_reports');
+REPLACE INTO `fn_restricted_url` VALUES ('raptor_search.htm','menu_reports');
+REPLACE INTO `fn_restricted_url` VALUES ('report_list.htm','menu_reports');
+REPLACE INTO `fn_restricted_url` VALUES ('gauge.htm','menu_tab');
+REPLACE INTO `fn_restricted_url` VALUES ('gmap_controller.htm','menu_tab');
+REPLACE INTO `fn_restricted_url` VALUES ('gmap_frame.htm','menu_tab');
+REPLACE INTO `fn_restricted_url` VALUES ('map.htm','menu_tab');
+REPLACE INTO `fn_restricted_url` VALUES ('map_download.htm','menu_tab');
+REPLACE INTO `fn_restricted_url` VALUES ('map_grid_search.htm','menu_tab');
+REPLACE INTO `fn_restricted_url` VALUES ('sample_animated_map.htm','menu_tab');
+-- REPLACE INTO `fn_restricted_url` VALUES ('sample_heat_map.htm','menu_tab');
+-- REPLACE INTO `fn_restricted_url` VALUES ('sample_heat_map_no_header.htm','menu_tab');
+REPLACE INTO `fn_restricted_url` VALUES ('sample_map_2.htm','menu_tab');
+REPLACE INTO `fn_restricted_url` VALUES ('sample_map_3.htm','menu_tab');
+REPLACE INTO `fn_restricted_url` VALUES ('tab2_sub1.htm','menu_tab');
+REPLACE INTO `fn_restricted_url` VALUES ('tab2_sub2_link1.htm','menu_tab');
+REPLACE INTO `fn_restricted_url` VALUES ('tab2_sub2_link2.htm','menu_tab');
+REPLACE INTO `fn_restricted_url` VALUES ('tab2_sub3.htm','menu_tab');
+REPLACE INTO `fn_restricted_url` VALUES ('tab3.htm','menu_tab');
+REPLACE INTO `fn_restricted_url` VALUES ('tab4.htm','menu_tab');
+REPLACE INTO `fn_restricted_url` VALUES ('viewlog.htm','menu_viewlog');
+-- REPLACE INTO `fn_restricted_url` VALUES ('bd_optima.htm','quantum_bd');
+-- REPLACE INTO `fn_restricted_url` VALUES ('bd_optima_interactive.htm','quantum_bd');
+-- REPLACE INTO `fn_restricted_url` VALUES ('bd_p2t.htm','quantum_bd');
+-- REPLACE INTO `fn_restricted_url` VALUES ('grid_heatmap.htm','quantum_bd');
+-- REPLACE INTO `fn_restricted_url` VALUES ('hive.htm','quantum_bd');
+-- REPLACE INTO `fn_restricted_url` VALUES ('hiveconfig.htm','quantum_bd');
+-- REPLACE INTO `fn_restricted_url` VALUES ('hiveconfig_popup.htm','quantum_bd');
+-- REPLACE INTO `fn_restricted_url` VALUES ('hive_search.htm','quantum_bd');
+-- REPLACE INTO `fn_restricted_url` VALUES ('hive_search_popup.htm','quantum_bd');
+-- REPLACE INTO `fn_restricted_url` VALUES ('jbpmTestProcess.htm','quantum_bd');
+-- REPLACE INTO `fn_restricted_url` VALUES ('job_progress.htm','quantum_bd');
+-- REPLACE INTO `fn_restricted_url` VALUES ('mapreduce.htm','quantum_bd');
+-- REPLACE INTO `fn_restricted_url` VALUES ('mapreduce_search.htm','quantum_bd');
+REPLACE INTO `fn_restricted_url` VALUES ('raptor.htm','view_reports');
+REPLACE INTO `fn_restricted_url` VALUES ('raptor_blob_extract.htm','view_reports');
+REPLACE INTO `fn_restricted_url` VALUES ('serviceModels.htm','menu_servicemodels');
+--
+-- Dumping data for table `fn_role`
+--
+INSERT INTO `fn_role` VALUES (1,'System Administrator','Y',1) ON DUPLICATE KEY UPDATE ROLE_NAME='System Administrator', ACTIVE_YN='Y', PRIORITY=1;
+INSERT INTO `fn_role` VALUES (16,'Standard User','Y',5) ON DUPLICATE KEY UPDATE ROLE_NAME='Standard User', ACTIVE_YN='Y', PRIORITY=5;
+INSERT INTO `fn_role` VALUES (17,'Demonstration___vFWCL','Y',5) ON DUPLICATE KEY UPDATE ROLE_NAME='Demonstration___vFWCL', ACTIVE_YN='Y', PRIORITY=5;
+INSERT INTO `fn_role` VALUES (18,'Demonstration___vFW','Y',5) ON DUPLICATE KEY UPDATE ROLE_NAME='Demonstration___vFW', ACTIVE_YN='Y', PRIORITY=5;
+INSERT INTO `fn_role` VALUES (19,'Demonstration___vCPE','Y',5) ON DUPLICATE KEY UPDATE ROLE_NAME='Demonstration___vCPE', ACTIVE_YN='Y', PRIORITY=5;
+INSERT INTO `fn_role` VALUES (20,'Demonstration___vIMS','Y',5) ON DUPLICATE KEY UPDATE ROLE_NAME='Demonstration___vIMS', ACTIVE_YN='Y', PRIORITY=5;
+INSERT INTO `fn_role` VALUES (21,'Demonstration___vLB','Y',5) ON DUPLICATE KEY UPDATE ROLE_NAME='Demonstration___vLB', ACTIVE_YN='Y', PRIORITY=5;
+INSERT INTO `fn_role` VALUES (22,'Demonstration___gNB','Y',5) ON DUPLICATE KEY UPDATE ROLE_NAME='Demonstration___gNB', ACTIVE_YN='Y', PRIORITY=5;
+
+--
+-- Dumping data for table `fn_role_composite`
+--
+REPLACE INTO `fn_role_composite` VALUES (1,16);
+
+--
+-- Dumping data for table `fn_role_function`
+--
+REPLACE INTO `fn_role_function` VALUES (1,'doclib');
+REPLACE INTO `fn_role_function` VALUES (1,'doclib_admin');
+REPLACE INTO `fn_role_function` VALUES (1,'login');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_admin');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_ajax');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_servicemodels');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_customer');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_customer_create');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_feedback');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_help');
+-- REPLACE INTO `fn_role_function` VALUES (1,'menu_hiveconfig');
+-- REPLACE INTO `fn_role_function` VALUES (1,'menu_hiveconfig_create');
+-- REPLACE INTO `fn_role_function` VALUES (1,'menu_hiveconfig_search');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_home');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_itracker');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_itracker_admin');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_job');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_job_create');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_logout');
+-- REPLACE INTO `fn_role_function` VALUES (1,'menu_mapreduce');
+-- REPLACE INTO `fn_role_function` VALUES (1,'menu_mapreduce_create');
+-- REPLACE INTO `fn_role_function` VALUES (1,'menu_mapreduce_search');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_newserinstance');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_notes');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_process');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_profile');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_profile_create');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_profile_import');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_reports');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_sample');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_tab');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_test');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_viewlog');
+-- REPLACE INTO `fn_role_function` VALUES (1,'quantum_bd');
+REPLACE INTO `fn_role_function` VALUES (16,'login');
+REPLACE INTO `fn_role_function` VALUES (16,'menu_ajax');
+REPLACE INTO `fn_role_function` VALUES (16,'menu_servicemodels');
+REPLACE INTO `fn_role_function` VALUES (16,'menu_customer');
+REPLACE INTO `fn_role_function` VALUES (16,'menu_customer_create');
+REPLACE INTO `fn_role_function` VALUES (16,'menu_home');
+REPLACE INTO `fn_role_function` VALUES (16,'menu_itracker');
+REPLACE INTO `fn_role_function` VALUES (16,'menu_logout');
+REPLACE INTO `fn_role_function` VALUES (16,'menu_map');
+REPLACE INTO `fn_role_function` VALUES (16,'menu_newserinstance');
+REPLACE INTO `fn_role_function` VALUES (16,'menu_profile');
+REPLACE INTO `fn_role_function` VALUES (16,'menu_reports');
+REPLACE INTO `fn_role_function` VALUES (16,'menu_tab');
+REPLACE INTO `fn_role_function` VALUES (16,'menu_viewlog');
+-- REPLACE INTO `fn_role_function` VALUES (16,'quantum_bd');
+REPLACE INTO `fn_role_function` VALUES ('1', 'menu_searchexisting');
+REPLACE INTO `fn_role_function` VALUES ('16', 'menu_searchexisting');
+REPLACE INTO `fn_role_function` VALUES (1,'menu_changemanagement');
+REPLACE INTO `fn_role_function` VALUES (16,'menu_changemanagement');
+--REPLACE INTO `fn_role_function` VALUES (1,'menu_testenvironment');
+--REPLACE INTO `fn_role_function` VALUES (16,'menu_testenvironment');
+
+update fn_menu set active_yn = 'Y' where label = 'Admin';
+update fn_menu set active_yn = 'Y' where label = 'Root';
+update fn_menu set action = 'admin' where label = 'Admin';
+
+--
+-- Dumping data for table `fn_tab`
+--
+INSERT INTO `fn_tab` VALUES ('TAB1','Tab 1','Tab 1 Information','tab1.htm','menu_tab','Y',10,NULL,'APP') ON DUPLICATE KEY UPDATE TAB_NAME='Tab 1', TAB_DESCR='Tab 1 Information', ACTION='tab1.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=10, PARENT_TAB_CD=NULL, TAB_SET_CD='APP';
+INSERT INTO `fn_tab` VALUES ('TAB2','Tab 2','Tab 2 Information','tab2_sub1.htm','menu_tab','Y',20,NULL,'APP') ON DUPLICATE KEY UPDATE TAB_NAME='Tab 2', TAB_DESCR='Tab 2 Information', ACTION='tab2_sub1.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=20, PARENT_TAB_CD=NULL, TAB_SET_CD='APP';
+INSERT INTO `fn_tab` VALUES ('TAB2_SUB1','Sub Tab 1','Sub Tab 1 Information','tab2_sub1.htm','menu_tab','Y',10,'TAB2','APP') ON DUPLICATE KEY UPDATE TAB_NAME='Sub Tab 1', TAB_DESCR='Sub Tab 1 Information', ACTION='tab2_sub1.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=10, PARENT_TAB_CD='TAB2', TAB_SET_CD='APP';
+INSERT INTO `fn_tab` VALUES ('TAB2_SUB1_S1','Left Tab 1','Sub - Sub Tab 1 Information','tab2_sub1.htm','menu_tab','Y',10,'TAB2_SUB1','APP') ON DUPLICATE KEY UPDATE TAB_NAME='Left Tab 1', TAB_DESCR='Sub - Sub Tab 1 Information', ACTION='tab2_sub1.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=10, PARENT_TAB_CD='TAB2_SUB1', TAB_SET_CD='APP';
+INSERT INTO `fn_tab` VALUES ('TAB2_SUB2','Sub Tab 2','Sub Tab 2 Information','tab2_sub2.htm','menu_tab','Y',20,'TAB2','APP') ON DUPLICATE KEY UPDATE TAB_NAME='Sub Tab 2', TAB_DESCR='Sub Tab 2 Information', ACTION='tab2_sub2.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=20, PARENT_TAB_CD='TAB2', TAB_SET_CD='APP';
+INSERT INTO `fn_tab` VALUES ('TAB2_SUB3','Sub Tab 3','Sub Tab 3 Information','tab2_sub3.htm','menu_tab','Y',30,'TAB2','APP') ON DUPLICATE KEY UPDATE TAB_NAME='Sub Tab 3', TAB_DESCR='Sub Tab 3 Information', ACTION='tab2_sub3.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=30, PARENT_TAB_CD='TAB2', TAB_SET_CD='APP';
+INSERT INTO `fn_tab` VALUES ('TAB3','Tab 3','Tab 3 Information','tab3.htm','menu_tab','Y',30,NULL,'APP') ON DUPLICATE KEY UPDATE TAB_NAME='Tab 3', TAB_DESCR='Tab 3 Information', ACTION='tab3.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=30, PARENT_TAB_CD=NULL, TAB_SET_CD='APP';
+INSERT INTO `fn_tab` VALUES ('TAB4','Tab 4','Tab 4 Information','tab4.htm','menu_tab','Y',40,NULL,'APP') ON DUPLICATE KEY UPDATE TAB_NAME='Tab 4', TAB_DESCR='Tab 4 Information', ACTION='tab4.htm', FUNCTION_CD='menu_tab', ACTIVE_YN='Y', SORT_ORDER=40, PARENT_TAB_CD=NULL, TAB_SET_CD='APP';
+
+--
+-- Dumping data for table `fn_tab_selected`
+--
+REPLACE INTO `fn_tab_selected` VALUES ('TAB1','tab1');
+REPLACE INTO `fn_tab_selected` VALUES ('TAB2','tab2_sub1');
+REPLACE INTO `fn_tab_selected` VALUES ('TAB2','tab2_sub2');
+REPLACE INTO `fn_tab_selected` VALUES ('TAB2','tab2_sub3');
+REPLACE INTO `fn_tab_selected` VALUES ('TAB2_SUB1','tab2_sub1');
+REPLACE INTO `fn_tab_selected` VALUES ('TAB2_SUB1_S1','tab2_sub1');
+REPLACE INTO `fn_tab_selected` VALUES ('TAB2_SUB2','tab2_sub2');
+REPLACE INTO `fn_tab_selected` VALUES ('TAB2_SUB3','tab2_sub3');
+REPLACE INTO `fn_tab_selected` VALUES ('TAB3','tab3');
+REPLACE INTO `fn_tab_selected` VALUES ('TAB4','tab4');
+
+
+--
+-- Dumping data for table `fn_user`
+--
+INSERT IGNORE `fn_user` VALUES (1,null,null,'Demo',null,'User',null,null,null,null,null,null,null,'demo',null,'demo','Kp8bJ4SXszM0WX','2016-11-14 13:24:07','Y',null,'2016-10-17 00:00:00',1,'2016-11-14 13:24:07','N',null,null,null,'NJ',null,'US',null,null,null,null,null,10,null,null,null,null,null,null);
+INSERT IGNORE `fn_user` VALUES (2,null,null,'vid1',null,'User',null,null,null,null,null,null,null,'vid1',null,'vid1','Kp8bJ4SXszM0WX','2016-11-14 13:24:07','Y',null,'2016-10-17 00:00:00',1,'2016-11-14 13:24:07','N',null,null,null,'NJ',null,'US',null,null,null,null,null,10,null,null,null,null,null,null);
+INSERT IGNORE `fn_user` VALUES (3,null,null,'vid2',null,'User',null,null,null,null,null,null,null,'vid2',null,'vid2','Kp8bJ4SXszM0WX','2016-11-14 13:24:07','Y',null,'2016-10-17 00:00:00',1,'2016-11-14 13:24:07','N',null,null,null,'NJ',null,'US',null,null,null,null,null,10,null,null,null,null,null,null);
+INSERT IGNORE `fn_user` VALUES (4,null,null,'vid3',null,'User',null,null,null,null,null,null,null,'vid3',null,'vid3','Kp8bJ4SXszM0WX','2016-11-14 13:24:07','Y',null,'2016-10-17 00:00:00',1,'2016-11-14 13:24:07','N',null,null,null,'NJ',null,'US',null,null,null,null,null,10,null,null,null,null,null,null);
+INSERT IGNORE `fn_user` VALUES (5,null,null,'vid4',null,'User',null,null,null,null,null,null,null,'vid4',null,'vid4','Kp8bJ4SXszM0WX','2016-11-14 13:24:07','Y',null,'2016-10-17 00:00:00',1,'2016-11-14 13:24:07','N',null,null,null,'NJ',null,'US',null,null,null,null,null,10,null,null,null,null,null,null);
+
+INSERT IGNORE `fn_user_role` VALUES (1,1,NULL,1);
+INSERT IGNORE `fn_user_role` VALUES (2,1,NULL,1);
+INSERT IGNORE `fn_user_role` VALUES (3,1,NULL,1);
+INSERT IGNORE `fn_user_role` VALUES (4,1,NULL,1);
+INSERT IGNORE `fn_user_role` VALUES (5,1,NULL,1);
+INSERT IGNORE `fn_user_role` VALUES (1,17,NULL,1);
+INSERT IGNORE `fn_user_role` VALUES (1,18,NULL,1);
+INSERT IGNORE `fn_user_role` VALUES (1,19,NULL,1);
+INSERT IGNORE `fn_user_role` VALUES (1,20,NULL,1);
+INSERT IGNORE `fn_user_role` VALUES (1,21,NULL,1);
+INSERT IGNORE `fn_user_role` VALUES (1,22,NULL,1);
+
diff --git a/epsdk-app-onap/src/main/webapp/WEB-INF/cert/org.onap.vid.jks b/epsdk-app-onap/src/main/webapp/WEB-INF/cert/org.onap.vid.jks
index aab34aebe..3c2ce9157 100644
--- a/epsdk-app-onap/src/main/webapp/WEB-INF/cert/org.onap.vid.jks
+++ b/epsdk-app-onap/src/main/webapp/WEB-INF/cert/org.onap.vid.jks
Binary files differ
diff --git a/epsdk-app-onap/src/test/java/org/onap/portalapp/conf/ExternalAppConfigTest.java b/epsdk-app-onap/src/test/java/org/onap/portalapp/conf/ExternalAppConfigTest.java
index 693df2f24..1bdf46325 100644
--- a/epsdk-app-onap/src/test/java/org/onap/portalapp/conf/ExternalAppConfigTest.java
+++ b/epsdk-app-onap/src/test/java/org/onap/portalapp/conf/ExternalAppConfigTest.java
@@ -1,3 +1,40 @@
+/*
+ * ============LICENSE_START==========================================
+ * ONAP Portal SDK
+ * ===================================================================
+ * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+ * ===================================================================
+ *
+ * Unless otherwise specified, all software contained herein is licensed
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this software 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.
+ *
+ * Unless otherwise specified, all documentation contained herein is licensed
+ * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
+ * you may not use this documentation except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://creativecommons.org/licenses/by/4.0/
+ *
+ * Unless required by applicable law or agreed to in writing, documentation
+ * 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============================================
+ *
+ * ECOMP is a trademark and service mark of AT&T Intellectual Property.
+ */
package org.onap.portalapp.conf;
import java.util.List;
diff --git a/epsdk-app-onap/src/test/java/org/onap/portalapp/conf/HibernateMappingLocationsTest.java b/epsdk-app-onap/src/test/java/org/onap/portalapp/conf/HibernateMappingLocationsTest.java
index 5daba43d3..74e217763 100644
--- a/epsdk-app-onap/src/test/java/org/onap/portalapp/conf/HibernateMappingLocationsTest.java
+++ b/epsdk-app-onap/src/test/java/org/onap/portalapp/conf/HibernateMappingLocationsTest.java
@@ -1,3 +1,40 @@
+/*
+ * ============LICENSE_START==========================================
+ * ONAP Portal SDK
+ * ===================================================================
+ * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+ * ===================================================================
+ *
+ * Unless otherwise specified, all software contained herein is licensed
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this software 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.
+ *
+ * Unless otherwise specified, all documentation contained herein is licensed
+ * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
+ * you may not use this documentation except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://creativecommons.org/licenses/by/4.0/
+ *
+ * Unless required by applicable law or agreed to in writing, documentation
+ * 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============================================
+ *
+ * ECOMP is a trademark and service mark of AT&T Intellectual Property.
+ */
package org.onap.portalapp.conf;
import org.junit.Test;
diff --git a/epsdk-app-onap/src/test/java/org/onap/portalapp/scheduler/RegisterTest.java b/epsdk-app-onap/src/test/java/org/onap/portalapp/scheduler/RegisterTest.java
index 8fed88c55..19ea83491 100644
--- a/epsdk-app-onap/src/test/java/org/onap/portalapp/scheduler/RegisterTest.java
+++ b/epsdk-app-onap/src/test/java/org/onap/portalapp/scheduler/RegisterTest.java
@@ -1,3 +1,40 @@
+/*
+ * ============LICENSE_START==========================================
+ * ONAP Portal SDK
+ * ===================================================================
+ * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+ * ===================================================================
+ *
+ * Unless otherwise specified, all software contained herein is licensed
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this software 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.
+ *
+ * Unless otherwise specified, all documentation contained herein is licensed
+ * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
+ * you may not use this documentation except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://creativecommons.org/licenses/by/4.0/
+ *
+ * Unless required by applicable law or agreed to in writing, documentation
+ * 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============================================
+ *
+ * ECOMP is a trademark and service mark of AT&T Intellectual Property.
+ */
package org.onap.portalapp.scheduler;
import java.util.List;
diff --git a/epsdk-app-onap/src/test/java/org/onap/portalapp/scheduler/RegistryAdapterTest.java b/epsdk-app-onap/src/test/java/org/onap/portalapp/scheduler/RegistryAdapterTest.java
index c685fb209..d60a4800b 100644
--- a/epsdk-app-onap/src/test/java/org/onap/portalapp/scheduler/RegistryAdapterTest.java
+++ b/epsdk-app-onap/src/test/java/org/onap/portalapp/scheduler/RegistryAdapterTest.java
@@ -1,3 +1,40 @@
+/*
+ * ============LICENSE_START==========================================
+ * ONAP Portal SDK
+ * ===================================================================
+ * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+ * ===================================================================
+ *
+ * Unless otherwise specified, all software contained herein is licensed
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this software 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.
+ *
+ * Unless otherwise specified, all documentation contained herein is licensed
+ * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
+ * you may not use this documentation except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://creativecommons.org/licenses/by/4.0/
+ *
+ * Unless required by applicable law or agreed to in writing, documentation
+ * 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============================================
+ *
+ * ECOMP is a trademark and service mark of AT&T Intellectual Property.
+ */
package org.onap.portalapp.scheduler;
import java.util.List;
diff --git a/epsdk-app-onap/src/test/java/org/onap/portalapp/service/AdminAuthExtensionTest.java b/epsdk-app-onap/src/test/java/org/onap/portalapp/service/AdminAuthExtensionTest.java
index 6b1066b5e..27db7b8a4 100644
--- a/epsdk-app-onap/src/test/java/org/onap/portalapp/service/AdminAuthExtensionTest.java
+++ b/epsdk-app-onap/src/test/java/org/onap/portalapp/service/AdminAuthExtensionTest.java
@@ -1,3 +1,40 @@
+/*
+ * ============LICENSE_START==========================================
+ * ONAP Portal SDK
+ * ===================================================================
+ * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
+ * ===================================================================
+ *
+ * Unless otherwise specified, all software contained herein is licensed
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this software 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.
+ *
+ * Unless otherwise specified, all documentation contained herein is licensed
+ * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
+ * you may not use this documentation except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://creativecommons.org/licenses/by/4.0/
+ *
+ * Unless required by applicable law or agreed to in writing, documentation
+ * 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============================================
+ *
+ * ECOMP is a trademark and service mark of AT&T Intellectual Property.
+ */
package org.onap.portalapp.service;
import java.util.Set;
diff --git a/pom.xml b/pom.xml
index 93667ce57..9c49c14d8 100644
--- a/pom.xml
+++ b/pom.xml
@@ -7,6 +7,13 @@
<packaging>pom</packaging>
<name>vid</name>
+ <parent>
+ <groupId>org.onap.oparent</groupId>
+ <artifactId>oparent</artifactId>
+ <version>1.2.3</version>
+ <relativePath/>
+ </parent>
+
<profiles>
<!-- DO NOT CHANGE THE *ORDER* IN WHICH THESE PROFILES ARE DEFINED! -->
@@ -222,13 +229,7 @@
<!--Overide versions for latest security fixes-->
<dependency>
<groupId>ch.qos.logback</groupId>
- <artifactId>logback-core</artifactId>
- <version>1.2.3</version>
- </dependency>
- <dependency>
- <groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.2.3</version>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
@@ -243,7 +244,7 @@
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
- <version>4.5.3</version>
+ <version>4.5.7</version>
</dependency>
</dependencies>
</project>
diff --git a/vid-app-common/pom.xml b/vid-app-common/pom.xml
index 6b73d79ca..38b06f1f8 100755
--- a/vid-app-common/pom.xml
+++ b/vid-app-common/pom.xml
@@ -14,6 +14,13 @@
<name>VID Common</name>
<description>VID Common code for opensource version</description>
+ <parent>
+ <groupId>org.onap.oparent</groupId>
+ <artifactId>oparent</artifactId>
+ <version>1.2.3</version>
+ <relativePath/>
+ </parent>
+
<properties>
<encoding>UTF-8</encoding>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -21,7 +28,7 @@
<epsdk.version>2.4.0</epsdk.version>
<springframework.version>4.2.9.RELEASE</springframework.version>
<hibernate.version>4.3.11.Final</hibernate.version>
- <jackson.version>2.9.7</jackson.version>
+ <jackson.version>2.9.8</jackson.version>
<jersey.version>2.27</jersey.version>
<surefire.version>2.22.1</surefire.version>
<sonar.coverage.exclusions>**/webapp/**/*,**/*.js</sonar.coverage.exclusions>
@@ -448,7 +455,6 @@
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
- <version>4.5.6</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
@@ -458,7 +464,7 @@
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpmime</artifactId>
- <version>4.3.6</version>
+ <version>4.5.7</version>
</dependency>
<dependency>
<groupId>com.xebialabs.restito</groupId>
@@ -522,13 +528,7 @@
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
- <artifactId>logback-core</artifactId>
- <version>1.2.3</version>
- </dependency>
- <dependency>
- <groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
- <version>1.2.3</version>
</dependency>
<dependency>
@@ -682,7 +682,6 @@
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
- <version>1.9.3</version>
</dependency>
<dependency>
<groupId>com.googlecode.json-simple</groupId>
@@ -799,7 +798,6 @@
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
- <version>23.0</version>
</dependency>
</dependencies>
</project>
diff --git a/vid-app-common/src/main/java/org/onap/vid/aai/AaiClient.java b/vid-app-common/src/main/java/org/onap/vid/aai/AaiClient.java
index 126fbe8d3..6a8439fee 100644
--- a/vid-app-common/src/main/java/org/onap/vid/aai/AaiClient.java
+++ b/vid-app-common/src/main/java/org/onap/vid/aai/AaiClient.java
@@ -20,8 +20,26 @@
package org.onap.vid.aai;
+import static java.util.Collections.emptyList;
+import static java.util.stream.Collectors.toMap;
+import static org.apache.commons.lang3.ObjectUtils.defaultIfNull;
+import static org.apache.commons.lang3.StringUtils.equalsIgnoreCase;
+import static org.apache.commons.lang3.StringUtils.isEmpty;
+
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.net.URI;
+import java.net.URLEncoder;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.UUID;
+import java.util.function.Function;
+import javax.inject.Inject;
+import javax.ws.rs.WebApplicationException;
+import javax.ws.rs.core.Response;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.HttpStatus;
import org.apache.http.client.utils.URIBuilder;
@@ -32,12 +50,28 @@ import org.json.simple.parser.JSONParser;
import org.onap.portalsdk.core.logging.logic.EELFLoggerDelegate;
import org.onap.vid.aai.exceptions.InvalidAAIResponseException;
import org.onap.vid.aai.model.AaiGetAicZone.AicZones;
-import org.onap.vid.aai.model.*;
-import org.onap.vid.aai.model.AaiGetNetworkCollectionDetails.*;
+import org.onap.vid.aai.model.AaiGetInstanceGroupsByCloudRegion;
+import org.onap.vid.aai.model.AaiGetNetworkCollectionDetails.AaiGetNetworkCollectionDetails;
+import org.onap.vid.aai.model.AaiGetNetworkCollectionDetails.AaiGetNetworkCollectionDetailsHelper;
+import org.onap.vid.aai.model.AaiGetNetworkCollectionDetails.AaiGetRelatedInstanceGroupsByVnfId;
+import org.onap.vid.aai.model.AaiGetNetworkCollectionDetails.CloudRegion;
+import org.onap.vid.aai.model.AaiGetNetworkCollectionDetails.InstanceGroup;
+import org.onap.vid.aai.model.AaiGetNetworkCollectionDetails.Network;
import org.onap.vid.aai.model.AaiGetOperationalEnvironments.OperationalEnvironmentList;
+import org.onap.vid.aai.model.AaiGetPnfResponse;
import org.onap.vid.aai.model.AaiGetPnfs.Pnf;
import org.onap.vid.aai.model.AaiGetServicesRequestModel.GetServicesAAIRespone;
import org.onap.vid.aai.model.AaiGetTenatns.GetTenantsResponse;
+import org.onap.vid.aai.model.CustomQuerySimpleResult;
+import org.onap.vid.aai.model.GetServiceModelsByDistributionStatusResponse;
+import org.onap.vid.aai.model.LogicalLinkResponse;
+import org.onap.vid.aai.model.OwningEntityResponse;
+import org.onap.vid.aai.model.PortDetailsTranslator;
+import org.onap.vid.aai.model.ProjectResponse;
+import org.onap.vid.aai.model.Properties;
+import org.onap.vid.aai.model.ResourceType;
+import org.onap.vid.aai.model.ServiceRelationships;
+import org.onap.vid.aai.model.SimpleResult;
import org.onap.vid.aai.util.AAIRestInterface;
import org.onap.vid.aai.util.CacheProvider;
import org.onap.vid.aai.util.VidObjectMapperType;
@@ -51,23 +85,6 @@ import org.onap.vid.utils.Unchecked;
import org.springframework.http.HttpMethod;
import org.springframework.web.util.UriUtils;
-import javax.inject.Inject;
-import javax.ws.rs.WebApplicationException;
-import javax.ws.rs.core.Response;
-import java.io.IOException;
-import java.io.UnsupportedEncodingException;
-import java.net.URI;
-import java.net.URLEncoder;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.UUID;
-import java.util.function.Function;
-
-import static java.util.Collections.emptyList;
-import static java.util.stream.Collectors.toMap;
-import static org.apache.commons.lang3.ObjectUtils.defaultIfNull;
-
/**
* Created by Oren on 7/4/17.
@@ -233,7 +250,7 @@ public class AaiClient implements AaiClientInterface {
@Override
public boolean isNodeTypeExistsByName(String name, ResourceType type) {
- if (StringUtils.isEmpty(name)) {
+ if (isEmpty(name)) {
throw new GenericUncheckedException("Empty resource-name provided to searchNodeTypeByName; request is rejected as this will cause full resources listing");
}
@@ -697,7 +714,7 @@ public class AaiClient implements AaiClientInterface {
String propKey = checkForNull((String) innerObj.get("property-key"));
String propVal = checkForNull((String) innerObj.get("property-value"));
- if (propKey.equalsIgnoreCase("tenant.tenant-name")) {
+ if (equalsIgnoreCase(propKey, "tenant.tenant-name")) {
tenantNewObj.put("tenantName", propVal);
}
}
@@ -708,11 +725,11 @@ public class AaiClient implements AaiClientInterface {
String rShipKey = checkForNull((String) inner2Obj.get("relationship-key"));
String rShipVal = checkForNull((String) inner2Obj.get("relationship-value"));
- if (rShipKey.equalsIgnoreCase("cloud-region.cloud-owner")) {
+ if (equalsIgnoreCase(rShipKey, "cloud-region.cloud-owner")) {
tenantNewObj.put("cloudOwner", rShipVal);
- } else if (rShipKey.equalsIgnoreCase("cloud-region.cloud-region-id")) {
+ } else if (equalsIgnoreCase(rShipKey, "cloud-region.cloud-region-id")) {
tenantNewObj.put("cloudRegionID", rShipVal);
- } else if (rShipKey.equalsIgnoreCase("tenant.tenant-id")) {
+ } else if (equalsIgnoreCase(rShipKey, "tenant.tenant-id")) {
tenantNewObj.put("tenantID", rShipVal);
}
}
@@ -768,12 +785,12 @@ public class AaiClient implements AaiClientInterface {
@Override
public GetTenantsResponse getHomingDataByVfModule(String vnfInstanceId, String vfModuleId) {
- if (StringUtils.isEmpty(vnfInstanceId)||StringUtils.isEmpty(vfModuleId)){
+ if (isEmpty(vnfInstanceId)|| isEmpty(vfModuleId)){
throw new GenericUncheckedException("Failed to retrieve homing data associated to vfModule from A&AI, VNF InstanceId or VF Module Id is missing.");
}
Response resp = doAaiGet("network/generic-vnfs/generic-vnf/" + vnfInstanceId +"/vf-modules/vf-module/"+ vfModuleId, false);
String responseAsString = parseForTenantsByServiceSubscription("vserver",resp.readEntity(String.class));
- if (responseAsString.equals("")){
+ if (isEmpty(responseAsString)){
throw new GenericUncheckedException( String.format("A&AI has no homing data associated to vfModule '%s' of vnf '%s'", vfModuleId, vnfInstanceId));
}
else {
@@ -822,7 +839,7 @@ public class AaiClient implements AaiClientInterface {
Response resp = doAaiGet(url, false);
String responseAsString = parseForTenantsByServiceSubscription("tenant",resp.readEntity(String.class));
- if (StringUtils.isEmpty(responseAsString)){
+ if (isEmpty(responseAsString)){
throw new ParsingGetTenantsResponseFailure(String.format("A&AI has no LCP Region & Tenants associated to subscriber '%s' and service type '%s'", globalCustomerId, serviceType));
}
else {
diff --git a/vid-app-common/src/main/java/org/onap/vid/aai/AaiClientInterface.java b/vid-app-common/src/main/java/org/onap/vid/aai/AaiClientInterface.java
index fdbe418ea..43be049a6 100644
--- a/vid-app-common/src/main/java/org/onap/vid/aai/AaiClientInterface.java
+++ b/vid-app-common/src/main/java/org/onap/vid/aai/AaiClientInterface.java
@@ -21,21 +21,19 @@
package org.onap.vid.aai;
import com.fasterxml.jackson.databind.JsonNode;
+import java.net.URI;
+import java.util.List;
+import java.util.Map;
+import javax.ws.rs.core.Response;
import org.onap.vid.aai.model.AaiGetOperationalEnvironments.OperationalEnvironmentList;
import org.onap.vid.aai.model.AaiGetPnfs.Pnf;
import org.onap.vid.aai.model.AaiGetTenatns.GetTenantsResponse;
-import org.onap.vid.aai.model.CustomQuerySimpleResult;
import org.onap.vid.aai.model.PortDetailsTranslator;
import org.onap.vid.aai.model.Properties;
import org.onap.vid.aai.model.ResourceType;
import org.onap.vid.model.SubscriberList;
import org.onap.vid.model.probes.ExternalComponentStatus;
-import javax.ws.rs.core.Response;
-import java.net.URI;
-import java.util.List;
-import java.util.Map;
-
/**
* Created by Oren on 7/4/17.
*/
diff --git a/vid-app-common/src/main/java/org/onap/vid/controller/WorkflowsController.java b/vid-app-common/src/main/java/org/onap/vid/controller/WorkflowsController.java
index b8f033c95..a94481b9e 100644
--- a/vid-app-common/src/main/java/org/onap/vid/controller/WorkflowsController.java
+++ b/vid-app-common/src/main/java/org/onap/vid/controller/WorkflowsController.java
@@ -21,10 +21,11 @@
package org.onap.vid.controller;
import java.util.List;
-import org.onap.portalsdk.core.controller.RestrictedBaseController;
+import org.onap.vid.model.LocalWorkflowParameterDefinitions;
import org.onap.vid.model.SOWorkflow;
import org.onap.vid.model.SOWorkflowParameterDefinitions;
-import org.onap.vid.services.ExtWorkflowsService;
+import org.onap.vid.services.ExternalWorkflowsService;
+import org.onap.vid.services.LocalWorkflowsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -34,24 +35,31 @@ import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping(WorkflowsController.WORKFLOWS_MANAGEMENT)
-public class WorkflowsController extends RestrictedBaseController {
+public class WorkflowsController extends VidRestrictedBaseController {
static final String WORKFLOWS_MANAGEMENT = "workflows-management";
- private ExtWorkflowsService extWorkflowsService;
+ private ExternalWorkflowsService externalWorkflowsService;
+ private LocalWorkflowsService localWorkflowsService;
@Autowired
- public WorkflowsController(ExtWorkflowsService extWorkflowsService) {
- this.extWorkflowsService = extWorkflowsService;
+ public WorkflowsController(ExternalWorkflowsService externalWorkflowsService, LocalWorkflowsService localWorkflowsService) {
+ this.externalWorkflowsService = externalWorkflowsService;
+ this.localWorkflowsService = localWorkflowsService;
}
@RequestMapping(value = "workflows", method = RequestMethod.GET)
public List<SOWorkflow> getWorkflows(@RequestParam(value = "vnfName") String vnfName){
- return extWorkflowsService.getWorkflows(vnfName);
+ return externalWorkflowsService.getWorkflows(vnfName);
}
- @RequestMapping(value = "workflow-parameters/{id}", method = RequestMethod.GET)
+ @RequestMapping(value = "remote-workflow-parameters/{id}", method = RequestMethod.GET)
SOWorkflowParameterDefinitions getParameters(@PathVariable Long id) {
- return extWorkflowsService.getWorkflowParameterDefinitions(id);
+ return externalWorkflowsService.getWorkflowParameterDefinitions(id);
+ }
+
+ @RequestMapping(value = "local-workflow-parameters/{name}", method = RequestMethod.GET)
+ LocalWorkflowParameterDefinitions getParameters(@PathVariable String name) {
+ return localWorkflowsService.getWorkflowParameterDefinitions(name);
}
}
diff --git a/vid-app-common/src/main/java/org/onap/vid/model/CategoryParameterOption.java b/vid-app-common/src/main/java/org/onap/vid/model/CategoryParameterOption.java
index 237747933..70f7b5aa2 100644
--- a/vid-app-common/src/main/java/org/onap/vid/model/CategoryParameterOption.java
+++ b/vid-app-common/src/main/java/org/onap/vid/model/CategoryParameterOption.java
@@ -20,12 +20,19 @@
package org.onap.vid.model;
-import org.onap.portalsdk.core.domain.support.DomainVo;
-
-import javax.persistence.*;
import java.io.Serializable;
import java.util.Date;
import java.util.Set;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import org.onap.portalsdk.core.domain.support.DomainVo;
@Entity
@Table(name = "vid_category_parameter_option")
@@ -124,24 +131,39 @@ public class CategoryParameterOption extends DomainVo {
@Override
public boolean equals(Object o) {
- if (this == o) return true;
- if (o == null || getClass() != o.getClass()) return false;
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
CategoryParameterOption that = (CategoryParameterOption) o;
- if (getAppId() != null ? !getAppId().equals(that.getAppId()) : that.getAppId() != null) return false;
- if (getName() != null ? !getName().equals(that.getName()) : that.getName() != null) return false;
- return getCategoryParameter() != null ? getCategoryParameter().equals(that.getCategoryParameter()) : that.getCategoryParameter() == null;
+ if (getAppId() != null ? !getAppId().equals(that.getAppId()) : that.getAppId() != null) {
+ return false;
+ }
+ if (getName() != null ? !getName().equals(that.getName()) : that.getName() != null) {
+ return false;
+ }
+ return getCategoryParameter() != null ? getCategoryParameter().equals(that.getCategoryParameter())
+ : that.getCategoryParameter() == null;
}
@Override
public int hashCode() {
int result = getAppId() != null ? getAppId().hashCode() : 0;
result = 31 * result + (getName() != null ? getName().hashCode() : 0);
- result = 31 * result + (getCategoryParameter() != null ? getCategoryParameter().hashCode() : 0);
+ result = 31 * result + hashCodeOfParentCategoryParameter();
return result;
}
+ private int hashCodeOfParentCategoryParameter() {
+ // Don't use getCategoryParameter's hashCode, as it might loop back to self's hasCode
+ return (getCategoryParameter() == null || getCategoryParameter().getId() == null)
+ ? 0 : getCategoryParameter().getId().hashCode();
+ }
+
@Override
public String toString() {
return "CategoryParameterOption{" +
diff --git a/vid-app-common/src/main/java/org/onap/vid/model/SOWorkflows.kt b/vid-app-common/src/main/java/org/onap/vid/model/SOWorkflows.kt
index 9fbae0612..b88c3f6f6 100644
--- a/vid-app-common/src/main/java/org/onap/vid/model/SOWorkflows.kt
+++ b/vid-app-common/src/main/java/org/onap/vid/model/SOWorkflows.kt
@@ -2,14 +2,14 @@
* ============LICENSE_START=======================================================
* VID
* ================================================================================
- * Copyright (C) 2017 - 2019 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019 Nokia 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.
@@ -20,27 +20,62 @@
package org.onap.vid.model
-data class SOWorkflow constructor(val id: Long, val name: String) {
+data class SOWorkflow constructor(
+ val id: Long,
+ val name: String) {
fun clone(): SOWorkflow {
return copy()
}
}
-data class SOWorkflows @JvmOverloads constructor(val workflows: List<SOWorkflow> = emptyList()) {
+data class SOWorkflows @JvmOverloads constructor(
+ val workflows: List<SOWorkflow> = emptyList()) {
fun clone(): SOWorkflows {
return copy(workflows.toMutableList())
}
}
-enum class SOWorkflowType(val type: String) {
+enum class SOWorkflowType(
+ val type: String) {
STRING("STRING")
}
-data class SOWorkflowParameterDefinition constructor(val id: Long, val name: String, val pattern: String,
- val type: SOWorkflowType, val required: Boolean)
+enum class LocalWorkflowType(
+ val type: String) {
+ STRING("STRING"),
+ FILE("FILE")
+}
+
+data class SOWorkflowParameterDefinition constructor(
+ val id: Long,
+ val name: String,
+ val pattern: String,
+ val type: SOWorkflowType,
+ val required: Boolean)
-data class SOWorkflowParameterDefinitions constructor(val parameterDefinitions: List<SOWorkflowParameterDefinition> = emptyList()) {
+data class SOWorkflowParameterDefinitions constructor(
+ val parameterDefinitions: List<SOWorkflowParameterDefinition> = emptyList()) {
fun clone(): SOWorkflowParameterDefinitions {
return copy(parameterDefinitions.toMutableList())
}
}
+
+data class LocalWorkflowParameterDefinition @JvmOverloads constructor(
+ val id: Long,
+ val name: String,
+ val required: Boolean,
+ val type: LocalWorkflowType,
+ val pattern: String? = null,
+ val msgOnPatternError: String? = null,
+ val msgOnContentError: String? = null,
+ val acceptableFileType: String? = null
+)
+
+data class LocalWorkflowParameterDefinitions constructor(
+ val parameterDefinitions: List<LocalWorkflowParameterDefinition> = emptyList()
+) {
+ fun clone(): LocalWorkflowParameterDefinitions {
+ return copy(parameterDefinitions.toMutableList())
+ }
+}
+
diff --git a/vid-app-common/src/main/java/org/onap/vid/properties/Features.java b/vid-app-common/src/main/java/org/onap/vid/properties/Features.java
index dfe3185b2..1c68e8292 100644
--- a/vid-app-common/src/main/java/org/onap/vid/properties/Features.java
+++ b/vid-app-common/src/main/java/org/onap/vid/properties/Features.java
@@ -62,6 +62,7 @@ public enum Features implements Feature {
FLAG_1902_NEW_VIEW_EDIT,
FLAG_EXP_USE_DEFAULT_HOST_NAME_VERIFIER,
FLAG_1902_VNF_GROUPING,
+ FLAG_HANDLE_SO_WORKFLOWS
;
public boolean isActive() {
diff --git a/vid-app-common/src/main/java/org/onap/vid/services/ExtWorkflowsService.java b/vid-app-common/src/main/java/org/onap/vid/services/ExternalWorkflowsService.java
index a4450ca01..da909a54d 100644
--- a/vid-app-common/src/main/java/org/onap/vid/services/ExtWorkflowsService.java
+++ b/vid-app-common/src/main/java/org/onap/vid/services/ExternalWorkflowsService.java
@@ -24,7 +24,7 @@ import java.util.List;
import org.onap.vid.model.SOWorkflow;
import org.onap.vid.model.SOWorkflowParameterDefinitions;
-public interface ExtWorkflowsService {
+public interface ExternalWorkflowsService {
List<SOWorkflow> getWorkflows(String vnfName);
SOWorkflowParameterDefinitions getWorkflowParameterDefinitions(Long workflowId);
diff --git a/vid-app-common/src/main/java/org/onap/vid/services/ExtWorkflowsServiceImpl.java b/vid-app-common/src/main/java/org/onap/vid/services/ExternalWorkflowsServiceImpl.java
index 61ed2da67..1da03f0ac 100644
--- a/vid-app-common/src/main/java/org/onap/vid/services/ExtWorkflowsServiceImpl.java
+++ b/vid-app-common/src/main/java/org/onap/vid/services/ExternalWorkflowsServiceImpl.java
@@ -30,12 +30,12 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
-public class ExtWorkflowsServiceImpl implements ExtWorkflowsService {
+public class ExternalWorkflowsServiceImpl implements ExternalWorkflowsService {
private MockedWorkflowsRestClient mockedWorkflowsRestClient;
@Autowired
- public ExtWorkflowsServiceImpl(MockedWorkflowsRestClient mockedWorkflowsRestClient) {
+ public ExternalWorkflowsServiceImpl(MockedWorkflowsRestClient mockedWorkflowsRestClient) {
this.mockedWorkflowsRestClient = mockedWorkflowsRestClient;
}
diff --git a/vid-app-common/src/main/java/org/onap/vid/services/LocalWorkflowsService.java b/vid-app-common/src/main/java/org/onap/vid/services/LocalWorkflowsService.java
new file mode 100644
index 000000000..b0674f0e3
--- /dev/null
+++ b/vid-app-common/src/main/java/org/onap/vid/services/LocalWorkflowsService.java
@@ -0,0 +1,26 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * VID
+ * ================================================================================
+ * Copyright (C) 2019 Nokia 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=========================================================
+ */
+package org.onap.vid.services;
+
+import org.onap.vid.model.LocalWorkflowParameterDefinitions;
+
+public interface LocalWorkflowsService {
+ LocalWorkflowParameterDefinitions getWorkflowParameterDefinitions(String workflowName);
+}
diff --git a/vid-app-common/src/main/java/org/onap/vid/services/LocalWorkflowsServiceImpl.java b/vid-app-common/src/main/java/org/onap/vid/services/LocalWorkflowsServiceImpl.java
new file mode 100644
index 000000000..733d275d8
--- /dev/null
+++ b/vid-app-common/src/main/java/org/onap/vid/services/LocalWorkflowsServiceImpl.java
@@ -0,0 +1,58 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * VID
+ * ================================================================================
+ * Copyright (C) 2019 Nokia 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=========================================================
+ */
+package org.onap.vid.services;
+
+import com.google.common.collect.ImmutableList;
+import com.google.common.collect.ImmutableMap;
+import java.util.Map;
+import org.onap.vid.model.LocalWorkflowParameterDefinition;
+import org.onap.vid.model.LocalWorkflowParameterDefinitions;
+import org.onap.vid.model.LocalWorkflowType;
+import org.springframework.stereotype.Service;
+
+@Service
+public class LocalWorkflowsServiceImpl implements LocalWorkflowsService {
+
+ Map<String, LocalWorkflowParameterDefinitions> WORKFLOWS_WITH_PARAMETERS = ImmutableMap.<String, LocalWorkflowParameterDefinitions>builder()
+ .put("VNF Scale Out", new LocalWorkflowParameterDefinitions(
+ ImmutableList.of(
+ new LocalWorkflowParameterDefinition(1, "Configuration Parameters", true, LocalWorkflowType.STRING,".*")
+ )
+ ))
+ .put("VNF In Place Software Update", new LocalWorkflowParameterDefinitions(
+ ImmutableList.of(
+ new LocalWorkflowParameterDefinition(2, "Operations timeout",true, LocalWorkflowType.STRING,"[0-9]+"),
+ new LocalWorkflowParameterDefinition(3, "Existing software version", true, LocalWorkflowType.STRING, "[-a-zA-Z0-9.]+"),
+ new LocalWorkflowParameterDefinition(4, "New software version", true, LocalWorkflowType.STRING, "[-a-zA-Z0-9.]+")
+ )
+ ))
+ .put("VNF Config Update", new LocalWorkflowParameterDefinitions(
+ ImmutableList.of(
+ new LocalWorkflowParameterDefinition(5, "Attach configuration file", true, LocalWorkflowType.FILE, ".*", "Invalid file type. Please select a file with a CSV extension.", "Invalid file structure.", ".csv")
+ )
+ ))
+ .build();
+
+ @Override
+ public LocalWorkflowParameterDefinitions getWorkflowParameterDefinitions(String workflowName) {
+ return WORKFLOWS_WITH_PARAMETERS.get(workflowName);
+ }
+
+}
diff --git a/vid-app-common/src/main/webapp/WEB-INF/conf/dev.features.properties b/vid-app-common/src/main/webapp/WEB-INF/conf/dev.features.properties
index d82b043c5..8ba148465 100644
--- a/vid-app-common/src/main/webapp/WEB-INF/conf/dev.features.properties
+++ b/vid-app-common/src/main/webapp/WEB-INF/conf/dev.features.properties
@@ -8,6 +8,7 @@ FLAG_COLLECTION_RESOURCE_SUPPORT = true
FLAG_NETWORK_TO_ASYNC_INSTANTIATION = false
FLAG_SERVICE_MODEL_CACHE = true
FLAG_SHOW_ASSIGNMENTS = true
+FLAG_HANDLE_SO_WORKFLOWS = true
FLAG_SHOW_VERIFY_SERVICE = true
FLAG_DUPLICATE_VNF = true
diff --git a/vid-app-common/src/main/webapp/WEB-INF/conf/features.properties b/vid-app-common/src/main/webapp/WEB-INF/conf/features.properties
index 36f607f62..4cf42f235 100644
--- a/vid-app-common/src/main/webapp/WEB-INF/conf/features.properties
+++ b/vid-app-common/src/main/webapp/WEB-INF/conf/features.properties
@@ -20,11 +20,12 @@ FLAG_SHOW_ASSIGNMENTS = true
FLAG_SHOW_VERIFY_SERVICE = false
FLAG_FABRIC_CONFIGURATION_ASSIGNMENTS = true
FLAG_PRESENT_PROVIDER_NETWORKS_ASSOCIATIONS = true
-FLAG_1810_CR_ADD_CLOUD_OWNER_TO_MSO_REQUEST=true
-FLAG_1810_CR_LET_SELECTING_COLLECTOR_TYPE_UNCONDITIONALLY=true
+FLAG_1810_CR_ADD_CLOUD_OWNER_TO_MSO_REQUEST = true
+FLAG_1810_CR_LET_SELECTING_COLLECTOR_TYPE_UNCONDITIONALLY = true
FLAG_1810_CR_SOFT_DELETE_ALACARTE_VF_MODULE = true
FLAG_1810_AAI_LOCAL_CACHE = true
FLAG_EXP_USE_DEFAULT_HOST_NAME_VERIFIER = false
+FLAG_HANDLE_SO_WORKFLOWS = false
# Modern UI (Drawing-Board; View/Edit)
# - - - - - - - - - - - - - - - - - -
diff --git a/vid-app-common/src/main/webapp/app/vid/scripts/constants/componentConstants.js b/vid-app-common/src/main/webapp/app/vid/scripts/constants/componentConstants.js
index 4ac5f85ac..fc3d8f792 100755
--- a/vid-app-common/src/main/webapp/app/vid/scripts/constants/componentConstants.js
+++ b/vid-app-common/src/main/webapp/app/vid/scripts/constants/componentConstants.js
@@ -116,7 +116,8 @@ appDS2
CHANGE_MANAGEMENT_OPERATION_NO_SCHEDULER: "change-management/workflow/@vnfName",
GET_WORKFLOW: "change-management/get_vnf_workflow_relation",
GET_SO_WORKFLOWS: "workflows-management/workflows",
- GET_SO_WORKFLOW_PARAMETER: "workflows-management/workflow-parameters/@workflowID",
+ GET_SO_WORKFLOW_PARAMETER: "workflows-management/remote-workflow-parameters/@workflowID",
+ GET_LOCAL_WORKFLOW_PARAMETER: "workflows-management/local-workflow-parameters/@workflowName",
GET_MSO_WORKFLOWS: "change-management/mso",
GET_SCHEDULER_CHANGE_MANAGEMENTS: "change-management/scheduler",
CANCEL_SCHEDULE_REQUEST: "change-management/scheduler/schedules",
@@ -256,7 +257,8 @@ appDS2
FLAG_PRESENT_PROVIDER_NETWORKS_ASSOCIATIONS: "FLAG_PRESENT_PROVIDER_NETWORKS_ASSOCIATIONS",
FLAG_1810_CR_ADD_CLOUD_OWNER_TO_MSO_REQUEST: "FLAG_1810_CR_ADD_CLOUD_OWNER_TO_MSO_REQUEST",
FLAG_1810_CR_LET_SELECTING_COLLECTOR_TYPE_UNCONDITIONALLY: "FLAG_1810_CR_LET_SELECTING_COLLECTOR_TYPE_UNCONDITIONALLY",
- FLAG_1810_CR_SOFT_DELETE_ALACARTE_VF_MODULE: "FLAG_1810_CR_SOFT_DELETE_ALACARTE_VF_MODULE"
+ FLAG_1810_CR_SOFT_DELETE_ALACARTE_VF_MODULE: "FLAG_1810_CR_SOFT_DELETE_ALACARTE_VF_MODULE",
+ FLAG_HANDLE_SO_WORKFLOWS: "FLAG_HANDLE_SO_WORKFLOWS"
}
};
diff --git a/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.controller.js b/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.controller.js
index e525f0f5c..88caef29e 100644
--- a/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.controller.js
+++ b/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.controller.js
@@ -28,8 +28,6 @@
var vm = this;
vm.hasScheduler = !!VIDCONFIGURATION.SCHEDULER_PORTAL_URL;
- vm.configUpdatePatternError = "Invalid file type. Please select a file with a CSV extension.";
- vm.configUpdateContentError = "Invalid file structure.";
vm.wizardStep = 1;
vm.nextStep = function(){
@@ -202,7 +200,7 @@
}]
})
.then(function (configUpdateResponse) {
- vm.changeManagement.configUpdateFile = configUpdateResponse && JSON.parse(configUpdateResponse.data).payload;
+ vm.getInternalWorkFlowParameter("VNF Config Update", "FILE", "Attach configuration file").value = configUpdateResponse && JSON.parse(configUpdateResponse.data).payload;
defer.resolve(true);
})
.catch(function (error) {
@@ -218,7 +216,6 @@
var result = {};
result.requestType = changeManagement.workflow;
var workflowType = changeManagement.workflow;
- var configurationParameters = changeManagement.configurationParameters;
result.requestDetails = [];
_.forEach(changeManagement.vnfNames, function (vnf) {
@@ -246,51 +243,50 @@
}
}else if(workflowType=="VNF In Place Software Update"){
var payloadObj = {
- 'existing_software_version':changeManagement.existingSoftwareVersion,
- 'new_software_version':changeManagement.newSoftwareVersion,
- 'operations_timeout':changeManagement.operationTimeout
+ 'existing_software_version':vm.getInternalWorkFlowParameter(workflowType, 'STRING', 'Existing software version').value,
+ 'new_software_version':vm.getInternalWorkFlowParameter(workflowType, 'STRING', 'New software version').value,
+ 'operations_timeout':vm.getInternalWorkFlowParameter(workflowType, 'STRING', 'Operations timeout').value
};
requestParametersData = {
payload: JSON.stringify(payloadObj)
}
}else if(workflowType=="VNF Config Update"){
requestParametersData = {
- payload: changeManagement.configUpdateFile
+ payload: vm.getInternalWorkFlowParameter("VNF Config Update", "FILE", "Attach configuration file").value
}
- }else if(workflowType=="VNF Scale Out"){
- if(!moduleToScale) return null;
-
- if(moduleToScale.userParams) {
- requestParametersData = {
- userParams: moduleToScale.userParams
- //,usePreload: true
- }
- }else{
- requestParametersData = {
- userParams: []
- //,usePreload: false
- }
- }
- }
+ }else if(workflowType=="VNF Scale Out"){
+ if(!moduleToScale) return null;
+
+ if(moduleToScale.userParams) {
+ requestParametersData = {
+ userParams: moduleToScale.userParams
+ //,usePreload: true
+ }
+ }else{
+ requestParametersData = {
+ userParams: []
+ //,usePreload: false
+ }
+ }
+ }
$log.info('SchedulerWidgetCtrl:extractChangeManagementCallbackDataStr info:: workflowType '+ workflowType);
$log.info('SchedulerWidgetCtrl:extractChangeManagementCallbackDataStr info:: requestParametersData '+ requestParametersData);
}else if(workflowType=="VNF In Place Software Update"){
var payloadObj = {
- 'existing_software_version':changeManagement.existingSoftwareVersion,
- 'new_software_version':changeManagement.newSoftwareVersion,
- 'operations_timeout':changeManagement.operationTimeout
+ 'existing_software_version':vm.getInternalWorkFlowParameter(workflowType, 'STRING', 'Existing software version').value,
+ 'new_software_version':vm.getInternalWorkFlowParameter(workflowType, 'STRING', 'New software version').value,
+ 'operations_timeout':vm.getInternalWorkFlowParameter(workflowType, 'STRING', 'Operations timeout').value
};
requestParametersData = {
payload: JSON.stringify(payloadObj)
}
}else if(workflowType=="VNF Config Update"){
requestParametersData = {
- payload: changeManagement.configUpdateFile
+ payload: vm.getInternalWorkFlowParameter("VNF Config Update", "FILE", "Attach configuration file").value
}
}
-
var data;
if(workflowType=="VNF Scale Out") {
data = {
@@ -309,7 +305,7 @@
requestInfo: requestInfoData,
relatedInstanceList: [],
requestParameters:requestParametersData,
- configurationParameters: JSON.parse(configurationParameters)
+ configurationParameters: JSON.parse(vm.getInternalWorkFlowParameter("VNF Scale Out", "STRING", "Configuration Parameters").value)
};
requestInfoData.instanceName = vnf.name + "_" + (moduleToScale.currentCount + 1);
}else{
@@ -638,15 +634,20 @@
};
vm.loadWorkFlows = function () {
- // Should be corrected when VID-397 will be closed. At the moment there is a need
- // to merge local and remote workflows not to broke current functionality.
- return vm.loadLocalWorkFlows()
- .then(vm.loadRemoteWorkFlows)
- .then(function () {
- vm.workflows = vm.localWorkflows.concat(vm.remoteWorkflows.map(item => item.name));
- }).then(function () {
- vm.loadRemoteWorkFlowsParameters();
- });
+ if (featureFlags.isOn(COMPONENT.FEATURE_FLAGS.FLAG_HANDLE_SO_WORKFLOWS)) {
+ return vm.loadRemoteWorkFlows()
+ .then(function () {
+ vm.workflows = vm.remoteWorkflows.map(item => item.name);
+ }).then(function () {
+ vm.loadRemoteWorkFlowsParameters();
+ });
+ }else{
+ return vm.loadLocalWorkFlows()
+ .then(vm.loadLocalWorkFlowsParameters)
+ .then(function () {
+ vm.workflows = vm.localWorkflows;
+ })
+ }
};
vm.loadLocalWorkFlows = function () {
@@ -668,6 +669,28 @@
});
};
+ vm.loadLocalWorkFlowsParameters = function () {
+ vm.localWorkflowsParameters = new Map();
+ vm.localWorkflows.forEach(function(workflow) {
+ vm.loadLocalWorkFlowParameters(workflow);
+ });
+ };
+
+ vm.loadLocalWorkFlowParameters = function (workflow) {
+ changeManagementService.getLocalWorkflowParameter(workflow)
+ .then(function (response) {
+ let fileParameters = response.data.parameterDefinitions.filter(item => item.type === 'FILE');
+ let textParameters = response.data.parameterDefinitions.filter(item => item.type === 'STRING');
+ let parameters = new Map();
+ parameters.set('FILE', fileParameters);
+ parameters.set('STRING', textParameters);
+ vm.localWorkflowsParameters.set(workflow, parameters);
+ })
+ .catch(function (error) {
+ $log.error(error);
+ });
+ };
+
vm.loadRemoteWorkFlowsParameters = function () {
vm.remoteWorkflowsParameters = new Map();
vm.remoteWorkflows.forEach(function(workflow) {
@@ -692,6 +715,19 @@
return [];
};
+ vm.getInternalWorkFlowParameters = function (workflow, type) {
+ if (workflow && vm.localWorkflowsParameters.has(workflow) && vm.localWorkflowsParameters.get(workflow).has(type)) {
+ return vm.localWorkflowsParameters.get(workflow).get(type)
+ }
+ return [];
+ };
+
+ vm.getInternalWorkFlowParameter = function (workflow, type, parameterName) {
+ if (workflow && vm.localWorkflowsParameters.has(workflow) && vm.localWorkflowsParameters.get(workflow).has(type)) {
+ return vm.localWorkflowsParameters.get(workflow).get(type).filter(parameter => parameter.name === parameterName)[0]
+ }
+ };
+
//Must be $scope because we bind to the onchange of the html (cannot attached to vm variable).
$scope.selectFileForVNFName = function (fileInput) {
if (fileInput && fileInput.id) {
diff --git a/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.controller.test.js b/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.controller.test.js
index c271b7505..9810c0013 100644
--- a/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.controller.test.js
+++ b/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.controller.test.js
@@ -25,6 +25,8 @@ describe('Testing workFlows from SO', () => {
let $notNeeded;
let $controller;
let $changeManagementService;
+ let $featureFlags;
+
beforeEach(
angular.mock.module('app')
);
@@ -38,6 +40,10 @@ describe('Testing workFlows from SO', () => {
// mock q
$q = jestMock.fn();
$defer = jestMock.fn();
+ $flags = jestMock.fn();
+ $flags.FEATURE_FLAGS = {FLAG_HANDLE_SO_WORKFLOWS: ''};
+ $featureFlags = jestMock.fn();
+ $featureFlags.isOn = jestMock.fn(() => true);
$q.defer = jestMock.fn(() => $defer);
$defer.promise = Promise.resolve({});
// mock AaiService
@@ -53,10 +59,10 @@ describe('Testing workFlows from SO', () => {
Upload: $notNeeded,
$log: $notNeeded,
_: $notNeeded,
- COMPONENT: $notNeeded,
+ COMPONENT: $flags,
VIDCONFIGURATION: $notNeeded,
DataService: $notNeeded,
- featureFlags: $notNeeded,
+ featureFlags: $featureFlags,
$scope: $notNeeded,
});
}));
@@ -77,19 +83,33 @@ describe('Testing workFlows from SO', () => {
);
});
- test('Verify load workflows will call load from SO and join workflow lists', () => {
+ test('Verify load workflows wont load parameters from local service', () => {
// given
let getWorkflowsStub = Promise.resolve({"data": {"workflows": ["workflow 0"]}});
+ let getLocalWorkflowsParametersStub = Promise.resolve({"data":{
+ "parameterDefinitions": [
+ {
+ "id": 1,
+ "name": "Configuration Parameters",
+ "required": true,
+ "type": "STRING",
+ "pattern": ".*",
+ "msgOnPatternError": null,
+ "msgOnContentError": null,
+ "acceptableFileType": null
+ }
+ ],
+ }});
let getSOWorkflowsPromiseStub = Promise.resolve({"data": [{"id": "1", "name": "workflow 1"}, {"id": "2", "name": "workflow 2"}]});
let getSOWorkflowsParametersPromiseStub = Promise.resolve({"data":{"parameterDefinitions": []}});
$controller.changeManagement.vnfNames = [{name: 'test1'}, {name: "test2"}];
$changeManagementService.getWorkflows = () => getWorkflowsStub;
+ $changeManagementService.getLocalWorkflowParameter = () => getLocalWorkflowsParametersStub;
$changeManagementService.getSOWorkflows = () => getSOWorkflowsPromiseStub;
$changeManagementService.getSOWorkflowParameter = () => getSOWorkflowsParametersPromiseStub;
// when
return $controller.loadWorkFlows().then(() => {
- expect($controller.workflows).toContain('workflow 0');
expect($controller.workflows).toContain('workflow 1');
expect($controller.workflows).toContain('workflow 2');
});
@@ -98,6 +118,7 @@ describe('Testing workFlows from SO', () => {
test('Verify load workflows will call load workflows parameters from SO', () => {
// given
let getWorkflowsStub = Promise.resolve({"data": {"workflows": ["workflow 0"]}});
+ let getLocalWorkflowsParametersStub = Promise.resolve({"data": {}});
let getSOWorkflowsPromiseStub = Promise.resolve({"data": [{"id": "1", "name": "workflow 0"}]});
let getSOWorkflowsParametersPromiseStub = Promise.resolve({"data":{"parameterDefinitions": [
{"id": 1, "name": "parameter 1", "required": true, "type": "STRING", "pattern": "[0-9]*"},
@@ -106,6 +127,7 @@ describe('Testing workFlows from SO', () => {
$controller.changeManagement.vnfNames = [{name: 'test1'}, {name: "test2"}];
$changeManagementService.getWorkflows = () => getWorkflowsStub;
+ $changeManagementService.getLocalWorkflowParameter = () => getLocalWorkflowsParametersStub;
$changeManagementService.getSOWorkflows = () => getSOWorkflowsPromiseStub;
$changeManagementService.getSOWorkflowParameter = () => getSOWorkflowsParametersPromiseStub;
// when
@@ -118,19 +140,187 @@ describe('Testing workFlows from SO', () => {
});
});
- test('Verify broken SO workflows wont change content of local workflows', () => {
+ test('Verify load workflows wont load workflows parameters from SO if feature flag is disabled', () => {
// given
+ $featureFlags.isOn = jestMock.fn(() => false);
let getWorkflowsStub = Promise.resolve({"data": {"workflows": ["workflow 0"]}});
- let getSOWorkflowsPromiseStub = Promise.reject(new Error("Broken SO workflows service."));
+ let getLocalWorkflowsParametersStub = Promise.resolve({"data": {}});
+ let getSOWorkflowsPromiseStub = Promise.resolve({"data": [{"id": "1", "name": "workflow 0"}]});
+ let getSOWorkflowsParametersPromiseStub = Promise.resolve({"data":{"parameterDefinitions": [
+ {"id": 1, "name": "parameter 1", "required": true, "type": "STRING", "pattern": "[0-9]*"},
+ {"id": 2, "name": "parameter 2", "required": true, "type": "STRING", "pattern": ".*"},
+ {"id": 3, "name": "parameter 3", "required": false, "type": "STRING", "pattern": "[0-9]*"}]}});
- $controller.changeManagement.vnfNames = "any";
+ $controller.changeManagement.vnfNames = [{name: 'test1'}, {name: "test2"}];
$changeManagementService.getWorkflows = () => getWorkflowsStub;
+ $changeManagementService.getLocalWorkflowParameter = () => getLocalWorkflowsParametersStub;
+ $changeManagementService.getSOWorkflows = () => getSOWorkflowsPromiseStub;
+ $changeManagementService.getSOWorkflowParameter = () => getSOWorkflowsParametersPromiseStub;
+ // when
+ return $controller.loadWorkFlows()
+ .then(() => {
+ expect($controller.workflows).toEqual(["workflow 0"]);
+ expect($controller.remoteWorkflowsParameters).toEqual(undefined);
+ });
+ });
+
+ test('Verify load workflows will call load workflows parameters from local service', () => {
+ // given
+ $featureFlags.isOn = jestMock.fn(() => false);
+ let getWorkflowsStub = Promise.resolve({"data": {"workflows": ["VNF Scale Out"]}});
+ let getLocalWorkflowsParametersStub = Promise.resolve({"data":{
+ "parameterDefinitions": [
+ {
+ "id": 1,
+ "name": "Configuration Parameters",
+ "required": true,
+ "type": "STRING",
+ "pattern": ".*",
+ "msgOnPatternError": null,
+ "msgOnContentError": null,
+ "acceptableFileType": null
+ }
+ ],
+ }});
+
+ $controller.changeManagement.vnfNames = [{name: 'test1'}];
+ $changeManagementService.getWorkflows = () => getWorkflowsStub;
+ $changeManagementService.getLocalWorkflowParameter = () => getLocalWorkflowsParametersStub;
+ // when
+
+ let result = new Map();
+ const scaleOutResult = new Map();
+ scaleOutResult.set("FILE", []);
+ scaleOutResult.set("STRING", [
+ {
+ "acceptableFileType": null,
+ "id": 1,
+ "msgOnContentError": null,
+ "msgOnPatternError": null,
+ "name": "Configuration Parameters",
+ "pattern": ".*",
+ "required": true,
+ "type": "STRING",
+ }
+ ]);
+ result.set("VNF Scale Out", scaleOutResult);
+
+ return $controller.loadWorkFlows()
+ .then(() => {
+ expect($controller.localWorkflowsParameters).toEqual(result);
+ });
+ });
+
+ test('Verify broken SO workflows will return empty list of workflows', () => {
+ // given
+ let getSOWorkflowsPromiseStub = Promise.reject(new Error("Broken SO workflows service."));
+
+ $controller.changeManagement.vnfNames = [{name:"any"}];
$changeManagementService.getSOWorkflows = () => getSOWorkflowsPromiseStub;
// when
$controller.loadWorkFlows()
.then(() => {
- expect($controller.workflows).toEqual(['workflow 0']);
+ expect($controller.workflows).toEqual([]);
});
});
-});
+ test('Verify get internal workflow parameters should return an empty list if not such workflow exist', () => {
+ // given
+ $featureFlags.isOn = jestMock.fn(() => false);
+ let getWorkflowsStub = Promise.resolve({"data": {"workflows": ["VNF Scale Out"]}});
+ let getLocalWorkflowsParametersStub = Promise.resolve({"data":{
+ "parameterDefinitions": [
+ {
+ "id": 1,
+ "name": "Configuration Parameters",
+ "required": true,
+ "type": "STRING",
+ "pattern": ".*",
+ "msgOnPatternError": null,
+ "msgOnContentError": null,
+ "acceptableFileType": null
+ }
+ ],
+ }});
+
+ $controller.changeManagement.vnfNames = [{name: 'test1'}];
+ $changeManagementService.getWorkflows = () => getWorkflowsStub;
+ $changeManagementService.getLocalWorkflowParameter = () => getLocalWorkflowsParametersStub;
+ // when
+ return $controller.loadWorkFlows()
+ .then(() => {
+ let internalWorkFlowParameters = $controller.getInternalWorkFlowParameters("NON-EXISTENT WF", "STRING");
+ expect(internalWorkFlowParameters).toEqual([]);
+ });
+ });
+
+ test('Verify get internal workflow parameters should return an empty list if not such type exist', () => {
+ // given
+ $featureFlags.isOn = jestMock.fn(() => false);
+ let getWorkflowsStub = Promise.resolve({"data": {"workflows": ["VNF Scale Out"]}});
+ let getLocalWorkflowsParametersStub = Promise.resolve({"data":{
+ "parameterDefinitions": [
+ {
+ "id": 1,
+ "name": "Configuration Parameters",
+ "required": true,
+ "type": "STRING",
+ "pattern": ".*",
+ "msgOnPatternError": null,
+ "msgOnContentError": null,
+ "acceptableFileType": null
+ }
+ ],
+ }});
+
+ $controller.changeManagement.vnfNames = [{name: 'test1'}];
+ $changeManagementService.getWorkflows = () => getWorkflowsStub;
+ $changeManagementService.getLocalWorkflowParameter = () => getLocalWorkflowsParametersStub;
+ // when
+ return $controller.loadWorkFlows()
+ .then(() => {
+ let internalWorkFlowParameters = $controller.getInternalWorkFlowParameters("VNF Scale Out", "FILE");
+ expect(internalWorkFlowParameters).toEqual([]);
+ });
+ });
+
+ test('Verify get internal workflow parameters should return a list if such workflow and type exist', () => {
+ // given
+ $featureFlags.isOn = jestMock.fn(() => false);
+ let getWorkflowsStub = Promise.resolve({"data": {"workflows": ["VNF Scale Out"]}});
+ let getLocalWorkflowsParametersStub = Promise.resolve({"data":{
+ "parameterDefinitions": [
+ {
+ "id": 1,
+ "name": "Configuration Parameters",
+ "required": true,
+ "type": "STRING",
+ "pattern": ".*",
+ "msgOnPatternError": null,
+ "msgOnContentError": null,
+ "acceptableFileType": null
+ }
+ ],
+ }});
+ $controller.changeManagement.vnfNames = [{name: 'test1'}];
+ $changeManagementService.getWorkflows = () => getWorkflowsStub;
+ $changeManagementService.getLocalWorkflowParameter = () => getLocalWorkflowsParametersStub;
+
+ let result = [{
+ "acceptableFileType": null,
+ "id": 1,
+ "msgOnContentError": null,
+ "msgOnPatternError": null,
+ "name": "Configuration Parameters",
+ "pattern": ".*",
+ "required": true,
+ "type": "STRING",
+ }];
+ // when
+ return $controller.loadWorkFlows()
+ .then(() => {
+ let internalWorkFlowParameters = $controller.getInternalWorkFlowParameters("VNF Scale Out", "STRING");
+ expect(internalWorkFlowParameters).toEqual(result);
+ });
+ });
+});
diff --git a/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.html b/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.html
index 2cf879001..9fb978c42 100644
--- a/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.html
+++ b/vid-app-common/src/main/webapp/app/vid/scripts/modals/new-change-management/new-change-management.html
@@ -78,38 +78,26 @@
<option value="" disabled>Select workflow</option>
</select>
</div>
- <div class="form-group" ng-if="vm.isScaleOut()">
- <label class="control-label">Configuration Parameters</label>
- <input type="text" name="configurationParameters" ng-model="vm.changeManagement.configurationParameters" id="configuration-parameters" required>
- </div>
- <div class="form-group" ng-if="vm.isConfigUpdate()">
- <label class="control-label">Attach configuration file</label>
+
+ <div class="form-group" ng-if="vm.changeManagement.workflow" ng-repeat="item in vm.getInternalWorkFlowParameters(vm.changeManagement.workflow, 'FILE')">
+ <label class="control-label">{{item.name}}</label>
<div class="file-wrapper">
- <input id="config-update-input" class="file-input" type="file" ngf-select ng-model="vm.configUpdateFile" ngf-validate-async-fn="vm.uploadConfigFile($file)" name="configUpdateFile"
- accept=".csv" ngf-pattern=".csv" required> </input>
- <label id="config-update-label" class="file-input-label">{{vm.configUpdateFile&&vm.configUpdateFile.name||"Select File"}} </label>
- <label for="config-update-input"><span class="icon-browse"></span></label>
+ <input id="internal-workflow-parameter-file-{{item.id}}" class="file-input" type="file" ngf-select ng-model="item.value" ngf-validate-async-fn="vm.uploadConfigFile($file)" name="configUpdateFile" accept="{{item.acceptableFileType}}" ngf-pattern="{{item.acceptableFileType}}" ng-required="{{item.required}}"/>
+ <label id="internal-workflow-parameter-file-{{item.id}}-label" class="file-input-label">{{item.value&&item.value.name||"Select File"}} </label>
+ <label for="internal-workflow-parameter-file-{{item.id}}"><span class="icon-browse"></span></label>
</div>
- <label id="errorLabel" class="icon-alert error" ng-if="newChangeManagement.configUpdateFile.$error.pattern">{{vm.configUpdatePatternError}}</label>
- <label id="errorContentLabel" class="icon-alert error" ng-if="newChangeManagement.configUpdateFile.$error.validateAsyncFn">{{vm.configUpdateContentError}}</label>
+ <label id="errorLabel" class="icon-alert error" ng-if="item.value.$error.pattern">{{item.msgOnPatternError}}</label>
+ <label id="errorContentLabel" class="icon-alert error" ng-if="item.value.$error.validateAsyncFn">{{item.msgOnContentError}}</label>
</div>
- <div ng-if="vm.shouldShowVnfInPlaceFields()">
- <div class="form-group">
- <label class="control-label">Operations timeout</label>
- <input class="form-control" ng-model="vm.changeManagement.operationTimeout" name="operationTimeout" type="text" id="operations-timeout" pattern="[0-9]+" required>
- </div>
- <div class="form-group">
- <label class="control-label">Existing software version</label>
- <input class="form-control" ng-model="vm.changeManagement.existingSoftwareVersion" name="existingSoftwareVersion" type="text" id="existing-software-version" pattern="{{vm.softwareVersionRegex}}" required>
- </div>
- <div class="form-group">
- <label class="control-label">New software version</label>
- <input class="form-control" ng-model="vm.changeManagement.newSoftwareVersion" name="newSoftwareVersion" type="text" id="new-software-version" pattern="{{vm.softwareVersionRegex}}" required>
- </div>
+
+ <div class="form-group" ng-if="vm.changeManagement.workflow" ng-repeat="item in vm.getInternalWorkFlowParameters(vm.changeManagement.workflow, 'STRING')">
+ <label for="internal-workflow-parameter-text-{{item.id}}" class="control-label">{{item.name}}</label>
+ <input ng-model="item.value" type="text" id="internal-workflow-parameter-text-{{item.id}}" pattern="{{item.pattern}}" ng-required="{{item.required}}">
</div>
+
<div class="form-group" ng-if="vm.changeManagement.workflow" ng-repeat="item in vm.getRemoteWorkFlowParameters(vm.changeManagement.workflow)">
<label for="so-workflow-parameter-{{item.id}}" class="control-label">{{item.name}}</label>
- <input class="form-control" ng-model="item.value" type="text" id="so-workflow-parameter-{{item.id}}" pattern="{{item.pattern}}" ng-required="{{item.required}}">
+ <input ng-model="item.value" type="text" id="so-workflow-parameter-{{item.id}}" pattern="{{item.pattern}}" ng-required="{{item.required}}">
</div>
</div>
diff --git a/vid-app-common/src/main/webapp/app/vid/scripts/services/change-management.service.js b/vid-app-common/src/main/webapp/app/vid/scripts/services/change-management.service.js
index 5820ae212..2a06e75b1 100644
--- a/vid-app-common/src/main/webapp/app/vid/scripts/services/change-management.service.js
+++ b/vid-app-common/src/main/webapp/app/vid/scripts/services/change-management.service.js
@@ -36,7 +36,7 @@
.success(function (response) {
return {data: response};
})
- .catch(function (err) {
+ .catch(function () {
return {data: []};
});
};
@@ -45,7 +45,8 @@
return $http.get(COMPONENT.GET_SO_WORKFLOWS, {params: {vnfName: vnfNames}})
.success(function (response) {
return {data: response};
- }).catch(function () {
+ }).catch(function (ex) {
+ console.error("Problem when getting workflows from SO API occurred.", ex.stack);
return {data: []};
});
};
@@ -57,6 +58,13 @@
});
};
+ this.getLocalWorkflowParameter = function (workflowName){
+ return $http.get(COMPONENT.GET_LOCAL_WORKFLOW_PARAMETER.replace('@workflowName', encodeURIComponent(workflowName)))
+ .success(function (response) {
+ return {data: response.parameterDefinitions}
+ });
+ };
+
this.getMSOChangeManagements = function() {
var deferred = $q.defer();
diff --git a/vid-app-common/src/test/java/org/onap/aai/util/JettyObfuscationConversionCommandLineUtilTest.java b/vid-app-common/src/test/java/org/onap/aai/util/JettyObfuscationConversionCommandLineUtilTest.java
index 98be994fa..e06805cc1 100644
--- a/vid-app-common/src/test/java/org/onap/aai/util/JettyObfuscationConversionCommandLineUtilTest.java
+++ b/vid-app-common/src/test/java/org/onap/aai/util/JettyObfuscationConversionCommandLineUtilTest.java
@@ -7,9 +7,9 @@
* 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.
@@ -20,23 +20,52 @@
package org.onap.aai.util;
+import static org.mockito.ArgumentMatchers.contains;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+
+import java.io.PrintStream;
+import java.util.Arrays;
import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+import org.junit.runners.Parameterized.Parameters;
import org.onap.vid.aai.util.JettyObfuscationConversionCommandLineUtil;
+@RunWith(Parameterized.class)
public class JettyObfuscationConversionCommandLineUtilTest {
- private JettyObfuscationConversionCommandLineUtil createTestSubject() {
- return new JettyObfuscationConversionCommandLineUtil();
- }
+ final String[] args;
+ final String expected;
+
+ public JettyObfuscationConversionCommandLineUtilTest(String description, String[] args, String expected) {
+ this.args = args;
+ this.expected = expected;
+ }
-
- @Test
- public void testMain() throws Exception {
- String[] args = new String[] { "" };
+ @Parameters(name = "{0}")
+ public static Iterable<Object[]> data() {
+ return Arrays.asList(new Object[][]{
+ {"print usage on missing params", new String[]{}, "usage:"},
+ {"obfuscate", new String[]{"-e", "foobar"}, "OBF:1vub1ua51uh81ugi1u9d1vuz"},
+ {"deobfuscate", new String[]{"-d", "OBF:1vub1ua51uh81ugi1u9d1vuz"}, "foobar"},
+ {"input parse exception", new String[]{"mm", "-mm", "-mm"}, "failed to parse input"},
+ {"deobfuscate exception", new String[]{"-d", "problematic string"},
+ "exception:java.lang.NumberFormatException"},
+ });
+ }
- // default test
- JettyObfuscationConversionCommandLineUtil.main(args);
- }
+ @Test
+ public void testMain() {
+ final PrintStream originalOut = System.out;
+ try {
+ PrintStream mockedOut = mock(PrintStream.class);
+ System.setOut(mockedOut);
+ JettyObfuscationConversionCommandLineUtil.main(args);
+ verify(mockedOut).println(contains(expected));
+ } finally {
+ System.setOut(originalOut);
+ }
+ }
-
}
diff --git a/vid-app-common/src/test/java/org/onap/vid/aai/PombaClientImplTest.java b/vid-app-common/src/test/java/org/onap/vid/aai/PombaClientImplTest.java
index 222bf1e5b..c41a479d9 100644
--- a/vid-app-common/src/test/java/org/onap/vid/aai/PombaClientImplTest.java
+++ b/vid-app-common/src/test/java/org/onap/vid/aai/PombaClientImplTest.java
@@ -19,6 +19,7 @@
*/
package org.onap.vid.aai;
+import static org.assertj.core.api.Assertions.assertThatCode;
import static org.mockito.BDDMockito.given;
import static org.mockito.BDDMockito.then;
@@ -60,6 +61,20 @@ public class PombaClientImplTest {
then(pombaRestInterface).should().RestPost("VidAaiController", expectedUrl, expectedPayload);
}
+ @Test
+ public void should_handleException_withoutRethrowing() throws IOException {
+ //Given
+ String expectedUrl = "http://localhost/dummyUrl";
+ String expectedPayload = readExpectedPombaJsonRequest();
+ given(systemPropertiesWrapper.getProperty("pomba.server.url")).willReturn(expectedUrl);
+ given(pombaRestInterface.RestPost("VidAaiController", expectedUrl, expectedPayload))
+ .willThrow(new NullPointerException());
+ PombaRequest pombaRequest = createPombaRequest();
+
+ //When //Then
+ assertThatCode(() -> pombaClient.verify(pombaRequest)).doesNotThrowAnyException();
+ }
+
private String readExpectedPombaJsonRequest() throws IOException {
URL url = PombaClientImplTest.class.getClassLoader().getResource("pomba_request.json");
PombaRequest expectedPombaRequest = new ObjectMapper().readValue(url, PombaRequest.class);
diff --git a/vid-app-common/src/test/java/org/onap/vid/model/CategoryParameterOptionTest.java b/vid-app-common/src/test/java/org/onap/vid/model/CategoryParameterOptionTest.java
index 5fe392751..a3a14a2dd 100644
--- a/vid-app-common/src/test/java/org/onap/vid/model/CategoryParameterOptionTest.java
+++ b/vid-app-common/src/test/java/org/onap/vid/model/CategoryParameterOptionTest.java
@@ -20,190 +20,34 @@
package org.onap.vid.model;
-import java.io.Serializable;
-import java.util.Date;
-import java.util.Set;
+import static com.google.code.beanmatchers.BeanMatchers.hasValidBeanEqualsExcluding;
+import static com.google.code.beanmatchers.BeanMatchers.hasValidBeanHashCodeExcluding;
+import static com.google.code.beanmatchers.BeanMatchers.hasValidGettersAndSetters;
+import static org.hamcrest.MatcherAssert.assertThat;
-import org.junit.Assert;
+import org.apache.commons.lang3.ArrayUtils;
import org.junit.Test;
+import org.onap.portalsdk.core.domain.support.DomainVo;
+import org.onap.vid.testUtils.TestUtils;
public class CategoryParameterOptionTest {
- private CategoryParameterOption createTestSubject() {
- return new CategoryParameterOption();
- }
-
- @Test
- public void testGetId() throws Exception {
- CategoryParameterOption testSubject;
- Long result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getId();
- }
-
- @Test
- public void testSetId() throws Exception {
- CategoryParameterOption testSubject;
- Long id = null;
-
- // default test
- testSubject = createTestSubject();
- testSubject.setId(id);
- }
-
- @Test
- public void testGetAppId() throws Exception {
- CategoryParameterOption testSubject;
- String result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getAppId();
- }
-
- @Test
- public void testSetAppId() throws Exception {
- CategoryParameterOption testSubject;
- String appId = "";
-
- // default test
- testSubject = createTestSubject();
- testSubject.setAppId(appId);
- }
-
- @Test
- public void testGetName() throws Exception {
- CategoryParameterOption testSubject;
- String result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getName();
- }
-
- @Test
- public void testSetName() throws Exception {
- CategoryParameterOption testSubject;
- String name = "";
-
- // default test
- testSubject = createTestSubject();
- testSubject.setName(name);
- }
-
- @Test
- public void testGetCategoryParameter() throws Exception {
- CategoryParameterOption testSubject;
- CategoryParameter result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getCategoryParameter();
- }
-
- @Test
- public void testSetCategoryParameter() throws Exception {
- CategoryParameterOption testSubject;
- CategoryParameter categoryParameter = null;
-
- // default test
- testSubject = createTestSubject();
- testSubject.setCategoryParameter(categoryParameter);
- }
-
- @Test
- public void testGetCreated() throws Exception {
- CategoryParameterOption testSubject;
- Date result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getCreated();
- }
-
- @Test
- public void testGetModified() throws Exception {
- CategoryParameterOption testSubject;
- Date result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getModified();
- }
-
- @Test
- public void testGetCreatedId() throws Exception {
- CategoryParameterOption testSubject;
- Long result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getCreatedId();
- }
+ final private String[] excludedProperties = TestUtils.allPropertiesOf(DomainVo.class);
@Test
- public void testGetModifiedId() throws Exception {
- CategoryParameterOption testSubject;
- Long result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getModifiedId();
- }
-
- @Test
- public void testGetAuditUserId() throws Exception {
- CategoryParameterOption testSubject;
- Serializable result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getAuditUserId();
+ public void shouldHaveValidGettersAndSetters() {
+ assertThat(CategoryParameterOption.class, hasValidGettersAndSetters());
}
@Test
- public void testGetRowNum() throws Exception {
- CategoryParameterOption testSubject;
- Long result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getRowNum();
+ public void shouldHaveValidBeanHashCode() {
+ assertThat(CategoryParameterOption.class,
+ hasValidBeanHashCodeExcluding(ArrayUtils.addAll(new String[]{"categoryParameter"}, excludedProperties)));
}
@Test
- public void testGetAuditTrail() throws Exception {
- CategoryParameterOption testSubject;
- Set result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getAuditTrail();
- }
-
- @Test
- public void testEquals() throws Exception {
- CategoryParameterOption testSubject;
- Object o = null;
- boolean result;
-
- // test 1
- testSubject = createTestSubject();
- o = null;
- result = testSubject.equals(o);
- Assert.assertEquals(false, result);
- }
-
- @Test
- public void testHashCode() throws Exception {
- CategoryParameterOption testSubject;
- int result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.hashCode();
+ public void shouldHaveValidBeanEquals() {
+ assertThat(CategoryParameterOption.class, hasValidBeanEqualsExcluding(excludedProperties));
}
}
diff --git a/vid-app-common/src/test/java/org/onap/vid/model/CategoryParameterTest.java b/vid-app-common/src/test/java/org/onap/vid/model/CategoryParameterTest.java
index dc18c3065..c515a34d4 100644
--- a/vid-app-common/src/test/java/org/onap/vid/model/CategoryParameterTest.java
+++ b/vid-app-common/src/test/java/org/onap/vid/model/CategoryParameterTest.java
@@ -20,186 +20,64 @@
package org.onap.vid.model;
-import java.io.Serializable;
-import java.util.Date;
+import static com.google.code.beanmatchers.BeanMatchers.hasValidBeanEqualsExcluding;
+import static com.google.code.beanmatchers.BeanMatchers.hasValidBeanHashCodeExcluding;
+import static com.google.code.beanmatchers.BeanMatchers.hasValidGettersAndSettersExcluding;
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.containsInAnyOrder;
+import static org.onap.vid.testUtils.TestUtils.allPropertiesOf;
+
+import com.google.common.collect.ImmutableSet;
import java.util.Set;
-
+import org.apache.commons.lang3.ArrayUtils;
import org.junit.Test;
+import org.onap.portalsdk.core.domain.support.DomainVo;
public class CategoryParameterTest {
- private CategoryParameter createTestSubject() {
- return new CategoryParameter();
- }
-
- @Test
- public void testGetFamily() throws Exception {
- CategoryParameter testSubject;
- String result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getFamily();
- }
-
- @Test
- public void testSetFamily() throws Exception {
- CategoryParameter testSubject;
- String family = "";
-
- // default test
- testSubject = createTestSubject();
- testSubject.setFamily(family);
- }
-
- @Test
- public void testGetId() throws Exception {
- CategoryParameter testSubject;
- Long result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getId();
- }
-
- @Test
- public void testGetCreated() throws Exception {
- CategoryParameter testSubject;
- Date result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getCreated();
- }
-
- @Test
- public void testGetModified() throws Exception {
- CategoryParameter testSubject;
- Date result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getModified();
- }
-
- @Test
- public void testGetCreatedId() throws Exception {
- CategoryParameter testSubject;
- Long result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getCreatedId();
- }
-
- @Test
- public void testGetModifiedId() throws Exception {
- CategoryParameter testSubject;
- Long result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getModifiedId();
- }
-
- @Test
- public void testGetName() throws Exception {
- CategoryParameter testSubject;
- String result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getName();
- }
- @Test
- public void testSetName() throws Exception {
- CategoryParameter testSubject;
- String name = "";
+ final private String[] excludedProperties = allPropertiesOf(DomainVo.class);
- // default test
- testSubject = createTestSubject();
- testSubject.setName(name);
+ private ImmutableSet<CategoryParameterOption> optionsWithRefTo(CategoryParameter categoryParameter) {
+ return ImmutableSet.of(
+ new CategoryParameterOption("appId1", "name1", categoryParameter),
+ new CategoryParameterOption("appId2", "name2", categoryParameter)
+ );
}
@Test
- public void testGetAuditUserId() throws Exception {
- CategoryParameter testSubject;
- Serializable result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getAuditUserId();
+ public void shouldHaveValidGettersAndSetters() {
+ assertThat(CategoryParameter.class, hasValidGettersAndSettersExcluding("options"));
}
@Test
- public void testGetRowNum() throws Exception {
- CategoryParameter testSubject;
- Long result;
+ public void testSetAndGetOptions() {
+ CategoryParameter testSubject = new CategoryParameter();
- // default test
- testSubject = createTestSubject();
- result = testSubject.getRowNum();
- }
-
- @Test
- public void testGetAuditTrail() throws Exception {
- CategoryParameter testSubject;
- Set result;
+ Set<CategoryParameterOption> options = optionsWithRefTo(testSubject);
- // default test
- testSubject = createTestSubject();
- result = testSubject.getAuditTrail();
+ testSubject.setOptions(options);
+ assertThat(testSubject.getOptions(), containsInAnyOrder(optionsWithRefTo(testSubject).toArray()));
}
@Test
- public void testGetOptions() throws Exception {
- CategoryParameter testSubject;
- Set<CategoryParameterOption> result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getOptions();
+ public void shouldHaveValidBeanHashCodeWithCycleReference() {
+ assertThat(CategoryParameter.class,
+ hasValidBeanHashCodeExcluding(ArrayUtils.addAll(new String[]{"options"}, excludedProperties)));
}
@Test
- public void testSetOptions() throws Exception {
- CategoryParameter testSubject;
- Set<CategoryParameterOption> options = null;
-
- // default test
- testSubject = createTestSubject();
+ public void hashCodeShouldNotExplodeWhenCycleReference() {
+ CategoryParameter testSubject = new CategoryParameter();
+ Set<CategoryParameterOption> options = optionsWithRefTo(testSubject);
testSubject.setOptions(options);
- }
- @Test
- public void testAddOption() throws Exception {
- CategoryParameter testSubject;
- CategoryParameterOption option = null;
- boolean result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.addOption(option);
+ testSubject.hashCode(); // don't stackOverflow
}
@Test
- public void testIsIdSupported() throws Exception {
- CategoryParameter testSubject;
- boolean result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.isIdSupported();
+ public void shouldHaveValidBeanEquals() {
+ assertThat(CategoryParameter.class, hasValidBeanEqualsExcluding(excludedProperties));
}
- @Test
- public void testSetIdSupported() throws Exception {
- CategoryParameter testSubject;
- boolean idSupported = false;
-
- // default test
- testSubject = createTestSubject();
- testSubject.setIdSupported(idSupported);
- }
}
diff --git a/vid-app-common/src/test/java/org/onap/vid/mso/MsoBusinessLogicImplTest.java b/vid-app-common/src/test/java/org/onap/vid/mso/MsoBusinessLogicImplTest.java
index a5fb1a5f0..39d777be9 100644
--- a/vid-app-common/src/test/java/org/onap/vid/mso/MsoBusinessLogicImplTest.java
+++ b/vid-app-common/src/test/java/org/onap/vid/mso/MsoBusinessLogicImplTest.java
@@ -3,14 +3,14 @@
* VID
* ================================================================================
* Copyright (C) 2017 - 2019 AT&T Intellectual Property. All rights reserved.
- * Modifications Copyright (C) 2018 - 2019 Nokia. All rights reserved.
+ * Modifications Copyright (C) 2019 Nokia. 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.
diff --git a/vid-app-common/src/test/java/org/onap/vid/mso/MsoResponseWrapper2Test.java b/vid-app-common/src/test/java/org/onap/vid/mso/MsoResponseWrapper2Test.java
index 5ec645a90..dd959a8aa 100644
--- a/vid-app-common/src/test/java/org/onap/vid/mso/MsoResponseWrapper2Test.java
+++ b/vid-app-common/src/test/java/org/onap/vid/mso/MsoResponseWrapper2Test.java
@@ -3,13 +3,14 @@
* VID
* ================================================================================
* Copyright (C) 2017 - 2019 AT&T Intellectual Property. All rights reserved.
+ * Modifications Copyright (C) 2019 Nokia. 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.
@@ -20,41 +21,75 @@
package org.onap.vid.mso;
-import org.junit.Test;
+import static org.mockito.Mockito.when;
+
+import io.joshworks.restclient.http.HttpResponse;
+import org.mockito.Mock;
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.Test;
+
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.mockito.MockitoAnnotations.initMocks;
public class MsoResponseWrapper2Test {
- private MsoResponseWrapper2 createTestSubject() {
- return new MsoResponseWrapper2(new RestObject());
+ @Mock
+ private RestObject<String> msoResponse;
+
+ @Mock
+ private HttpResponse<String> httpResponse;
+
+ private MsoResponseWrapper2<String> responseWrapper;
+
+ private int status = 202;
+ private String entity = "testEntity";
+ private String rawString = "testRawString";
+
+ @BeforeClass
+ public void setUp() {
+ initMocks(this);
}
@Test
- public void testGetStatus() throws Exception {
- MsoResponseWrapper2 testSubject;
- int result;
+ public void shouldProperlyCreateInstanceFromRestObject() {
+ // given
+ when(msoResponse.getStatusCode()).thenReturn(status);
+ when(msoResponse.get()).thenReturn(entity);
+ when(msoResponse.getRaw()).thenReturn(rawString);
+
+ // when
+ responseWrapper = new MsoResponseWrapper2<>(msoResponse);
- // default test
- testSubject = createTestSubject();
- result = testSubject.getStatus();
+ // then
+ assertThat(responseWrapper.getStatus()).isEqualTo(status);
+ assertThat(responseWrapper.getEntity()).isEqualTo(entity);
+ assertThat(responseWrapper.getResponse()).isEqualTo("{\"status\":"+status+",\"entity\":\""+entity+"\"}");
}
@Test
- public void testGetResponse() throws Exception {
- MsoResponseWrapper2 testSubject;
- String result;
+ public void shouldProperlyCreateInstanceFromHttpResponse() {
+ // given
+ when(httpResponse.getStatus()).thenReturn(status);
+ when(httpResponse.getBody()).thenReturn(entity);
- // default test
- testSubject = createTestSubject();
- result = testSubject.getResponse();
+ // when
+ responseWrapper = new MsoResponseWrapper2<>(httpResponse);
+
+ // then
+ assertThat(responseWrapper.getStatus()).isEqualTo(status);
+ assertThat(responseWrapper.getEntity()).isEqualTo(entity);
+ assertThat(responseWrapper.getResponse()).isEqualTo("{\"status\":"+status+",\"entity\":\""+entity+"\"}");
}
@Test
- public void testGetEntity() throws Exception {
- MsoResponseWrapper2 testSubject;
- Object result;
+ public void shouldProperlyCreateInstanceFromStatusAndEntity() {
+ // when
+ responseWrapper = new MsoResponseWrapper2<>(status,entity);
- // default test
- testSubject = createTestSubject();
- result = testSubject.getEntity();
+ // then
+ assertThat(responseWrapper.getStatus()).isEqualTo(status);
+ assertThat(responseWrapper.getEntity()).isEqualTo(entity);
+ assertThat(responseWrapper.getResponse()).isEqualTo("{\"status\":"+status+",\"entity\":\""+entity+"\"}");
}
-}
+
+} \ No newline at end of file
diff --git a/vid-app-common/src/test/java/org/onap/vid/mso/MsoResponseWrapperTest.java b/vid-app-common/src/test/java/org/onap/vid/mso/MsoResponseWrapperTest.java
index 6cba339d1..191b91ba2 100644
--- a/vid-app-common/src/test/java/org/onap/vid/mso/MsoResponseWrapperTest.java
+++ b/vid-app-common/src/test/java/org/onap/vid/mso/MsoResponseWrapperTest.java
@@ -25,12 +25,12 @@ import org.mockito.Mock;
import static com.google.code.beanmatchers.BeanMatchers.hasValidGettersAndSettersExcluding;
import static org.hamcrest.MatcherAssert.assertThat;
+import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
import static org.mockito.Mockito.when;
import static org.mockito.MockitoAnnotations.initMocks;
-import org.testng.annotations.BeforeSuite;
-import org.testng.annotations.Test;
-import static org.assertj.core.api.Assertions.assertThat;
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.Test;
import javax.ws.rs.core.Response;
@@ -46,7 +46,7 @@ public class MsoResponseWrapperTest {
private MsoResponseWrapper responseWrapper;
- @BeforeSuite
+ @BeforeClass
public void setUp() {
initMocks(this);
}
@@ -57,45 +57,58 @@ public class MsoResponseWrapperTest {
}
@Test
- public void shouldProperlyConstructResponseWrapperWithParameters(){
+ public void shouldProperlyConstructMsoResponseWrapperWithParameters(){
+ // when
responseWrapper = new MsoResponseWrapper(1,"testEntity");
+ // then
assertThat(responseWrapper.getStatus()).isEqualTo(1);
assertThat(responseWrapper.getEntity()).isEqualTo("testEntity");
}
@Test
- public void shouldProperlyConstructResponseWrapperFromResponse(){
+ public void shouldProperlyConstructMsoResponseWrapperFromResponse(){
+ // given
when(response.getStatus()).thenReturn(1);
when(response.readEntity(String.class)).thenReturn("testEntity");
+ // when
responseWrapper = new MsoResponseWrapper(response);
+ // then
assertThat(responseWrapper.getStatus()).isEqualTo(1);
assertThat(responseWrapper.getEntity()).isEqualTo("testEntity");
}
@Test
public void shouldProperlyGetResponseWithEmptyEntity(){
+ // given
responseWrapper = new MsoResponseWrapper();
+
+ // when
responseWrapper.setStatus(1);
+ // then
assertThat(responseWrapper.getResponse()).isEqualToIgnoringWhitespace(PROPER_RESPONSE_WITH_NO_ENTITY);
}
@Test
public void shouldProperlyGetResponse(){
+ // when
responseWrapper = new MsoResponseWrapper(1,"testEntity");
+ // then
assertThat(responseWrapper.getResponse()).isEqualToIgnoringWhitespace(PROPER_RESPONSE);
}
@Test
public void shouldProperlyConvertToString(){
+ // when
responseWrapper = new MsoResponseWrapper(1,"testEntity");
+ // then
assertThat(responseWrapper.toString()).endsWith(PROPER_TO_STRING);
}
-}
+} \ No newline at end of file
diff --git a/vid-app-common/src/test/java/org/onap/vid/mso/RestObjectTest.java b/vid-app-common/src/test/java/org/onap/vid/mso/RestObjectTest.java
index 803083321..9f8614b92 100644
--- a/vid-app-common/src/test/java/org/onap/vid/mso/RestObjectTest.java
+++ b/vid-app-common/src/test/java/org/onap/vid/mso/RestObjectTest.java
@@ -7,9 +7,9 @@
* 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.
@@ -21,7 +21,7 @@
package org.onap.vid.mso;
import org.hamcrest.MatcherAssert;
-import org.testng.annotations.BeforeSuite;
+import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
import static com.google.code.beanmatchers.BeanMatchers.hasValidGettersAndSettersExcluding;
@@ -29,11 +29,11 @@ import static org.assertj.core.api.Assertions.assertThat;
public class RestObjectTest {
- private RestObject restObject;
+ private RestObject<Object> restObject;
- @BeforeSuite
+ @BeforeClass
private void setUp() {
- restObject = new RestObject();
+ restObject = new RestObject<>();
}
@Test
@@ -42,7 +42,7 @@ public class RestObjectTest {
}
@Test
- public void shouldHaveValidGetterAndSetterForBody() {
+ public void shouldHaveValidGetterAndSetterForTObject() {
// given
String testString = "set/get_testString";
@@ -54,13 +54,13 @@ public class RestObjectTest {
}
@Test
- public void shouldProperlyCopyRestObject() {
+ public void shouldProperlyCopyFromOneRestObjectToAnotherWithProperParameters() {
// given
MsoResponseWrapper testResponseWraper = new MsoResponseWrapper();
String rawTestString = "rawTestString";
int statusCode = 404;
- RestObject restObjectToCopyFrom = new RestObject<>();
+ RestObject<Object> restObjectToCopyFrom = new RestObject<>();
restObjectToCopyFrom.set(testResponseWraper);
restObjectToCopyFrom.setRaw(rawTestString);
restObjectToCopyFrom.setStatusCode(statusCode);
@@ -91,4 +91,4 @@ public class RestObjectTest {
// then
assertThat(toStringResponse).isEqualTo(properString);
}
-}
+} \ No newline at end of file
diff --git a/vid-app-common/src/test/java/org/onap/vid/mso/model/OperationalEnvironmentActivateInfoTest.java b/vid-app-common/src/test/java/org/onap/vid/mso/model/OperationalEnvironmentActivateInfoTest.java
index 2a69e0e79..131e5dd46 100644
--- a/vid-app-common/src/test/java/org/onap/vid/mso/model/OperationalEnvironmentActivateInfoTest.java
+++ b/vid-app-common/src/test/java/org/onap/vid/mso/model/OperationalEnvironmentActivateInfoTest.java
@@ -7,9 +7,9 @@
* 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.
@@ -20,45 +20,48 @@
package org.onap.vid.mso.model;
-import org.junit.Test;
import org.onap.vid.controller.OperationalEnvironmentController;
-import org.onap.vid.controller.OperationalEnvironmentController.OperationalEnvironmentActivateBody;
import org.onap.vid.controller.OperationalEnvironmentController.OperationalEnvironmentManifest;
+import org.testng.annotations.Test;
-public class OperationalEnvironmentActivateInfoTest {
+import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
- private OperationalEnvironmentActivateInfo createTestSubject() {
- OperationalEnvironmentController.OperationalEnvironmentActivateBody a = new OperationalEnvironmentActivateBody("a", "b", "c", new OperationalEnvironmentManifest());
- return new OperationalEnvironmentActivateInfo(a, "", "");
- }
+public class OperationalEnvironmentActivateInfoTest {
@Test
- public void testGetUserId() throws Exception {
- OperationalEnvironmentActivateInfo testSubject;
- String result;
+ public void shouldProperlyCreateOperationalEnvironmentActivateInfoWithParameters() {
+ // given
+ String relatedInstanceId = "testRelatedInstanceId";
+ String relatedInstanceName = "testRelatedInstanceName";
+ String workloadContext = "testWorkloadContext";
+ OperationalEnvironmentManifest manifest = new OperationalEnvironmentManifest();
- // default test
- testSubject = createTestSubject();
- result = testSubject.getUserId();
- }
+ String userId = "testUserId";
+ String operationalEnvironmentId = "testOperationalEnvironmentId";
- @Test
- public void testGetOperationalEnvironmentId() throws Exception {
- OperationalEnvironmentActivateInfo testSubject;
- String result;
+ OperationalEnvironmentController.OperationalEnvironmentActivateBody operationalEnvironmentActivateBody =
+ new OperationalEnvironmentController.OperationalEnvironmentActivateBody
+ (relatedInstanceId,relatedInstanceName,workloadContext,manifest);
- // default test
- testSubject = createTestSubject();
- result = testSubject.getOperationalEnvironmentId();
- }
+ // when
+ OperationalEnvironmentActivateInfo operationalEnvironmentActivateInfo =
+ new OperationalEnvironmentActivateInfo(operationalEnvironmentActivateBody, userId, operationalEnvironmentId);
- @Test
- public void testToString() throws Exception {
- OperationalEnvironmentActivateInfo testSubject;
- String result;
- // default test
- testSubject = createTestSubject();
- result = testSubject.toString();
+ // then
+ assertThat(operationalEnvironmentActivateInfo.getUserId()).isEqualTo(userId);
+ assertThat(operationalEnvironmentActivateInfo.getOperationalEnvironmentId()).isEqualTo(operationalEnvironmentId);
+
+ assertThat(operationalEnvironmentActivateInfo.toString()).isEqualToIgnoringWhitespace(
+ "OperationalEnvironmentActivateInfo{operationalEnvironmentId="+operationalEnvironmentId+"," +
+ " userId="+userId+"," +
+ " super=OperationalEnvironmentActivateInfo{" +
+ " relatedInstanceId="+relatedInstanceId+"," +
+ " relatedInstanceName="+relatedInstanceName+"," +
+ " workloadContext="+workloadContext+"," +
+ " manifest="+manifest.toString()+"}}"
+ );
+
}
-}
+
+} \ No newline at end of file
diff --git a/vid-app-common/src/test/java/org/onap/vid/mso/model/OperationalEnvironmentDeactivateInfoTest.java b/vid-app-common/src/test/java/org/onap/vid/mso/model/OperationalEnvironmentDeactivateInfoTest.java
index 22310d2e2..72fb9d6dc 100644
--- a/vid-app-common/src/test/java/org/onap/vid/mso/model/OperationalEnvironmentDeactivateInfoTest.java
+++ b/vid-app-common/src/test/java/org/onap/vid/mso/model/OperationalEnvironmentDeactivateInfoTest.java
@@ -20,41 +20,31 @@
package org.onap.vid.mso.model;
-import org.junit.Test;
+import org.testng.annotations.Test;
+import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
public class OperationalEnvironmentDeactivateInfoTest {
- private OperationalEnvironmentDeactivateInfo createTestSubject() {
- return new OperationalEnvironmentDeactivateInfo("", "");
- }
-
@Test
- public void testGetUserId() throws Exception {
- OperationalEnvironmentDeactivateInfo testSubject;
- String result;
+ public void shouldProperlyCreateOperationalEnvironmentActivateInfoWithParameters() {
+ // given
+ String userId = "testUserId";
+ String operationalEnvironmentId = "testOperationalEnvironmentId";
- // default test
- testSubject = createTestSubject();
- result = testSubject.getUserId();
- }
- @Test
- public void testGetOperationalEnvironmentId() throws Exception {
- OperationalEnvironmentDeactivateInfo testSubject;
- String result;
+ // when
+ OperationalEnvironmentDeactivateInfo operationalEnvironmentDeactivateInfo =
+ new OperationalEnvironmentDeactivateInfo(userId, operationalEnvironmentId);
- // default test
- testSubject = createTestSubject();
- result = testSubject.getOperationalEnvironmentId();
- }
- @Test
- public void testToString() throws Exception {
- OperationalEnvironmentDeactivateInfo testSubject;
- String result;
+ // then
+ assertThat(operationalEnvironmentDeactivateInfo.getUserId()).isEqualTo(userId);
+ assertThat(operationalEnvironmentDeactivateInfo.getOperationalEnvironmentId()).isEqualTo(operationalEnvironmentId);
+
+ assertThat(operationalEnvironmentDeactivateInfo.toString()).isEqualToIgnoringWhitespace(
+ "OperationalEnvironmentDeactivateInfo{operationalEnvironmentId="+operationalEnvironmentId+"," +
+ " userId="+userId+"}"
+ );
- // default test
- testSubject = createTestSubject();
- result = testSubject.toString();
}
}
diff --git a/vid-app-common/src/test/java/org/onap/vid/services/ExtWorkflowServiceImplTest.java b/vid-app-common/src/test/java/org/onap/vid/services/ExternalWorkflowServiceImplTest.java
index d8d8552ec..160ba97a5 100644
--- a/vid-app-common/src/test/java/org/onap/vid/services/ExtWorkflowServiceImplTest.java
+++ b/vid-app-common/src/test/java/org/onap/vid/services/ExternalWorkflowServiceImplTest.java
@@ -38,13 +38,11 @@ import org.onap.vid.model.SOWorkflowType;
import org.onap.vid.model.SOWorkflows;
import org.onap.vid.mso.MsoResponseWrapper2;
import org.onap.vid.mso.rest.MockedWorkflowsRestClient;
-import org.onap.vid.services.ExtWorkflowsServiceImpl.BadResponseFromMso;
+import org.onap.vid.services.ExternalWorkflowsServiceImpl.BadResponseFromMso;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
-
-
-public class ExtWorkflowServiceImplTest {
+public class ExternalWorkflowServiceImplTest {
@Mock
private MockedWorkflowsRestClient client;
@@ -63,7 +61,7 @@ public class ExtWorkflowServiceImplTest {
@Test
public void shouldReturnWorkflowsOnValidResponse(){
// given
- ExtWorkflowsService extWorkflowsService = new ExtWorkflowsServiceImpl(client);
+ ExternalWorkflowsService extWorkflowsService = new ExternalWorkflowsServiceImpl(client);
Mockito.when(response.getStatus()).thenReturn(200);
Mockito.when(response.getBody()).thenReturn(new SOWorkflows(Collections.singletonList(new SOWorkflow(1L, "xyz"))));
MsoResponseWrapper2<SOWorkflows> msoResponseStub = new MsoResponseWrapper2<>(response);
@@ -78,7 +76,7 @@ public class ExtWorkflowServiceImplTest {
@Test(expectedExceptions = BadResponseFromMso.class)
public void shouldThrowBadResponseOnInvalidResponse(){
// given
- ExtWorkflowsService extWorkflowsService = new ExtWorkflowsServiceImpl(client);
+ ExternalWorkflowsService extWorkflowsService = new ExternalWorkflowsServiceImpl(client);
Mockito.when(response.getStatus()).thenReturn(500);
Mockito.when(response.getBody()).thenReturn(new SOWorkflows(Collections.singletonList(new SOWorkflow(1L, "xyz"))));
MsoResponseWrapper2<SOWorkflows> msoResponseStub = new MsoResponseWrapper2<>(response);
@@ -90,7 +88,7 @@ public class ExtWorkflowServiceImplTest {
@Test
public void shouldReturnWorkflowParametersOnValidResponse() {
SOWorkflowParameterDefinitions parameters = new SOWorkflowParameterDefinitions(Collections.singletonList(new SOWorkflowParameterDefinition(1L, "sample", "[0-9]", SOWorkflowType.STRING, true)));
- ExtWorkflowsService extWorkflowsService = new ExtWorkflowsServiceImpl(client);
+ ExternalWorkflowsService extWorkflowsService = new ExternalWorkflowsServiceImpl(client);
Mockito.when(parameterDefinitionsHttpResponse.getStatus()).thenReturn(200);
Mockito.when(parameterDefinitionsHttpResponse.getBody()).thenReturn(parameters);
MsoResponseWrapper2<SOWorkflowParameterDefinitions> msoResponseWrapper = new MsoResponseWrapper2<>(parameterDefinitionsHttpResponse);
@@ -104,7 +102,7 @@ public class ExtWorkflowServiceImplTest {
@Test
public void shouldProperlyHandleEmptyParametersList(){
- ExtWorkflowsService extWorkflowsService = new ExtWorkflowsServiceImpl(client);
+ ExternalWorkflowsService extWorkflowsService = new ExternalWorkflowsServiceImpl(client);
Mockito.when(parameterDefinitionsHttpResponse.getStatus()).thenReturn(200);
Mockito.when(parameterDefinitionsHttpResponse.getBody()).thenReturn(new SOWorkflowParameterDefinitions(Lists.newArrayList()));
diff --git a/vid-app-common/src/test/java/org/onap/vid/services/JobsBrokerServiceTest.java b/vid-app-common/src/test/java/org/onap/vid/services/JobsBrokerServiceTest.java
index 7b51225f3..85cf23edd 100644
--- a/vid-app-common/src/test/java/org/onap/vid/services/JobsBrokerServiceTest.java
+++ b/vid-app-common/src/test/java/org/onap/vid/services/JobsBrokerServiceTest.java
@@ -21,8 +21,45 @@
package org.onap.vid.services;
+import static java.util.concurrent.TimeUnit.MILLISECONDS;
+import static java.util.stream.Collectors.toList;
+import static org.hamcrest.CoreMatchers.equalTo;
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.both;
+import static org.hamcrest.Matchers.containsInAnyOrder;
+import static org.onap.vid.job.Job.JobStatus.COMPLETED;
+import static org.onap.vid.job.Job.JobStatus.CREATING;
+import static org.onap.vid.job.Job.JobStatus.FAILED;
+import static org.onap.vid.job.Job.JobStatus.IN_PROGRESS;
+import static org.onap.vid.job.Job.JobStatus.PAUSE;
+import static org.onap.vid.job.Job.JobStatus.PENDING;
+import static org.onap.vid.job.Job.JobStatus.RESOURCE_IN_PROGRESS;
+import static org.onap.vid.job.Job.JobStatus.STOPPED;
+import static org.onap.vid.utils.Streams.not;
+import static org.testng.Assert.assertNotNull;
+import static org.testng.AssertJUnit.assertEquals;
+
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
+import java.lang.reflect.Method;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.List;
+import java.util.Optional;
+import java.util.Set;
+import java.util.UUID;
+import java.util.concurrent.ConcurrentSkipListSet;
+import java.util.concurrent.ExecutionException;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+import java.util.concurrent.Future;
+import java.util.concurrent.TimeoutException;
+import java.util.stream.IntStream;
+import java.util.stream.Stream;
+import javax.inject.Inject;
import org.apache.commons.lang.RandomStringUtils;
import org.apache.commons.lang3.RandomUtils;
import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
@@ -53,27 +90,6 @@ import org.testng.annotations.BeforeMethod;
import org.testng.annotations.DataProvider;
import org.testng.annotations.Test;
-import javax.inject.Inject;
-import java.lang.reflect.Method;
-import java.time.LocalDateTime;
-import java.time.ZoneId;
-import java.util.*;
-import java.util.concurrent.*;
-import java.util.stream.IntStream;
-import java.util.stream.Stream;
-
-import static java.util.concurrent.TimeUnit.MILLISECONDS;
-import static java.util.stream.Collectors.toList;
-import static org.hamcrest.CoreMatchers.equalTo;
-import static org.hamcrest.CoreMatchers.is;
-import static org.hamcrest.MatcherAssert.assertThat;
-import static org.hamcrest.Matchers.both;
-import static org.hamcrest.Matchers.containsInAnyOrder;
-import static org.onap.vid.job.Job.JobStatus.*;
-import static org.onap.vid.utils.Streams.not;
-import static org.testng.Assert.assertNotNull;
-import static org.testng.AssertJUnit.assertEquals;
-
@ContextConfiguration(classes = {DataSourceConfig.class, SystemProperties.class, JobAdapterConfig.class})
public class JobsBrokerServiceTest extends AbstractTestNGSpringContextTests {
@@ -85,7 +101,7 @@ public class JobsBrokerServiceTest extends AbstractTestNGSpringContextTests {
private final Set<Long> threadsIds = new ConcurrentSkipListSet<>();
- private final long FEW = 500;
+ private final long FEW = 1000;
private final String JOBS_SHOULD_MATCH = "the jobs that added and those that pulled must be the same";
private final String JOBS_PEEKED_SHOULD_MATCH = "the jobs that added and those that peeked must be the same";
diff --git a/vid-app-common/src/test/java/org/onap/vid/testUtils/TestUtils.java b/vid-app-common/src/test/java/org/onap/vid/testUtils/TestUtils.java
index e2effd5ca..3a7d4690d 100644
--- a/vid-app-common/src/test/java/org/onap/vid/testUtils/TestUtils.java
+++ b/vid-app-common/src/test/java/org/onap/vid/testUtils/TestUtils.java
@@ -20,9 +20,32 @@
package org.onap.vid.testUtils;
+import static org.apache.commons.beanutils.PropertyUtils.getPropertyDescriptors;
+import static org.mockito.Matchers.any;
+import static org.mockito.Mockito.RETURNS_DEFAULTS;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
+import static org.mockito.Mockito.withSettings;
+import static org.testng.Assert.fail;
+
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.common.collect.ImmutableList;
+import java.beans.PropertyDescriptor;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.Serializable;
+import java.net.URI;
+import java.util.Arrays;
+import java.util.Iterator;
+import java.util.List;
+import javax.ws.rs.client.Client;
+import javax.ws.rs.client.Invocation;
+import javax.ws.rs.client.WebTarget;
+import javax.ws.rs.core.GenericType;
+import javax.ws.rs.core.MediaType;
+import javax.ws.rs.core.Response;
import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;
import org.json.JSONArray;
@@ -32,28 +55,11 @@ import org.mockito.MockSettings;
import org.mockito.Mockito;
import org.mockito.invocation.InvocationOnMock;
import org.mockito.stubbing.Answer;
+import org.onap.portalsdk.core.domain.support.DomainVo;
import org.onap.portalsdk.core.util.SystemProperties;
import org.onap.vid.asdc.beans.Service;
import org.springframework.mock.env.MockEnvironment;
-import javax.ws.rs.client.Client;
-import javax.ws.rs.client.Invocation;
-import javax.ws.rs.client.WebTarget;
-import javax.ws.rs.core.GenericType;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.Serializable;
-import java.net.URI;
-import java.util.Iterator;
-import java.util.List;
-
-import static fj.parser.Parser.fail;
-import static org.mockito.Matchers.any;
-import static org.mockito.Mockito.*;
-
/**
* Created by Oren on 6/7/17.
*/
@@ -125,6 +131,12 @@ public class TestUtils {
valueType);
}
+ public static String[] allPropertiesOf(Class<DomainVo> aClass) {
+ return Arrays.stream(getPropertyDescriptors(aClass))
+ .map(PropertyDescriptor::getDisplayName)
+ .toArray(String[]::new);
+ }
+
public static class JavaxRsClientMocks {
private final javax.ws.rs.client.Client fakeClient;
diff --git a/vid-automation/src/test/resources/features.properties b/vid-automation/src/test/resources/features.properties
index 8ff0db2ab..6f4f4efd4 100644
--- a/vid-automation/src/test/resources/features.properties
+++ b/vid-automation/src/test/resources/features.properties
@@ -10,5 +10,6 @@ FLAG_COLLECTION_RESOURCE_SUPPORT = true
FLAG_NETWORK_TO_ASYNC_INSTANTIATION = true
FLAG_SERVICE_MODEL_CACHE = true
FLAG_SHOW_ASSIGNMENTS = true
-FLAG_SHOW_VERIFY_SERVICE=false
+FLAG_SHOW_VERIFY_SERVICE = false
FLAG_SETTING_DEFAULTS_IN_DRAWING_BOARD = false
+FLAG_HANDLE_SO_WORKFLOWS = false \ No newline at end of file