aboutsummaryrefslogtreecommitdiffstats
path: root/asdctool/src
diff options
context:
space:
mode:
authorys9693 <ys9693@att.com>2020-01-19 13:50:02 +0200
committerOfir Sonsino <ofir.sonsino@intl.att.com>2020-01-22 12:33:31 +0000
commit16a9fce0e104a38371a9e5a567ec611ae3fc7f33 (patch)
tree03a2aff3060ddb5bc26a90115805a04becbaffc9 /asdctool/src
parentaa83a2da4f911c3ac89318b8e9e8403b072942e1 (diff)
Catalog alignment
Issue-ID: SDC-2724 Signed-off-by: ys9693 <ys9693@att.com> Change-Id: I52b4aacb58cbd432ca0e1ff7ff1f7dd52099c6fe
Diffstat (limited to 'asdctool/src')
-rw-r--r--asdctool/src/main/java/com/att/nsa/cambria/client/CambriaConsumer.java (renamed from asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/mocks/es/EsHealthCheckDaoMock.java)18
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/App.java7
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/Utils.java6
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/cli/CLITool.java7
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/ArtifactUUIDFixConfiguration.java11
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/ConfigurationUploader.java24
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/CsarGeneratorConfiguration.java10
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/InternalToolConfiguration.java9
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/SdcSchemaFileImportConfiguration.java (renamed from asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/GetConsumersConfiguration.java)23
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ESCatalogDAOMock.java61
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/enums/DistributionStatusEnum.java (renamed from asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ElasticSearchMocksConfiguration.java)37
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/enums/LifeCycleTransitionEnum.java83
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/enums/LifecycleStateEnum.java (renamed from asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/mocks/es/EsHealthCheckDaoMockTest.java)41
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/enums/SchemaZipFileEnum.java4
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/ArtifactUuidFix.java176
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/DataMigration.java813
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/EsToCassandraDataMigrationConfig.java56
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/GraphJsonValidator.java2
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/GraphMLConverter.java43
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/GraphMLDataAnalyzer.java13
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/JanusGraphInitializer.java10
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/ProductLogic.java7
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/UpdatePropertyOnVertex.java6
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/VrfObjectFixHandler.java6
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/internal/tool/CommonInternalTool.java6
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/internal/tool/CsarGenerator.java26
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/internal/tool/DeleteComponentHandler.java2
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/config/ValidationConfigManager.java7
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/config/ValidationToolConfiguration.java19
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/ArtifactValidatorExecuter.java17
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/NodeToscaArtifactsValidatorExecuter.java2
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceToscaArtifactsValidatorExecutor.java4
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceValidatorExecuter.java2
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/TopologyTemplateValidatorExecuter.java9
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/VFToscaArtifactValidatorExecutor.java2
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/VfValidatorExecuter.java3
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/ArtifactValidationUtils.java13
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/tasks/moduleJson/ModuleJsonTask.java10
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/utils/ReportManager.java20
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/main/CsarGeneratorTool.java4
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/main/DataSchemaMenu.java89
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/main/DeleteComponentTool.java9
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/main/EsToCassandraDataMigrationMenu.java105
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/main/ExportImportMenu.java7
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/main/GetConsumersMenu.java77
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/main/SdcInternalTool.java3
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/main/SdcSchemaFileImport.java36
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/MigrationSpringConfig.java23
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/mocks/CambriaHandlerMock.java87
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/mocks/DistributionEngineMock.java7
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/mocks/PortalHealthCheckBuilderMock.java (renamed from asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ElasticSearchClientMock.java)30
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/core/DBVersion.java2
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/core/task/PostMigration.java2
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/dao/MigrationTasksAccessor.java3
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/dao/MigrationTasksDao.java22
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/service/SdcRepoService.java6
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/InstanceMigrationBase.java178
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/handlers/XlsOutputHandler.java2
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1710/UpgradeMigration1710.java98
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ForwardPathMigration.java27
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ResourceLifecycleMigration.java2
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/SDCInstancesMigration.java49
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/InterfaceOperationMigration.java9
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcConsumerMigration.java108
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcGroupsMigration.java186
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcResourceIconMigration.java187
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1911/SdcDeploymentArtTimeOutMigration.java137
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig2002/SdcCollapsingRolesCERTIFIEDstateMigration.java139
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig2002/SdcCollapsingRolesCIPstateMigration.java153
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig2002/SdcCollapsingRolesRFCstateMigration.java147
-rw-r--r--asdctool/src/main/java/org/openecomp/sdc/asdctool/servlets/ExportImportJanusGraphServlet.java14
-rw-r--r--asdctool/src/main/resources/application-context.xml8
-rw-r--r--asdctool/src/main/resources/config/configuration.yaml100
-rw-r--r--asdctool/src/main/resources/config/dataTypes.yml202
-rw-r--r--asdctool/src/main/resources/config/elasticsearch.yml393
-rw-r--r--asdctool/src/main/resources/config/groupTypes.yml6
-rw-r--r--asdctool/src/main/resources/config/janusgraph.properties6
-rw-r--r--asdctool/src/main/resources/config/tmp.trustbin0 -> 192298 bytes
-rw-r--r--asdctool/src/main/resources/elasticsearch.yml399
-rw-r--r--asdctool/src/main/resources/es-resources/README.txt43
-rw-r--r--asdctool/src/main/resources/es-resources/auditMappings.txt169
-rw-r--r--asdctool/src/main/resources/es-resources/audit_migration_1602.py132
-rw-r--r--asdctool/src/main/resources/es-resources/config_properties.py11
-rw-r--r--asdctool/src/main/resources/es-resources/file_utils.py21
-rw-r--r--asdctool/src/main/resources/es-resources/index_ops.py151
-rw-r--r--asdctool/src/main/resources/es-resources/types/auditinggetuebclusterevent.txt8
-rw-r--r--asdctool/src/main/resources/es-resources/types/distributiondeployevent.txt14
-rw-r--r--asdctool/src/main/resources/es-resources/types/distributiondownloadevent.txt9
-rw-r--r--asdctool/src/main/resources/es-resources/types/distributionengineevent.txt13
-rw-r--r--asdctool/src/main/resources/es-resources/types/distributionnotificationevent.txt16
-rw-r--r--asdctool/src/main/resources/es-resources/types/distributionstatusevent.txt12
-rw-r--r--asdctool/src/main/resources/es-resources/types/resourceadminevent.txt21
-rw-r--r--asdctool/src/main/resources/es-resources/types/useraccessevent.txt10
-rw-r--r--asdctool/src/main/resources/es-resources/types/useradminevent.txt20
-rw-r--r--asdctool/src/main/resources/scripts/esToCassandraMigration.sh29
-rw-r--r--asdctool/src/main/resources/scripts/esToCassandraMigrationExportOnly.sh29
-rw-r--r--asdctool/src/main/resources/scripts/esToCassandraMigrationImportOnly.sh29
-rw-r--r--asdctool/src/main/resources/scripts/getConsumers.sh37
-rw-r--r--asdctool/src/main/resources/scripts/python/user/exportUsers.py3
-rw-r--r--asdctool/src/main/resources/scripts/python/user/importUsers.py6
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/UtilsTest.java2
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/cli/CLIToolTest.java10
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/cli/SpringCLIToolTest.java61
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/ArtifactUUIDFixConfigurationTest.java19
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/GetConsumersConfigurationTest.java43
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ESCatalogDAOMockTest.java97
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ElasticSearchClientMockTest.java69
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ElasticSearchMocksConfigurationTest.java63
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ArtifactUuidFixTest.java28
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ComponentInstanceRowTest.java4
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ComponentRowTest.java4
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/DataMigrationTest.java371
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/EsToCassandraDataMigrationConfigTest.java90
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/GraphJsonValidatorTest.java6
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/GraphMLConverterTest.java2
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ProductLogicTest.java3
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/VrfObjectFixHandlerTest.java2
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/internal/tool/CsarGeneratorTest.java37
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/internal/tool/DeleteComponentHandlerTest.java3
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/ArtifactToolBLTest.java10
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/ValidationToolBLTest.java9
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/config/ValidationToolConfigurationTest.java18
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/ArtifactValidatorExecuterTest.java8
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/NodeToscaArtifactsValidatorExecuterTest.java4
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceToscaArtifactsValidatorExecutorTest.java4
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceValidatorExecuterTest.java4
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/TopologyTemplateValidatorExecuterTest.java4
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/VFToscaArtifactValidatorExecutorTest.java4
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/VfValidatorExecuterTest.java9
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/ArtifactValidationUtilsTest.java36
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/ServiceArtifactValidationTaskTest.java5
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/VfArtifactValidationTaskTest.java4
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/utils/ReportManagerHelper.java4
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/utils/ReportManagerTest.java22
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/main/ExportImportMenuTest.java272
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/config/MigrationSpringConfigTest.java10
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/core/SdcMigrationToolTest.java4
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/scanner/ClassScanner.java6
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/service/SdcRepoServiceTest.java15
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/task/MigrationTasksTest.java6
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/handlers/XlsOutputHandlerTest.java4
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1710/UpgradeMigration1710Test.java24
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1802/SdcCatalogMigrationTest.java2
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ForwardPathMigrationTest.java6
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ResourceLifecycleMigrationTest.java6
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/SDCInstancesMigrationTest.java9
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/SdcArchiveMigrationTest.java6
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcGroupsMigrationTest.java231
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcResourceIconMigrationTest.java213
-rw-r--r--asdctool/src/test/java/org/openecomp/sdc/asdctool/utils/ReportWriterTest.java1
150 files changed, 2784 insertions, 4550 deletions
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/mocks/es/EsHealthCheckDaoMock.java b/asdctool/src/main/java/com/att/nsa/cambria/client/CambriaConsumer.java
index a22e862ae7..3f66031b17 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/mocks/es/EsHealthCheckDaoMock.java
+++ b/asdctool/src/main/java/com/att/nsa/cambria/client/CambriaConsumer.java
@@ -2,14 +2,14 @@
* ============LICENSE_START=======================================================
* SDC
* ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2020 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.
@@ -18,14 +18,8 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.asdctool.configuration.mocks.es;
+package com.att.nsa.cambria.client;
-import org.openecomp.sdc.be.dao.api.IEsHealthCheckDao;
-import org.openecomp.sdc.common.api.HealthCheckInfo;
-
-public class EsHealthCheckDaoMock implements IEsHealthCheckDao {
- @Override
- public HealthCheckInfo.HealthCheckStatus getClusterHealthStatus() {
- return HealthCheckInfo.HealthCheckStatus.UP;
- }
+public class CambriaConsumer {
+ //mock for bean init
}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/App.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/App.java
index f7aaa1e0d9..b433357db3 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/App.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/App.java
@@ -23,15 +23,12 @@ package org.openecomp.sdc.asdctool;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.servlet.ServletContextHandler;
import org.eclipse.jetty.servlet.ServletHolder;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
/**
* Hello world!
*
*/
public class App {
- private static Logger log = LoggerFactory.getLogger(App.class);
public static void main(String[] args) {
String asdcToolPort = "8087";
@@ -55,12 +52,12 @@ public class App {
try {
jettyServer.start();
- log.info("Server was started on port {}", asdcToolPort);
+ System.out.println("Server was started on port " + asdcToolPort);
jettyServer.join();
} catch (Exception e) {
- log.info("Server failed to start - {}", e);
+ e.printStackTrace();
System.exit(1);
} finally {
jettyServer.destroy();
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/Utils.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/Utils.java
index 44bfc536b6..378b81aaf2 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/Utils.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/Utils.java
@@ -20,12 +20,12 @@
package org.openecomp.sdc.asdctool;
-import org.janusgraph.core.JanusGraphFactory;
-import org.janusgraph.core.JanusGraph;
import org.apache.commons.configuration.Configuration;
import org.apache.tinkerpop.gremlin.structure.Element;
import org.apache.tinkerpop.gremlin.structure.Property;
import org.apache.tinkerpop.gremlin.structure.util.ElementHelper;
+import org.janusgraph.core.JanusGraph;
+import org.janusgraph.core.JanusGraphFactory;
import org.openecomp.sdc.common.log.wrappers.Logger;
import javax.ws.rs.core.Response;
@@ -38,7 +38,7 @@ public class Utils {
private static Logger log = Logger.getLogger(Utils.class.getName());
- public final static String NEW_LINE = System.getProperty("line.separator");
+ public static String NEW_LINE = System.getProperty("line.separator");
public static Response buildOkResponse(
/*
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/cli/CLITool.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/cli/CLITool.java
index 6cb6a5bb14..d4ebff6005 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/cli/CLITool.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/cli/CLITool.java
@@ -20,7 +20,12 @@
package org.openecomp.sdc.asdctool.cli;
-import org.apache.commons.cli.*;
+import org.apache.commons.cli.CommandLine;
+import org.apache.commons.cli.CommandLineParser;
+import org.apache.commons.cli.DefaultParser;
+import org.apache.commons.cli.HelpFormatter;
+import org.apache.commons.cli.Options;
+import org.apache.commons.cli.ParseException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/ArtifactUUIDFixConfiguration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/ArtifactUUIDFixConfiguration.java
index abfd10547b..99234365da 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/ArtifactUUIDFixConfiguration.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/ArtifactUUIDFixConfiguration.java
@@ -30,12 +30,10 @@ import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade
import org.openecomp.sdc.be.tosca.CsarUtils;
import org.openecomp.sdc.be.tosca.ToscaExportHandler;
import org.openecomp.sdc.config.CatalogBESpringConfig;
-import org.springframework.beans.factory.config.PropertiesFactoryBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
-import org.springframework.core.io.FileSystemResource;
@Configuration
@Import({DAOSpringConfig.class, CatalogBESpringConfig.class, CatalogModelSpringConfig.class})
@@ -51,13 +49,4 @@ public class ArtifactUUIDFixConfiguration {
return new ArtifactUuidFix(janusGraphDao, toscaOperationFacade, toscaExportHandler, artifactCassandraDao, csarUtils);
}
- @Bean(name = "elasticsearchConfig")
- public PropertiesFactoryBean mapper() {
- String configHome = System.getProperty("config.home");
- PropertiesFactoryBean bean = new PropertiesFactoryBean();
- bean.setLocation(new FileSystemResource(configHome + "/elasticsearch.yml"));
- return bean;
- }
-
-
}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/ConfigurationUploader.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/ConfigurationUploader.java
index d115f9cbb0..975066f694 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/ConfigurationUploader.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/ConfigurationUploader.java
@@ -1,6 +1,9 @@
-/*
- * Copyright © 2016-2018 AT&T
- *
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2016-2020 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
@@ -12,6 +15,9 @@
* 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=========================================================
+ * Modifications copyright (c) 2019 Nokia
+ * ================================================================================
*/
package org.openecomp.sdc.asdctool.configuration;
@@ -21,6 +27,8 @@ import org.openecomp.sdc.common.api.ConfigurationSource;
import org.openecomp.sdc.common.impl.ExternalConfiguration;
import org.openecomp.sdc.common.impl.FSConfigurationSource;
+import java.io.File;
+
public class ConfigurationUploader {
public static void uploadConfigurationFiles(String appConfigDir) {
@@ -28,5 +36,15 @@ public class ConfigurationUploader {
new ConfigurationManager(configurationSource);
ExternalConfiguration.setAppVersion(ConfigurationManager.getConfigurationManager().getConfiguration().getAppVersion());
System.setProperty("config.home", appConfigDir);
+ System.setProperty("artifactgenerator.config", buildArtifactGeneratorPath(appConfigDir));
+ }
+
+ private static String buildArtifactGeneratorPath(String appConfigDir) {
+ StringBuilder artifactGeneratorPath = new StringBuilder(appConfigDir);
+ if(!appConfigDir.endsWith(File.separator)){
+ artifactGeneratorPath.append(File.separator);
+ }
+ artifactGeneratorPath.append(ConfigurationManager.getConfigurationManager().getConfiguration().getArtifactGeneratorConfig());
+ return artifactGeneratorPath.toString();
}
}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/CsarGeneratorConfiguration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/CsarGeneratorConfiguration.java
index 32c37a36b3..ee4d2c1be2 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/CsarGeneratorConfiguration.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/CsarGeneratorConfiguration.java
@@ -21,7 +21,6 @@
package org.openecomp.sdc.asdctool.configuration;
import org.openecomp.sdc.asdctool.impl.internal.tool.CsarGenerator;
-import org.openecomp.sdc.be.components.distribution.engine.ServiceDistributionArtifactsBuilder;
import org.openecomp.sdc.be.config.CatalogModelSpringConfig;
import org.openecomp.sdc.be.dao.cassandra.ArtifactCassandraDao;
import org.openecomp.sdc.be.dao.config.DAOSpringConfig;
@@ -30,12 +29,10 @@ import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade
import org.openecomp.sdc.be.tosca.CsarUtils;
import org.openecomp.sdc.be.tosca.ToscaExportHandler;
import org.openecomp.sdc.config.CatalogBESpringConfig;
-import org.springframework.beans.factory.config.PropertiesFactoryBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
-import org.springframework.core.io.FileSystemResource;
@Configuration
@Import({DAOSpringConfig.class, CatalogBESpringConfig.class, CatalogModelSpringConfig.class})
@@ -51,12 +48,5 @@ public class CsarGeneratorConfiguration {
artifactCassandraDao, toscaExportHandler);
}
- @Bean(name = "elasticsearchConfig")
- public PropertiesFactoryBean mapper() {
- String configHome = System.getProperty("config.home");
- PropertiesFactoryBean bean = new PropertiesFactoryBean();
- bean.setLocation(new FileSystemResource(configHome + "/elasticsearch.yml"));
- return bean;
- }
}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/InternalToolConfiguration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/InternalToolConfiguration.java
index 51956732f5..1b09b2a57e 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/InternalToolConfiguration.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/InternalToolConfiguration.java
@@ -26,22 +26,13 @@ import org.openecomp.sdc.be.dao.config.DAOSpringConfig;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.NodeTypeOperation;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.TopologyTemplateOperation;
-import org.springframework.beans.factory.config.PropertiesFactoryBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
-import org.springframework.core.io.FileSystemResource;
@Configuration
@Import({DAOSpringConfig.class, CatalogModelSpringConfig.class})
public class InternalToolConfiguration {
- @Bean(name = "elasticsearchConfig")
- public PropertiesFactoryBean mapper() {
- String configHome = System.getProperty("config.home");
- PropertiesFactoryBean bean = new PropertiesFactoryBean();
- bean.setLocation(new FileSystemResource(configHome + "/elasticsearch.yml"));
- return bean;
- }
@Bean
public DeleteComponentHandler deleteComponentHandler(
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/GetConsumersConfiguration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/SdcSchemaFileImportConfiguration.java
index 8c70ad3407..0cfd894b39 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/GetConsumersConfiguration.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/SdcSchemaFileImportConfiguration.java
@@ -2,7 +2,7 @@
* ============LICENSE_START=======================================================
* SDC
* ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
+ * 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.
@@ -20,21 +20,22 @@
package org.openecomp.sdc.asdctool.configuration;
-import org.openecomp.sdc.be.dao.config.JanusGraphSpringConfig;
-import org.openecomp.sdc.be.dao.janusgraph.JanusGraphGenericDao;
-import org.openecomp.sdc.be.model.operations.impl.ConsumerOperation;
+import org.openecomp.sdc.be.dao.cassandra.CassandraClient;
+import org.openecomp.sdc.be.dao.cassandra.SdcSchemaFilesCassandraDao;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
-import org.springframework.context.annotation.Import;
@Configuration
-@Import({JanusGraphSpringConfig.class})
-public class GetConsumersConfiguration {
+public class SdcSchemaFileImportConfiguration {
- @Bean("consumer-operation")
- public ConsumerOperation consumerOperation(JanusGraphGenericDao janusGraphGenericDao) {
- return new ConsumerOperation(janusGraphGenericDao);
- }
+ @Bean(name = "cassandra-client")
+ public CassandraClient cassandraClient() {
+ return new CassandraClient();
+ }
+ @Bean(name = "sdc-schema-files-cassandra-dao")
+ public SdcSchemaFilesCassandraDao sdcSchemaFilesCassandraDao() {
+ return new SdcSchemaFilesCassandraDao(cassandraClient());
+ }
}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ESCatalogDAOMock.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ESCatalogDAOMock.java
deleted file mode 100644
index 75283f15ba..0000000000
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ESCatalogDAOMock.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.asdctool.configuration.mocks.es;
-
-import fj.data.Either;
-import org.openecomp.sdc.be.dao.api.ICatalogDAO;
-import org.openecomp.sdc.be.dao.api.ResourceUploadStatus;
-import org.openecomp.sdc.be.resources.data.ESArtifactData;
-
-import java.util.List;
-
-public class ESCatalogDAOMock implements ICatalogDAO {
-
- @Override
- public void addToIndicesMap(String typeName, String indexName) {
-
- }
-
- @Override
- public void writeArtifact(ESArtifactData artifactData) {
-
- }
-
- @Override
- public Either<ESArtifactData, ResourceUploadStatus> getArtifact(String id) {
- return null;
- }
-
- @Override
- public Either<List<ESArtifactData>, ResourceUploadStatus> getArtifacts(String[] ids) {
- return null;
- }
-
- @Override
- public void deleteArtifact(String id) {
-
- }
-
- @Override
- public void deleteAllArtifacts() {
-
- }
-}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ElasticSearchMocksConfiguration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/enums/DistributionStatusEnum.java
index fd68de24d2..92c4a7cf54 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ElasticSearchMocksConfiguration.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/enums/DistributionStatusEnum.java
@@ -2,7 +2,7 @@
* ============LICENSE_START=======================================================
* SDC
* ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
+ * 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.
@@ -18,30 +18,29 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.asdctool.configuration.mocks.es;
+package org.openecomp.sdc.asdctool.enums;
-import org.openecomp.sdc.be.dao.api.ICatalogDAO;
-import org.openecomp.sdc.be.dao.api.IEsHealthCheckDao;
-import org.openecomp.sdc.be.dao.es.ElasticSearchClient;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
+public enum DistributionStatusEnum {
+ DISTRIBUTION_NOT_APPROVED("Distribution not approved"), DISTRIBUTION_APPROVED("Distribution approved"), DISTRIBUTED("Distributed"), DISTRIBUTION_REJECTED("Distribution rejected");
-@Configuration
-public class ElasticSearchMocksConfiguration {
+ private String value;
- @Bean("elasticsearch-client")
- public ElasticSearchClient elasticSearchClientMock() {
- return new ElasticSearchClientMock();
+ private DistributionStatusEnum(String value) {
+ this.value = value;
}
- @Bean("resource-dao")
- public ICatalogDAO esCatalogDAOMock() {
- return new ESCatalogDAOMock();
+ public String getValue() {
+ return value;
}
- @Bean("esHealthCheckDao")
- public IEsHealthCheckDao esHealthCheckDaoMock() {
- return new EsHealthCheckDaoMock();
+ public static DistributionStatusEnum findState(String state) {
+
+ for (DistributionStatusEnum distributionStatus : DistributionStatusEnum.values()) {
+ if (distributionStatus.name().equalsIgnoreCase(state) || distributionStatus.getValue().equalsIgnoreCase(state)) {
+ return distributionStatus;
+ }
+ }
+ return null;
}
-}
+} \ No newline at end of file
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/enums/LifeCycleTransitionEnum.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/enums/LifeCycleTransitionEnum.java
new file mode 100644
index 0000000000..b29f5fba8d
--- /dev/null
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/enums/LifeCycleTransitionEnum.java
@@ -0,0 +1,83 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2020 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=========================================================
+ */
+
+package org.openecomp.sdc.asdctool.enums;
+
+public enum LifeCycleTransitionEnum {
+
+ CHECKOUT("checkout"),
+ CHECKIN("checkin"),
+ CERTIFICATION_REQUEST("certificationRequest"),
+ UNDO_CHECKOUT("undoCheckout"),
+ CANCEL_CERTIFICATION("cancelCertification"),
+ START_CERTIFICATION("startCertification"),
+ FAIL_CERTIFICATION("failCertification"),
+ CERTIFY("certify"),
+ DISTRIBUTE("distribute");
+
+ String displayName;
+
+ LifeCycleTransitionEnum(String displayName) {
+ this.displayName = displayName;
+ }
+
+ public String getDisplayName() {
+ return displayName;
+ }
+
+ public static LifeCycleTransitionEnum getFromDisplayName(String name) {
+ if (name.equalsIgnoreCase(LifeCycleTransitionEnum.CHECKOUT.getDisplayName())) {
+ return LifeCycleTransitionEnum.CHECKOUT;
+ }
+ if (name.equalsIgnoreCase(LifeCycleTransitionEnum.CHECKIN.getDisplayName())) {
+ return LifeCycleTransitionEnum.CHECKIN;
+ }
+ if (name.equalsIgnoreCase(LifeCycleTransitionEnum.CERTIFICATION_REQUEST.getDisplayName())) {
+ return LifeCycleTransitionEnum.CERTIFICATION_REQUEST;
+ }
+ if (name.equalsIgnoreCase(LifeCycleTransitionEnum.UNDO_CHECKOUT.getDisplayName())) {
+ return LifeCycleTransitionEnum.UNDO_CHECKOUT;
+ }
+ if (name.equalsIgnoreCase(LifeCycleTransitionEnum.CANCEL_CERTIFICATION.getDisplayName())) {
+ return LifeCycleTransitionEnum.CANCEL_CERTIFICATION;
+ }
+ if (name.equalsIgnoreCase(LifeCycleTransitionEnum.START_CERTIFICATION.getDisplayName())) {
+ return LifeCycleTransitionEnum.START_CERTIFICATION;
+ }
+ if (name.equalsIgnoreCase(LifeCycleTransitionEnum.FAIL_CERTIFICATION.getDisplayName())) {
+ return LifeCycleTransitionEnum.FAIL_CERTIFICATION;
+ }
+ if (name.equalsIgnoreCase(LifeCycleTransitionEnum.CERTIFY.getDisplayName())) {
+ return LifeCycleTransitionEnum.CERTIFY;
+ }
+ if (name.equalsIgnoreCase(LifeCycleTransitionEnum.DISTRIBUTE.getDisplayName())) {
+ return LifeCycleTransitionEnum.DISTRIBUTE;
+ } else
+ throw new IllegalArgumentException(name + " value does not match any of LifeCycleTransitionEnum values");
+ }
+
+ public static String valuesAsString() {
+ StringBuilder sb = new StringBuilder();
+ for (LifeCycleTransitionEnum op : LifeCycleTransitionEnum.values()) {
+ sb.append(op.getDisplayName()).append(" ");
+ }
+ return sb.toString();
+ }
+} \ No newline at end of file
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/mocks/es/EsHealthCheckDaoMockTest.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/enums/LifecycleStateEnum.java
index bd874c5ded..98fb95faa7 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/mocks/es/EsHealthCheckDaoMockTest.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/enums/LifecycleStateEnum.java
@@ -2,14 +2,14 @@
* ============LICENSE_START=======================================================
* SDC
* ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2020 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.
@@ -18,24 +18,27 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.asdctool.configuration.mocks.es;
+package org.openecomp.sdc.asdctool.enums;
-import org.junit.Test;
-import org.openecomp.sdc.common.api.HealthCheckInfo.HealthCheckStatus;
+public enum LifecycleStateEnum {
-public class EsHealthCheckDaoMockTest {
+ READY_FOR_CERTIFICATION,
- private EsHealthCheckDaoMock createTestSubject() {
- return new EsHealthCheckDaoMock();
- }
+ CERTIFICATION_IN_PROGRESS,
- @Test
- public void testGetClusterHealthStatus() throws Exception {
- EsHealthCheckDaoMock testSubject;
- HealthCheckStatus result;
+ CERTIFIED,
- // default test
- testSubject = createTestSubject();
- result = testSubject.getClusterHealthStatus();
- }
-}
+ NOT_CERTIFIED_CHECKIN,
+
+ NOT_CERTIFIED_CHECKOUT;
+
+ public static LifecycleStateEnum findState(String state) {
+
+ for (LifecycleStateEnum lifecycleStateEnum : LifecycleStateEnum.values()) {
+ if (lifecycleStateEnum.name().equals(state)) {
+ return lifecycleStateEnum;
+ }
+ }
+ return null;
+ }
+} \ No newline at end of file
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/enums/SchemaZipFileEnum.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/enums/SchemaZipFileEnum.java
index 471b54d4cb..1ab2b809c1 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/enums/SchemaZipFileEnum.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/enums/SchemaZipFileEnum.java
@@ -20,7 +20,9 @@
package org.openecomp.sdc.asdctool.enums;
-import static org.openecomp.sdc.asdctool.enums.SchemaZipFileEnum.SchemaZipConstants.*;
+import static org.openecomp.sdc.asdctool.enums.SchemaZipFileEnum.SchemaZipConstants.DATA_IMPORT_LIST;
+import static org.openecomp.sdc.asdctool.enums.SchemaZipFileEnum.SchemaZipConstants.EMPTY_IMPORT_LIST;
+import static org.openecomp.sdc.asdctool.enums.SchemaZipFileEnum.SchemaZipConstants.RELATIONSHIPS_TYPES_IMPORT_LIST;
public enum SchemaZipFileEnum {
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/ArtifactUuidFix.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/ArtifactUuidFix.java
index 4dab15fa4b..4ad90b884c 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/ArtifactUuidFix.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/ArtifactUuidFix.java
@@ -44,7 +44,16 @@ import org.openecomp.sdc.be.datatypes.enums.OriginTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum;
import org.openecomp.sdc.be.datatypes.tosca.ToscaDataDefinition;
import org.openecomp.sdc.be.impl.ComponentsUtils;
-import org.openecomp.sdc.be.model.*;
+import org.openecomp.sdc.be.model.ArtifactDefinition;
+import org.openecomp.sdc.be.model.Component;
+import org.openecomp.sdc.be.model.ComponentInstance;
+import org.openecomp.sdc.be.model.ComponentParametersView;
+import org.openecomp.sdc.be.model.DistributionStatusEnum;
+import org.openecomp.sdc.be.model.GroupDefinition;
+import org.openecomp.sdc.be.model.GroupInstance;
+import org.openecomp.sdc.be.model.LifecycleStateEnum;
+import org.openecomp.sdc.be.model.Resource;
+import org.openecomp.sdc.be.model.Service;
import org.openecomp.sdc.be.model.jsonjanusgraph.datamodel.TopologyTemplate;
import org.openecomp.sdc.be.model.jsonjanusgraph.datamodel.ToscaElement;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
@@ -52,7 +61,7 @@ import org.openecomp.sdc.be.model.jsonjanusgraph.utils.ModelConverter;
import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
import org.openecomp.sdc.be.model.operations.impl.DaoStatusConverter;
import org.openecomp.sdc.be.model.operations.impl.UniqueIdBuilder;
-import org.openecomp.sdc.be.resources.data.ESArtifactData;
+import org.openecomp.sdc.be.resources.data.DAOArtifactData;
import org.openecomp.sdc.be.tosca.CsarUtils;
import org.openecomp.sdc.be.tosca.ToscaError;
import org.openecomp.sdc.be.tosca.ToscaExportHandler;
@@ -72,23 +81,23 @@ import java.io.OutputStreamWriter;
import java.io.Writer;
import java.util.ArrayList;
import java.util.Collections;
+import java.util.EnumMap;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Set;
-import java.util.EnumMap;
import java.util.stream.Collectors;
@org.springframework.stereotype.Component("artifactUuidFix")
public class ArtifactUuidFix {
-
+
private static final String MIGRATION1707_ARTIFACT_UUID_FIX = "Migration1707ArtifactUuidFix fix group: group name {} correct artifactId {} artifactUUID {} ";
- private static final String FAILED_TO_FETCH_VF_RESOURCES = "Failed to fetch vf resources ";
+ private static final String FAILED_TO_FETCH_VF_RESOURCES = "Failed to fetch vf resources ";
- private static final String UTF8 = "utf-8";
+ private static final String UTF8 = "utf-8";
private JanusGraphDao janusGraphDao;
private ToscaOperationFacade toscaOperationFacade;
@@ -249,7 +258,7 @@ public class ArtifactUuidFix {
vfLst.add(resource);
writeModuleResultToFile(writer, resource, service);
writer.flush();
-
+
}
janusGraphDao.commit();
}
@@ -274,7 +283,7 @@ public class ArtifactUuidFix {
Map<GraphPropertyEnum, Object> hasProps = new EnumMap<>(GraphPropertyEnum.class);
hasProps.put(GraphPropertyEnum.COMPONENT_TYPE, ComponentTypeEnum.SERVICE.name());
if ("distributed_only".equals(fixServices)) {
- hasProps.put(GraphPropertyEnum.STATE, LifecycleStateEnum.CERTIFIED.name());
+ hasProps.put(GraphPropertyEnum.STATE, LifecycleStateEnum.CERTIFIED.name());
hasProps.put(GraphPropertyEnum.DISTRIBUTION_STATUS, DistributionStatusEnum.DISTRIBUTED.name());
}
@@ -302,17 +311,17 @@ public class ArtifactUuidFix {
continue;
}
Service service = toscaElement.left().value();
-
+
String serviceName = (String) gv.getMetadataProperty(GraphPropertyEnum.NAME);
-
+
boolean isProblematic = isProblematicService(service, serviceName);
if (isProblematic) {
serviceList.add(service);
writeModuleResultToFile(writer, service, null);
writer.flush();
-
+
}
-
+
janusGraphDao.commit();
}
log.info("output file with list of services : {}", fileName);
@@ -326,9 +335,9 @@ public class ArtifactUuidFix {
}
private boolean isProblematicService( Service service, String serviceName) {
-
+
List<ComponentInstance> componentInstances = service.getComponentInstances();
-
+
if (componentInstances == null) {
log.info("No instances for service {} ", service.getUniqueId());
return false;
@@ -350,21 +359,21 @@ public class ArtifactUuidFix {
if(isCheckVFModules){
Optional<ArtifactDefinition> optionalVfModuleArtifact = deploymentArtifacts.values().stream()
.filter(p -> p.getArtifactType().equals(ArtifactTypeEnum.VF_MODULES_METADATA.name())).findAny();
-
- if(!optionalVfModuleArtifact.isPresent())
- return true;
-
- ArtifactDefinition vfModuleArtifact = optionalVfModuleArtifact.get();
- Either<List<VfModuleArtifactPayloadEx>, StorageOperationStatus> vfModulesEither = parseVFModuleJson(vfModuleArtifact);
- if(vfModulesEither.isRight()){
- log.error("Failed to parse vfModule for service {} status is {}", service.getUniqueId(), vfModulesEither.right().value());
- return true;
- }
- vfModules = vfModulesEither.left().value();
- if(vfModules == null || vfModules.isEmpty() ){
- log.info("vfModules empty for service {}", service.getUniqueId());
- return true;
- }
+
+ if(!optionalVfModuleArtifact.isPresent())
+ return true;
+
+ ArtifactDefinition vfModuleArtifact = optionalVfModuleArtifact.get();
+ Either<List<VfModuleArtifactPayloadEx>, StorageOperationStatus> vfModulesEither = parseVFModuleJson(vfModuleArtifact);
+ if(vfModulesEither.isRight()){
+ log.error("Failed to parse vfModule for service {} status is {}", service.getUniqueId(), vfModulesEither.right().value());
+ return true;
+ }
+ vfModules = vfModulesEither.left().value();
+ if(vfModules == null || vfModules.isEmpty() ){
+ log.info("vfModules empty for service {}", service.getUniqueId());
+ return true;
+ }
}
for (GroupInstance gi : groupInstances) {
@@ -373,7 +382,7 @@ public class ArtifactUuidFix {
if(isCheckVFModules && vfModules != null){
Optional<VfModuleArtifactPayloadEx> op = vfModules.stream().filter(vf -> vf.getVfModuleModelName().equals(gi.getGroupName())).findAny();
if(!op.isPresent()){
- log.error("Failed to find vfModule for group {}", gi.getGroupName());
+ log.error("Failed to find vfModule for group {}", gi.getGroupName());
return true;
}
vfModule = op.get();
@@ -383,13 +392,13 @@ public class ArtifactUuidFix {
}
}
}
-
+
}
return false;
}
private boolean isProblematicGroup(GroupDefinition gr, String resourceName,
- Map<String, ArtifactDefinition> deploymentArtifacts) {
+ Map<String, ArtifactDefinition> deploymentArtifacts) {
List<String> artifacts = gr.getArtifacts();
List<String> artifactsUuid = gr.getArtifactsUuid();
Set<String> artifactsSet = new HashSet<>();
@@ -454,14 +463,14 @@ public class ArtifactUuidFix {
}
private boolean isProblematicGroupInstance(GroupInstance gi, String instName, String servicename,
- Map<String, ArtifactDefinition> deploymentArtifacts, VfModuleArtifactPayloadEx vfModule) {
+ Map<String, ArtifactDefinition> deploymentArtifacts, VfModuleArtifactPayloadEx vfModule) {
List<String> artifacts = gi.getArtifacts();
List<String> artifactsUuid = gi.getArtifactsUuid();
List<String> instArtifactsUuid = gi.getGroupInstanceArtifactsUuid();
List<String> instArtifactsId = gi.getGroupInstanceArtifacts();
Set<String> instArtifatIdSet = new HashSet<>();
- Set<String> artifactsSet = new HashSet<>();
-
+ Set<String> artifactsSet = new HashSet<>();
+
log.info("check group {} for instance {} ", gi.getGroupName(), instName);
if ((artifactsUuid == null || artifactsUuid.isEmpty()) && (artifacts == null || artifacts.isEmpty())) {
log.info("No instance groups for instance {} in service {} ", instName, servicename);
@@ -548,12 +557,12 @@ public class ArtifactUuidFix {
if(vfModule != null && artifactsUuid != null){
return isProblematicVFModule(vfModule, artifactsUuid, instArtifactsUuid);
}
-
+
return false;
}
private boolean isProblematicVFModule(VfModuleArtifactPayloadEx vfModule, List<String> artifactsUuid,
- List<String> instArtifactsUuid) {
+ List<String> instArtifactsUuid) {
log.info(" isProblematicVFModule {} ", vfModule.getVfModuleModelName());
List<String> vfModuleArtifacts = vfModule.getArtifacts();
List<String> allArtifacts = new ArrayList<>();
@@ -580,10 +589,10 @@ public class ArtifactUuidFix {
return false;
}
-
+
private boolean fix(List<Resource> vfLst, List<Service> serviceList, Map<String, List<Component>> nodesToFixTosca,
- Map<String, List<Component>> vfToFixTosca, Map<String, List<Component>> servicesToFixTosca) {
+ Map<String, List<Component>> vfToFixTosca, Map<String, List<Component>> servicesToFixTosca) {
boolean res = true;
log.info(" Fix started ***** ");
if (vfLst != null && !vfLst.isEmpty()) {
@@ -600,6 +609,7 @@ public class ArtifactUuidFix {
long time = System.currentTimeMillis();
String fileName = "FailedGenerateTosca" + "_" + time + ".csv";
+
try(Writer writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(fileName), UTF8))) {
writer.write("componentType, name, version, UID, UUID, invariantUUID, state\n");
List<Component> failedList = new ArrayList<>();
@@ -614,7 +624,7 @@ public class ArtifactUuidFix {
generateAndSaveToscaArtifacts(vfToFixTosca, fixedIds, vfLst, failedList);
}
-
+
for (Component component : vfLst) {
res = generateToscaPerComponent(fixedIds, component);
if (res) {
@@ -642,7 +652,7 @@ public class ArtifactUuidFix {
}
-
+
for (Component component : serviceList) {
res = generateToscaPerComponent(fixedIds, component);
if (res) {
@@ -690,7 +700,7 @@ public class ArtifactUuidFix {
}
private boolean generateAndSaveToscaArtifacts(Map<String, List<Component>> nodesToFixTosca, Set<String> fixedIds,
- List<? extends Component> componentsWithFailedGroups, List<Component> failedList) {
+ List<? extends Component> componentsWithFailedGroups, List<Component> failedList) {
boolean res = true;
log.debug("Migration1707ArtifactUuidFix generateAndSaveToscaArtifacts started ");
for (Map.Entry<String, List<Component>> entry : nodesToFixTosca.entrySet()) {
@@ -751,9 +761,9 @@ public class ArtifactUuidFix {
log.error("Couldn't generate and save tosca template component unique id {}, name {} error: {}",
toscaElementFull.getUniqueId(), toscaElementFull.getName(), either.right().value());
res = false;
-
+
}
-
+
if (res) {
c.setToscaArtifacts(either.left().value().getToscaArtifacts());
fixedIds.add(toscaElementFull.getUniqueId());
@@ -770,7 +780,7 @@ public class ArtifactUuidFix {
}
private <T extends ToscaDataDefinition> boolean fixDataOnGraph(String componentId, VertexTypeEnum vertexTypeEnum,
- EdgeLabelEnum edgeLabelEnum, Map<String, T> groups) {
+ EdgeLabelEnum edgeLabelEnum, Map<String, T> groups) {
log.debug("amount groups to update: VertexTypeEnum {} EdgeLabelEnum {} data size {}", vertexTypeEnum.getName(),
edgeLabelEnum, groups.size());
boolean res = true;
@@ -860,7 +870,7 @@ public class ArtifactUuidFix {
}
private void fixGroupInstances(Service service, Map<String, ArtifactDefinition> artifactsMap,
- List<GroupInstance> groupsToDelete, GroupInstance group) {
+ List<GroupInstance> groupsToDelete, GroupInstance group) {
if (group.getType().equals(Constants.DEFAULT_GROUP_VF_MODULE)) {
log.debug("Migration1707ArtifactUuidFix fix group: resource id {}, group name {} ", service.getUniqueId(),
group.getName());
@@ -871,9 +881,9 @@ public class ArtifactUuidFix {
groupArtifactsSet.addAll(groupInsArtifacts);
}
List<String> groupArtifacts = new ArrayList<>(groupArtifactsSet);
-
+
clearGroupInstanceArtifacts(group);
-
+
for (String artifactId : groupArtifacts) {
fixArtifactUndergroupInstances(artifactsMap, group, groupArtifacts, artifactId);
}
@@ -902,14 +912,14 @@ public class ArtifactUuidFix {
else{
group.setGroupInstanceArtifacts(new ArrayList<>());
}
- if(group.getGroupInstanceArtifactsUuid() != null )
+ if(group.getGroupInstanceArtifactsUuid() != null )
group.getGroupInstanceArtifactsUuid().clear();
else
group.setGroupInstanceArtifactsUuid(new ArrayList<>());
}
private void fixArtifactUndergroupInstances(Map<String, ArtifactDefinition> artifactsMap, GroupInstance group,
- List<String> groupArtifacts, String artifactId) {
+ List<String> groupArtifacts, String artifactId) {
String artifactlabel = findArtifactLabelFromArtifactId(artifactId);
log.debug("Migration1707ArtifactUuidFix fix group: group name {} artifactId for fix {} artifactlabel {} ",
group.getName(), artifactId, artifactlabel);
@@ -938,7 +948,7 @@ public class ArtifactUuidFix {
} else {
log.debug(
MIGRATION1707_ARTIFACT_UUID_FIX,
- group.getName(), correctArtifactId, correctArtifactUUID);
+ group.getName(), correctArtifactId, correctArtifactUUID);
Set<String> tmpSet = new HashSet<>(group.getGroupInstanceArtifacts());
tmpSet.add(correctArtifactId);
group.setGroupInstanceArtifacts(new ArrayList<>(tmpSet));
@@ -997,7 +1007,7 @@ public class ArtifactUuidFix {
}
private void fixArtifactUnderGroup(Map<String, ArtifactDefinition> artifactsMap, GroupDefinition group,
- List<String> groupArtifacts, String artifactId) {
+ List<String> groupArtifacts, String artifactId) {
String artifactlabel = findArtifactLabelFromArtifactId(artifactId);
log.debug("Migration1707ArtifactUuidFix fix group: group name {} artifactId for fix {} artifactlabel {} ",
@@ -1037,7 +1047,7 @@ public class ArtifactUuidFix {
}
private void writeModuleResultToFile(Writer writer, org.openecomp.sdc.be.model.Component component,
- Service service) {
+ Service service) {
try {
// "service name, service id, state, version
StringBuilder sb = new StringBuilder(component.getName());
@@ -1071,7 +1081,7 @@ public class ArtifactUuidFix {
}
public boolean doFixTosca(Map<String, List<Component>> nodeToFix, Map<String, List<Component>> vfToFix,
- Map<String, List<Component>> serviceToFix) {
+ Map<String, List<Component>> serviceToFix) {
Map<GraphPropertyEnum, Object> hasProps = new EnumMap<>(GraphPropertyEnum.class);
hasProps.put(GraphPropertyEnum.COMPONENT_TYPE, ComponentTypeEnum.RESOURCE.name());
@@ -1099,7 +1109,7 @@ public class ArtifactUuidFix {
}
public Map<String, List<Component>> getVerticesToValidate(VertexTypeEnum type,
- Map<GraphPropertyEnum, Object> hasProps) {
+ Map<GraphPropertyEnum, Object> hasProps) {
Map<String, List<Component>> result = new HashMap<>();
try {
@@ -1146,7 +1156,7 @@ public class ArtifactUuidFix {
}
public boolean validateTosca(Map<String, List<Component>> vertices, Map<String, List<Component>> compToFix,
- String name) {
+ String name) {
boolean result = true;
long time = System.currentTimeMillis();
String fileName = name + "_" + time + ".csv";
@@ -1238,7 +1248,7 @@ public class ArtifactUuidFix {
toscaArtifact.setEsId(toscaArtifact.getUniqueId());
toscaArtifact.setArtifactChecksum(GeneralUtility.calculateMD5Base64EncodedByByteArray(decodedPayload));
- ESArtifactData artifactData = new ESArtifactData(toscaArtifact.getEsId(), decodedPayload);
+ DAOArtifactData artifactData = new DAOArtifactData(toscaArtifact.getEsId(), decodedPayload);
artifactCassandraDao.saveArtifact(artifactData);
log.debug("Tosca yaml artifact esId {} ", toscaArtifact.getEsId());
@@ -1270,7 +1280,7 @@ public class ArtifactUuidFix {
csarArtifact.setEsId(csarArtifact.getUniqueId());
csarArtifact.setArtifactChecksum(GeneralUtility.calculateMD5Base64EncodedByByteArray(decodedPayload));
- ESArtifactData artifactData = new ESArtifactData(csarArtifact.getEsId(), decodedPayload);
+ DAOArtifactData artifactData = new DAOArtifactData(csarArtifact.getEsId(), decodedPayload);
artifactCassandraDao.saveArtifact(artifactData);
log.debug("Tosca csar artifact esId {} ", csarArtifact.getEsId());
@@ -1285,29 +1295,29 @@ public class ArtifactUuidFix {
return Either.left(parent);
}
-
- private ArtifactDefinition createVfModuleArtifact(ComponentInstance currVF, Service service) {
- ArtifactDefinition vfModuleArtifactDefinition = new ArtifactDefinition();
+ private ArtifactDefinition createVfModuleArtifact(ComponentInstance currVF, Service service) {
- vfModuleArtifactDefinition.setDescription("Auto-generated VF Modules information artifact");
- vfModuleArtifactDefinition.setArtifactDisplayName("Vf Modules Metadata");
- vfModuleArtifactDefinition.setArtifactType(ArtifactTypeEnum.VF_MODULES_METADATA.getType());
- vfModuleArtifactDefinition.setArtifactGroupType(ArtifactGroupTypeEnum.DEPLOYMENT);
- vfModuleArtifactDefinition.setArtifactLabel("vfModulesMetadata");
- vfModuleArtifactDefinition.setTimeout(0);
- vfModuleArtifactDefinition.setArtifactName(currVF.getNormalizedName() + "_modules.json");
-
- return vfModuleArtifactDefinition;
- }
+ ArtifactDefinition vfModuleArtifactDefinition = new ArtifactDefinition();
+
+ vfModuleArtifactDefinition.setDescription("Auto-generated VF Modules information artifact");
+ vfModuleArtifactDefinition.setArtifactDisplayName("Vf Modules Metadata");
+ vfModuleArtifactDefinition.setArtifactType(ArtifactTypeEnum.VF_MODULES_METADATA.getType());
+ vfModuleArtifactDefinition.setArtifactGroupType(ArtifactGroupTypeEnum.DEPLOYMENT);
+ vfModuleArtifactDefinition.setArtifactLabel("vfModulesMetadata");
+ vfModuleArtifactDefinition.setTimeout(0);
+ vfModuleArtifactDefinition.setArtifactName(currVF.getNormalizedName() + "_modules.json");
+
+ return vfModuleArtifactDefinition;
+ }
private void fillVfModuleInstHeatEnvPayload(Component parent, ComponentInstance instance, List<GroupInstance> groupsForCurrVF,
- ArtifactDefinition vfModuleArtifact) {
+ ArtifactDefinition vfModuleArtifact) {
log.debug("generate new vf module for component. name {}, id {}, Version {}", instance.getName(), instance.getUniqueId());
-
+
String uniqueId = UniqueIdBuilder.buildInstanceArtifactUniqueId(parent.getUniqueId(), instance.getUniqueId(), vfModuleArtifact.getArtifactLabel());
-
+
vfModuleArtifact.setUniqueId(uniqueId);
vfModuleArtifact.setEsId(vfModuleArtifact.getUniqueId());
@@ -1329,7 +1339,7 @@ public class ArtifactUuidFix {
.calculateMD5Base64EncodedByByteArray(vfModulePayloadString.getBytes());
vfModuleArtifact.setArtifactChecksum(newCheckSum);
- ESArtifactData artifactData = new ESArtifactData(vfModuleArtifact.getEsId(),
+ DAOArtifactData artifactData = new DAOArtifactData(vfModuleArtifact.getEsId(),
vfModulePayloadString.getBytes());
artifactCassandraDao.saveArtifact(artifactData);
@@ -1338,21 +1348,21 @@ public class ArtifactUuidFix {
}
}
-
+
private Either<List<VfModuleArtifactPayloadEx>, StorageOperationStatus> parseVFModuleJson(ArtifactDefinition vfModuleArtifact) {
log.info("Try to get vfModule json from cassandra {}", vfModuleArtifact.getEsId());
- Either<ESArtifactData, CassandraOperationStatus> vfModuleData = artifactCassandraDao.getArtifact(vfModuleArtifact.getEsId());
-
+ Either<DAOArtifactData, CassandraOperationStatus> vfModuleData = artifactCassandraDao.getArtifact(vfModuleArtifact.getEsId());
+
if (vfModuleData.isRight()) {
CassandraOperationStatus resourceUploadStatus = vfModuleData.right().value();
StorageOperationStatus storageResponse = DaoStatusConverter.convertCassandraStatusToStorageStatus(resourceUploadStatus);
log.error("failed to fetch vfModule json {} from cassandra. Status is {}", vfModuleArtifact.getEsId(), storageResponse);
return Either.right(storageResponse);
-
+
}
- ESArtifactData esArtifactData = vfModuleData.left().value();
- String gsonData = new String( esArtifactData.getDataAsArray());
+ DAOArtifactData DAOArtifactData = vfModuleData.left().value();
+ String gsonData = new String( DAOArtifactData.getDataAsArray());
final Gson gson = new GsonBuilder().setPrettyPrinting().create();
JsonArray jsonElement = new JsonArray();
jsonElement = gson.fromJson(gsonData, jsonElement.getClass());
@@ -1361,10 +1371,10 @@ public class ArtifactUuidFix {
VfModuleArtifactPayloadEx vfModule = ComponentsUtils.parseJsonToObject(je.toString(), VfModuleArtifactPayloadEx.class);
vfModules.add(vfModule);
});
-
+
log.debug ("parse vf module finish {}", gsonData);
return Either.left(vfModules);
-
+
}
}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/DataMigration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/DataMigration.java
deleted file mode 100644
index 2e14b906ff..0000000000
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/DataMigration.java
+++ /dev/null
@@ -1,813 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * 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=========================================================
- */
-
-package org.openecomp.sdc.asdctool.impl;
-
-
-import com.carrotsearch.hppc.cursors.ObjectCursor;
-import com.fasterxml.jackson.core.type.TypeReference;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import fj.data.Either;
-import org.apache.commons.lang.SystemUtils;
-import org.elasticsearch.action.search.SearchResponse;
-import org.elasticsearch.cluster.metadata.IndexMetaData;
-import org.elasticsearch.common.collect.ImmutableOpenMap;
-import org.elasticsearch.common.settings.Settings;
-import org.elasticsearch.common.unit.TimeValue;
-import org.elasticsearch.index.query.QueryBuilder;
-import org.elasticsearch.index.query.QueryBuilders;
-import org.elasticsearch.search.SearchHit;
-import org.openecomp.sdc.be.auditing.api.AuditEventFactory;
-import org.openecomp.sdc.be.auditing.impl.AuditAuthRequestEventFactory;
-import org.openecomp.sdc.be.auditing.impl.AuditConsumerEventFactory;
-import org.openecomp.sdc.be.auditing.impl.AuditGetUebClusterEventFactory;
-import org.openecomp.sdc.be.auditing.impl.category.AuditCategoryEventFactory;
-import org.openecomp.sdc.be.auditing.impl.category.AuditGetCategoryHierarchyEventFactory;
-import org.openecomp.sdc.be.auditing.impl.distribution.*;
-import org.openecomp.sdc.be.auditing.impl.resourceadmin.AuditResourceAdminEventMigrationFactory;
-import org.openecomp.sdc.be.auditing.impl.usersadmin.AuditGetUsersListEventFactory;
-import org.openecomp.sdc.be.auditing.impl.usersadmin.AuditUserAccessEventFactory;
-import org.openecomp.sdc.be.auditing.impl.usersadmin.AuditUserAdminEventFactory;
-import org.openecomp.sdc.be.dao.cassandra.ArtifactCassandraDao;
-import org.openecomp.sdc.be.dao.cassandra.AuditCassandraDao;
-import org.openecomp.sdc.be.dao.cassandra.CassandraOperationStatus;
-import org.openecomp.sdc.be.dao.cassandra.schema.Table;
-import org.openecomp.sdc.be.dao.es.ElasticSearchClient;
-import org.openecomp.sdc.be.resources.data.ESArtifactData;
-import org.openecomp.sdc.be.resources.data.auditing.AuditingActionEnum;
-import org.openecomp.sdc.be.resources.data.auditing.AuditingGenericEvent;
-import org.openecomp.sdc.be.resources.data.auditing.AuditingTypesConstants;
-import org.openecomp.sdc.be.resources.data.auditing.model.*;
-import org.openecomp.sdc.common.datastructure.AuditingFieldsKey;
-import org.openecomp.sdc.common.log.wrappers.Logger;
-import org.springframework.beans.factory.annotation.Autowired;
-
-import java.io.*;
-import java.net.MalformedURLException;
-import java.net.URISyntaxException;
-import java.net.URL;
-import java.nio.file.Files;
-import java.nio.file.Paths;
-import java.util.EnumMap;
-import java.util.Map;
-
-/**
- * Created by mlando on 5/16/2016.
- */
-public class DataMigration {
-
- private ObjectMapper jsonMapper = new ObjectMapper();
-
- private static Logger log = Logger.getLogger(DataMigration.class.getName());
-
- private ElasticSearchClient elasticSearchClient;
- private AuditCassandraDao auditCassandraDao;
- private ArtifactCassandraDao artifactCassandraDao;
-
- @Autowired
- public DataMigration(AuditCassandraDao auditCassandraDao,
- ArtifactCassandraDao artifactCassandraDao) {
- this.auditCassandraDao = auditCassandraDao;
- this.artifactCassandraDao = artifactCassandraDao;
- }
-
- /**
- * the method exports and imports the records from ES to cassandra the flow
- * will check to see if the files are not empty if the files are not empty
- * the export will be skiped and the flow will use the existing files. the
- * flow will check if the tables in cassandra are empty, if the tables are
- * not empty the proces will stop and exit. if the tables are empty the
- * method will import the records from the files. in case of a fail the flow
- * will exit and clear all the Cassandra tables.
- *
- * @param appConfigDir
- * the location of the dir in wich the output files will be
- * stored
- * @param exportFromEs
- * should the es be exported again and overwrite the old export
- * @param importToCassandra
- * should we import the data into cassandra
- * @return true in case the operation was successful.
- */
- public boolean migrateDataESToCassndra(String appConfigDir, boolean exportFromEs, boolean importToCassandra) {
- if (!initEsClient()) {
- return false;
- }
- Map<Table, File> files = createOutPutFiles(appConfigDir, exportFromEs);
- if (files == null) {
- return false;
- }
- if (exportFromEs && filesEmpty(files)) {
- Map<Table, PrintWriter> printerWritersMap = createWriters(files);
- if (printerWritersMap == null) {
- return false;
- }
- try {
- ImmutableOpenMap<String, IndexMetaData> indexData = getIndexData();
- for (ObjectCursor<String> key : indexData.keys()) {
- if (("resources".equalsIgnoreCase(key.value) || key.value.startsWith("auditingevents"))
- && !exportArtifacts(key.value, printerWritersMap)) {
- return false;
- }
- }
- } finally {
- if (elasticSearchClient != null) {
- elasticSearchClient.close();
- }
- for (PrintWriter writer : printerWritersMap.values()) {
- writer.close();
- }
- }
- }
-
- return !importToCassandra || importToCassndra(files);
- }
-
- private boolean initEsClient() {
- String configHome = System.getProperty("config.home");
- URL url = null;
- Settings settings = null;
- try {
- if (SystemUtils.IS_OS_WINDOWS) {
- url = new URL("file:///" + configHome + "/elasticsearch.yml");
- } else {
- url = new URL("file:" + configHome + "/elasticsearch.yml");
- }
- log.debug("URL {}", url);
- settings = Settings.settingsBuilder().loadFromPath(Paths.get(url.toURI())).build();
- } catch (MalformedURLException | URISyntaxException e1) {
- log.error("Failed to create URL in order to load elasticsearch yml", e1);
- return true;
- }
-
- this.elasticSearchClient = new ElasticSearchClient();
- this.elasticSearchClient.setClusterName(settings.get("cluster.name"));
- this.elasticSearchClient.setLocal(settings.get("elasticSearch.local"));
- this.elasticSearchClient.setTransportClient(settings.get("elasticSearch.transportclient"));
- try {
- elasticSearchClient.initialize();
- } catch (URISyntaxException e) {
- log.error(e.getMessage());
- return false;
- }
- return true;
- }
-
- /**
- * the method clears all the cassandra tables
- */
- private void truncateCassandraTable() {
- log.info("import failed. truncating Cassandra tables.");
- artifactCassandraDao.deleteAllArtifacts();
- auditCassandraDao.deleteAllAudit();
- }
-
- /**
- * the method imports the records from the files into cassandra
- *
- * @param files
- * a map of files holding
- * @return true if the operation was successful
- */
- private boolean importToCassndra(Map<Table, File> files) {
- log.info("starting to import date into Cassandra.");
- if (!validtaTablsNotEmpty(files))
- return true;
- for (Table table : files.keySet()) {
- log.info("importing recordes into {}", table.getTableDescription().getTableName());
- if (!handleImport(files, table)) {
- truncateCassandraTable();
- return false;
- }
- }
- log.info("finished to import date into Cassandra.");
- return true;
- }
-
- private boolean validtaTablsNotEmpty(Map<Table, File> files) {
- for (Table table : files.keySet()) {
- Either<Boolean, CassandraOperationStatus> isTableEmptyRes = checkIfTableIsEmpty(table);
- if (isTableEmptyRes.isRight() || !isTableEmptyRes.left().value()) {
- log.error("Cassandra table {} is not empty operation aborted.",
- table.getTableDescription().getTableName());
- return false;
- }
- }
- return true;
- }
-
- /**
- * the method retrieves the fields from the given map and generates
- * corresponding audit event according to the table name
- *
- * @param map
- * the map from which we will retrieve the fields enum values
- * @param table
- * the table we are going to store the record in.
- * @return an AuditingGenericEvent event representing the audit record that is going to be
- * created.
- */
- AuditingGenericEvent createAuditEvent(Map<AuditingFieldsKey, String> map, Table table) {
- AuditEventFactory factory = null;
- switch (table) {
- case USER_ADMIN_EVENT:
- factory = getAuditUserAdminEventFactory(map);
- break;
- case USER_ACCESS_EVENT:
- factory = getAuditUserAccessEventFactory(map);
- break;
- case RESOURCE_ADMIN_EVENT:
- factory = getAuditResourceAdminEventMigrationFactory(map);
- break;
- case DISTRIBUTION_DOWNLOAD_EVENT:
- factory = getAuditDistributionDownloadEventFactory(map);
- break;
- case DISTRIBUTION_ENGINE_EVENT:
- factory = getAuditDistributionEngineEventMigrationFactory(map);
- break;
- case DISTRIBUTION_NOTIFICATION_EVENT:
- factory = getAuditDistributionNotificationEventFactory(map);
- break;
- case DISTRIBUTION_STATUS_EVENT:
- factory = getAuditDistributionStatusEventFactory(map);
- break;
- case DISTRIBUTION_DEPLOY_EVENT:
- factory = getAuditDistributionDeployEventFactory(map);
- break;
- case DISTRIBUTION_GET_UEB_CLUSTER_EVENT:
- factory = getAuditGetUebClusterEventFactory(map);
- break;
- case AUTH_EVENT:
- factory = getAuditAuthRequestEventFactory(map);
- break;
- case CONSUMER_EVENT:
- factory = getAuditConsumerEventFactory(map);
- break;
- case CATEGORY_EVENT:
- factory = getAuditCategoryEventFactory(map);
- break;
- case GET_USERS_LIST_EVENT:
- factory = getAuditGetUsersListEventFactory(map);
- break;
- case GET_CATEGORY_HIERARCHY_EVENT:
- factory = getAuditGetCategoryHierarchyEventFactory(map);
- break;
- default:
- break;
- }
- return factory != null ? factory.getDbEvent() : null;
- }
-
- private AuditEventFactory getAuditGetCategoryHierarchyEventFactory(Map<AuditingFieldsKey, String> map) {
- return new AuditGetCategoryHierarchyEventFactory(
- CommonAuditData.newBuilder()
- .description(map.get(AuditingFieldsKey.AUDIT_DESC))
- .status(map.get(AuditingFieldsKey.AUDIT_STATUS))
- .requestId(map.get(AuditingFieldsKey.AUDIT_REQUEST_ID))
- .serviceInstanceId(map.get(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID))
- .build(),
- map.get(AuditingFieldsKey.AUDIT_MODIFIER_UID),
- map.get(AuditingFieldsKey.AUDIT_DETAILS),
- map.get(AuditingFieldsKey.AUDIT_TIMESTAMP));
- }
-
- private AuditEventFactory getAuditGetUsersListEventFactory(Map<AuditingFieldsKey, String> map) {
- return new AuditGetUsersListEventFactory(
- CommonAuditData.newBuilder()
- .description(map.get(AuditingFieldsKey.AUDIT_DESC))
- .status(map.get(AuditingFieldsKey.AUDIT_STATUS))
- .requestId(map.get(AuditingFieldsKey.AUDIT_REQUEST_ID))
- .serviceInstanceId(map.get(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID))
- .build(),
- map.get(AuditingFieldsKey.AUDIT_MODIFIER_UID),
- map.get(AuditingFieldsKey.AUDIT_USER_DETAILS),
- map.get(AuditingFieldsKey.AUDIT_TIMESTAMP));
- }
-
- private AuditEventFactory getAuditCategoryEventFactory(Map<AuditingFieldsKey, String> map) {
- return new AuditCategoryEventFactory(
- AuditingActionEnum.fromName(map.get(AuditingFieldsKey.AUDIT_ACTION)),
- CommonAuditData.newBuilder()
- .description(map.get(AuditingFieldsKey.AUDIT_DESC))
- .status(map.get(AuditingFieldsKey.AUDIT_STATUS))
- .requestId(map.get(AuditingFieldsKey.AUDIT_REQUEST_ID))
- .serviceInstanceId(map.get(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID))
- .build(),
- map.get(AuditingFieldsKey.AUDIT_MODIFIER_UID),
- map.get(AuditingFieldsKey.AUDIT_CATEGORY_NAME),
- map.get(AuditingFieldsKey.AUDIT_SUB_CATEGORY_NAME),
- map.get(AuditingFieldsKey.AUDIT_GROUPING_NAME),
- map.get(AuditingFieldsKey.AUDIT_RESOURCE_TYPE),
- map.get(AuditingFieldsKey.AUDIT_TIMESTAMP));
- }
-
- private AuditEventFactory getAuditUserAccessEventFactory(Map<AuditingFieldsKey, String> map) {
- return new AuditUserAccessEventFactory(
- CommonAuditData.newBuilder()
- .description(map.get(AuditingFieldsKey.AUDIT_DESC))
- .status(map.get(AuditingFieldsKey.AUDIT_STATUS))
- .requestId(map.get(AuditingFieldsKey.AUDIT_REQUEST_ID))
- .serviceInstanceId(map.get(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID))
- .build(),
- map.get(AuditingFieldsKey.AUDIT_USER_UID),
- map.get(AuditingFieldsKey.AUDIT_TIMESTAMP));
- }
-
- private AuditEventFactory getAuditUserAdminEventFactory(Map<AuditingFieldsKey, String> map) {
- return new AuditUserAdminEventFactory(
- AuditingActionEnum.fromName(map.get(AuditingFieldsKey.AUDIT_ACTION)),
- CommonAuditData.newBuilder()
- .description(map.get(AuditingFieldsKey.AUDIT_DESC))
- .status(map.get(AuditingFieldsKey.AUDIT_STATUS))
- .requestId(map.get(AuditingFieldsKey.AUDIT_REQUEST_ID))
- .serviceInstanceId(map.get(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID))
- .build(),
- map.get(AuditingFieldsKey.AUDIT_MODIFIER_UID),
- map.get(AuditingFieldsKey.AUDIT_USER_BEFORE),
- map.get(AuditingFieldsKey.AUDIT_USER_AFTER),
- map.get(AuditingFieldsKey.AUDIT_TIMESTAMP));
- }
-
- private AuditEventFactory getAuditConsumerEventFactory(Map<AuditingFieldsKey, String> map) {
- return new AuditConsumerEventFactory(
- AuditingActionEnum.fromName(map.get(AuditingFieldsKey.AUDIT_ACTION)),
- CommonAuditData.newBuilder()
- .description(map.get(AuditingFieldsKey.AUDIT_DESC))
- .status(map.get(AuditingFieldsKey.AUDIT_STATUS))
- .requestId(map.get(AuditingFieldsKey.AUDIT_REQUEST_ID))
- .serviceInstanceId(map.get(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID))
- .build(),
- map.get(AuditingFieldsKey.AUDIT_MODIFIER_UID),
- map.get(AuditingFieldsKey.AUDIT_ECOMP_USER),
- map.get(AuditingFieldsKey.AUDIT_TIMESTAMP));
- }
-
- private AuditEventFactory getAuditAuthRequestEventFactory(Map<AuditingFieldsKey, String> map) {
- return new AuditAuthRequestEventFactory(
- CommonAuditData.newBuilder()
- .description(map.get(AuditingFieldsKey.AUDIT_DESC))
- .status(map.get(AuditingFieldsKey.AUDIT_STATUS))
- .requestId(map.get(AuditingFieldsKey.AUDIT_REQUEST_ID))
- .serviceInstanceId(map.get(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID))
- .build(),
- map.get(AuditingFieldsKey.AUDIT_USER_UID),
- map.get(AuditingFieldsKey.AUDIT_AUTH_URL),
- map.get(AuditingFieldsKey.AUDIT_AUTH_REALM),
- map.get(AuditingFieldsKey.AUDIT_AUTH_STATUS),
- map.get(AuditingFieldsKey.AUDIT_TIMESTAMP));
- }
-
- private AuditEventFactory getAuditGetUebClusterEventFactory(Map<AuditingFieldsKey, String> map) {
- return new AuditGetUebClusterEventFactory(
- CommonAuditData.newBuilder()
- .description(map.get(AuditingFieldsKey.AUDIT_DESC))
- .status(map.get(AuditingFieldsKey.AUDIT_STATUS))
- .requestId(map.get(AuditingFieldsKey.AUDIT_REQUEST_ID))
- .serviceInstanceId(map.get(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID))
- .build(),
- map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_CONSUMER_ID),
- map.get(AuditingFieldsKey.AUDIT_TIMESTAMP));
- }
-
- private AuditEventFactory getAuditResourceAdminEventMigrationFactory(Map<AuditingFieldsKey, String> map) {
- return new AuditResourceAdminEventMigrationFactory(
- AuditingActionEnum.fromName(map.get(AuditingFieldsKey.AUDIT_ACTION)),
- CommonAuditData.newBuilder()
- .description(map.get(AuditingFieldsKey.AUDIT_DESC))
- .status(map.get(AuditingFieldsKey.AUDIT_STATUS))
- .requestId(map.get(AuditingFieldsKey.AUDIT_REQUEST_ID))
- .serviceInstanceId(map.get(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID))
- .build(),
- new ResourceCommonInfo(map.get(AuditingFieldsKey.AUDIT_RESOURCE_NAME),
- map.get(AuditingFieldsKey.AUDIT_RESOURCE_TYPE)),
- ResourceVersionInfo.newBuilder()
- .artifactUuid(map.get(AuditingFieldsKey.AUDIT_PREV_ARTIFACT_UUID))
- .state(map.get(AuditingFieldsKey.AUDIT_RESOURCE_PREV_STATE))
- .version(map.get(AuditingFieldsKey.AUDIT_RESOURCE_PREV_VERSION))
- .distributionStatus(map.get(AuditingFieldsKey.AUDIT_RESOURCE_DPREV_STATUS))
- .build(),
- ResourceVersionInfo.newBuilder()
- .artifactUuid(map.get(AuditingFieldsKey.AUDIT_CURR_ARTIFACT_UUID))
- .state(map.get(AuditingFieldsKey.AUDIT_RESOURCE_CURR_STATE))
- .version(map.get(AuditingFieldsKey.AUDIT_RESOURCE_CURR_VERSION))
- .distributionStatus(map.get(AuditingFieldsKey.AUDIT_RESOURCE_DCURR_STATUS))
- .build(),
- map.get(AuditingFieldsKey.AUDIT_INVARIANT_UUID),
- map.get(AuditingFieldsKey.AUDIT_MODIFIER_UID),
- map.get(AuditingFieldsKey.AUDIT_ARTIFACT_DATA),
- map.get(AuditingFieldsKey.AUDIT_RESOURCE_COMMENT),
- map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_ID),
- map.get(AuditingFieldsKey.AUDIT_RESOURCE_TOSCA_NODE_TYPE),
- map.get(AuditingFieldsKey.AUDIT_TIMESTAMP));
- }
-
- private AuditEventFactory getAuditDistributionDownloadEventFactory(Map<AuditingFieldsKey, String> map) {
- return new AuditDistributionDownloadEventFactory(
- CommonAuditData.newBuilder()
- .description(map.get(AuditingFieldsKey.AUDIT_DESC))
- .status(map.get(AuditingFieldsKey.AUDIT_STATUS))
- .requestId(map.get(AuditingFieldsKey.AUDIT_REQUEST_ID))
- .serviceInstanceId(map.get(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID))
- .build(),
- new DistributionData(map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_CONSUMER_ID),
- map.get(AuditingFieldsKey.AUDIT_RESOURCE_URL)),
- map.get(AuditingFieldsKey.AUDIT_TIMESTAMP));
- }
-
- private AuditEventFactory getAuditDistributionEngineEventMigrationFactory(Map<AuditingFieldsKey, String> map) {
- return new AuditDistributionEngineEventMigrationFactory(
- AuditingActionEnum.fromName(map.get(AuditingFieldsKey.AUDIT_ACTION)),
- CommonAuditData.newBuilder()
- .description(map.get(AuditingFieldsKey.AUDIT_DESC))
- .status(map.get(AuditingFieldsKey.AUDIT_STATUS))
- .requestId(map.get(AuditingFieldsKey.AUDIT_REQUEST_ID))
- .serviceInstanceId(map.get(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID))
- .build(),
- DistributionTopicData.newBuilder()
- .notificationTopic(map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_NOTIFICATION_TOPIC_NAME))
- .statusTopic(map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_STATUS_TOPIC_NAME))
- .build(),
- map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_CONSUMER_ID),
- map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_API_KEY),
- map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_ENVRIONMENT_NAME),
- map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_ROLE),
- map.get(AuditingFieldsKey.AUDIT_TIMESTAMP));
- }
-
- private AuditEventFactory getAuditDistributionDeployEventFactory(Map<AuditingFieldsKey, String> map) {
- return new AuditDistributionDeployEventFactory(
- CommonAuditData.newBuilder()
- .description(map.get(AuditingFieldsKey.AUDIT_DESC))
- .status(map.get(AuditingFieldsKey.AUDIT_STATUS))
- .requestId(map.get(AuditingFieldsKey.AUDIT_REQUEST_ID))
- .serviceInstanceId(map.get(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID))
- .build(),
- new ResourceCommonInfo(map.get(AuditingFieldsKey.AUDIT_RESOURCE_NAME),
- map.get(AuditingFieldsKey.AUDIT_RESOURCE_TYPE)),
- map.get(AuditingFieldsKey.AUDIT_RESOURCE_CURR_VERSION),
- map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_ID),
- map.get(AuditingFieldsKey.AUDIT_MODIFIER_UID),
- map.get(AuditingFieldsKey.AUDIT_TIMESTAMP));
- }
-
- private AuditEventFactory getAuditDistributionStatusEventFactory(Map<AuditingFieldsKey, String> map) {
- return new AuditDistributionStatusEventFactory(
- CommonAuditData.newBuilder()
- .description(map.get(AuditingFieldsKey.AUDIT_DESC))
- .status(map.get(AuditingFieldsKey.AUDIT_STATUS))
- .requestId(map.get(AuditingFieldsKey.AUDIT_REQUEST_ID))
- .serviceInstanceId(map.get(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID))
- .build(),
- new DistributionData(map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_CONSUMER_ID),
- map.get(AuditingFieldsKey.AUDIT_RESOURCE_URL)),
- map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_ID),
- map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_TOPIC_NAME),
- map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_STATUS_TIME),
- map.get(AuditingFieldsKey.AUDIT_TIMESTAMP));
- }
-
- private AuditEventFactory getAuditDistributionNotificationEventFactory(Map<AuditingFieldsKey, String> map) {
- return new AuditDistributionNotificationEventFactory(
- CommonAuditData.newBuilder()
- .description(map.get(AuditingFieldsKey.AUDIT_DESC))
- .status(map.get(AuditingFieldsKey.AUDIT_STATUS))
- .requestId(map.get(AuditingFieldsKey.AUDIT_REQUEST_ID))
- .serviceInstanceId(map.get(AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID))
- .build(),
- new ResourceCommonInfo(map.get(AuditingFieldsKey.AUDIT_RESOURCE_NAME),
- map.get(AuditingFieldsKey.AUDIT_RESOURCE_TYPE)),
- ResourceVersionInfo.newBuilder()
- .state(map.get(AuditingFieldsKey.AUDIT_RESOURCE_CURR_STATE))
- .version(map.get(AuditingFieldsKey.AUDIT_RESOURCE_CURR_VERSION))
- .build(),
- map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_ID),
- map.get(AuditingFieldsKey.AUDIT_MODIFIER_UID),
- map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_TOPIC_NAME),
- new OperationalEnvAuditData(map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_ENVIRONMENT_ID),
- map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_VNF_WORKLOAD_CONTEXT),
- map.get(AuditingFieldsKey.AUDIT_DISTRIBUTION_TENANT)),
- map.get(AuditingFieldsKey.AUDIT_TIMESTAMP));
- }
-
-
-
- /**
- * the method reads the content of the file intended for a given table, and
- * sores them in cassandra
- *
- * @param files
- * a map of files from which the recordes will be retrieved.
- * @param table
- * the name of the table we want to look up in the files and sore
- * in Cassandra // * @param store the function to call when
- * storing recordes in cassndra
- * @return true if the operation was successful
- */
- private boolean handleImport(Map<Table, File> files, Table table) {
- BufferedReader br = null;
- try {
- br = new BufferedReader(new FileReader(files.get(table)));
- String line = null;
- while ((line = br.readLine()) != null) {
- CassandraOperationStatus res = CassandraOperationStatus.GENERAL_ERROR;
- if (Table.ARTIFACT.equals(table)) {
- res = artifactCassandraDao.saveArtifact(jsonMapper.readValue(line, ESArtifactData.class));
- }
- else {
- AuditingGenericEvent recordForCassandra = createAuditRecordForCassandra(line, table);
- if (recordForCassandra != null) {
- res = auditCassandraDao.saveRecord(recordForCassandra);
- }
- }
- if (!res.equals(CassandraOperationStatus.OK)) {
- log.error("save recored to cassndra {} failed with status {} aborting.",
- table.getTableDescription().getTableName(), res);
- return false;
- }
- }
- return true;
- } catch (IOException e) {
- log.error("failed to read file", e);
- return false;
- } finally {
- if (br != null) {
- try {
- br.close();
- } catch (IOException e) {
- log.error("failed to close file reader", e);
- }
- }
- }
- }
-
- AuditingGenericEvent createAuditRecordForCassandra(String json, Table table) throws IOException{
- return createAuditEvent(parseToMap(json), table);
- }
-
- private Map<AuditingFieldsKey, String> parseToMap(String json) throws IOException {
- return jsonMapper.readValue(json, new TypeReference<Map<AuditingFieldsKey, String>>(){});
- }
-
- /**
- * the method checks if the given table is empty
- *
- * @param table
- * the name of the table we want to check
- * @return true if the table is empty
- */
- private Either<Boolean, CassandraOperationStatus> checkIfTableIsEmpty(Table table) {
- if (Table.ARTIFACT.equals(table)) {
- return artifactCassandraDao.isTableEmpty(table.getTableDescription().getTableName());
- } else {
- return auditCassandraDao.isTableEmpty(table.getTableDescription().getTableName());
- }
- }
-
- private boolean filesEmpty(Map<Table, File> files) {
- for (Table table : files.keySet()) {
- File file = files.get(table);
- if (file.length() != 0) {
- log.info("file:{} is not empty skipping export", table.getTableDescription().getTableName());
- return false;
- }
- }
- return true;
- }
-
- /**
- * the method reads the records from es index of audit's into a file as
- * json's.
- *
- * @param value
- * the name of the index we want
- * @param printerWritersMap
- * a map of the writers we use to write to a file.
- * @return true in case the export was successful.
- */
- private boolean exportAudit(String value, Map<Table, PrintWriter> printerWritersMap) {
- log.info("stratng to export audit data from es index{} to file.", value);
- QueryBuilder queryBuilder = QueryBuilders.matchAllQuery();
- SearchResponse scrollResp = elasticSearchClient.getClient().prepareSearch(value).setScroll(new TimeValue(60000))
- .setQuery(queryBuilder).setSize(100).execute().actionGet();
- while (true) {
- for (SearchHit hit : scrollResp.getHits().getHits()) {
- PrintWriter out = printerWritersMap.get(TypeToTableMapping.getTableByType(hit.getType()));
- out.println(hit.getSourceAsString());
- }
- scrollResp = elasticSearchClient.getClient().prepareSearchScroll(scrollResp.getScrollId())
- .setScroll(new TimeValue(60000)).execute().actionGet();
- if (scrollResp.getHits().getHits().length == 0) {
- break;
-
- }
- }
-
- log.info("export audit data from es to file. finished succsesfully");
- return true;
- }
-
- /**
- * the method reads the records from es index of resources into a file as
- * json's.
- *
- * @param index
- * the name of the index we want to read
- * @param printerWritersMap
- * a map of the writers we use to write to a file.
- * @return true in case the export was successful.
- */
- private boolean exportArtifacts(String index, Map<Table, PrintWriter> printerWritersMap) {
- log.info("stratng to export artifact data from es to file.");
- PrintWriter out = printerWritersMap.get(Table.ARTIFACT);
- QueryBuilder queryBuilder = QueryBuilders.matchAllQuery();
- SearchResponse scrollResp = elasticSearchClient.getClient().prepareSearch(index).setScroll(new TimeValue(60000))
- .setQuery(queryBuilder).setSize(100).execute().actionGet();
- while (true) {
- for (SearchHit hit : scrollResp.getHits().getHits()) {
- ;
- out.println(hit.getSourceAsString());
- }
- scrollResp = elasticSearchClient.getClient().prepareSearchScroll(scrollResp.getScrollId())
- .setScroll(new TimeValue(60000)).execute().actionGet();
- if (scrollResp.getHits().getHits().length == 0) {
- break;
-
- }
- }
-
- log.info("export artifact data from es to file. finished succsesfully");
- return true;
- }
-
- /**
- * the method retrieves all the indexes from elasticsearch
- *
- * @return a map of indexes and there metadata
- */
- private ImmutableOpenMap<String, IndexMetaData> getIndexData() {
- return elasticSearchClient.getClient().admin().cluster().prepareState().get().getState().getMetaData()
- .getIndices();
- }
-
- /**
- * the method creates all the files and dir which holds them. in case the
- * files exist they will not be created again.
- *
- * @param appConfigDir
- * the base path under which the output dir will be created and
- * the export result files the created filesa are named according
- * to the name of the table into which it will be imported.
- * @param exportToEs
- * if true all the export files will be recreated
- * @returnthe returns a map of tables and the files representing them them
- */
- private Map<Table, File> createOutPutFiles(String appConfigDir, boolean exportToEs) {
- Map<Table, File> result = new EnumMap<Table, File>(Table.class);
- File outputDir = new File(appConfigDir + "/output/");
- if (!createOutPutFolder(outputDir)) {
- return null;
- }
- for (Table table : Table.values()) {
- File file = new File(outputDir + "/" + table.getTableDescription().getTableName());
- if (exportToEs) {
- try {
- if (file.exists()) {
- Files.delete(file.toPath());
- }
- } catch (IOException e) {
- log.error("failed to delete output file {}", file.getAbsolutePath(), e);
- return null;
- }
- file = new File(outputDir + "/" + table.getTableDescription().getTableName());
- }
- if (!file.exists()) {
- try {
- file.createNewFile();
- } catch (IOException e) {
- log.error("failed to create output file {}", file.getAbsolutePath(), e);
- return null;
- }
- }
- result.put(table, file);
-
- }
- return result;
- }
-
- /**
- * the method create the writers to each file
- *
- * @param files
- * a map of the files according to table
- * @return returns a map of writers according to table.
- */
- private Map<Table, PrintWriter> createWriters(Map<Table, File> files) {
- Map<Table, PrintWriter> printerWritersMap = new EnumMap<>(Table.class);
-
- for (Table table : files.keySet()) {
- log.info("creating writer for {}", table);
- File file = files.get(table);
- try(PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter(file)) )){
- printerWritersMap.put(table, out);
- log.info("creating writer for {} was successful", table);
- } catch (IOException e) {
- log.error("create writer to file failed",e);
- return null;
- }
- }
- return printerWritersMap;
- }
-
- /**
- * the method creates the output dir in case it does not exist
- *
- * @param outputDir
- * the path under wich the directory will be created.
- * @return true in case the create was succsesful or the dir already exists
- */
- private boolean createOutPutFolder(File outputDir) {
- if (!outputDir.exists()) {
- log.info("creating output dir {}", outputDir.getAbsolutePath());
- try {
- Files.createDirectories(outputDir.toPath());
- } catch (IOException e) {
- log.error("failed to create output dir {}", outputDir.getAbsolutePath(), e);
- return false;
- }
- }
- return true;
- }
-
- public enum TypeToTableMapping {
- USER_ADMIN_EVENT_TYPE(AuditingTypesConstants.USER_ADMIN_EVENT_TYPE,
- Table.USER_ADMIN_EVENT), USER_ACCESS_EVENT_TYPE(AuditingTypesConstants.USER_ACCESS_EVENT_TYPE,
- Table.USER_ACCESS_EVENT), RESOURCE_ADMIN_EVENT_TYPE(
- AuditingTypesConstants.RESOURCE_ADMIN_EVENT_TYPE,
- Table.RESOURCE_ADMIN_EVENT), DISTRIBUTION_DOWNLOAD_EVENT_TYPE(
- AuditingTypesConstants.DISTRIBUTION_DOWNLOAD_EVENT_TYPE,
- Table.DISTRIBUTION_DOWNLOAD_EVENT), DISTRIBUTION_ENGINE_EVENT_TYPE(
- AuditingTypesConstants.DISTRIBUTION_ENGINE_EVENT_TYPE,
- Table.DISTRIBUTION_ENGINE_EVENT), DISTRIBUTION_NOTIFICATION_EVENT_TYPE(
- AuditingTypesConstants.DISTRIBUTION_NOTIFICATION_EVENT_TYPE,
- Table.DISTRIBUTION_NOTIFICATION_EVENT), DISTRIBUTION_STATUS_EVENT_TYPE(
- AuditingTypesConstants.DISTRIBUTION_STATUS_EVENT_TYPE,
- Table.DISTRIBUTION_STATUS_EVENT), DISTRIBUTION_DEPLOY_EVENT_TYPE(
- AuditingTypesConstants.DISTRIBUTION_DEPLOY_EVENT_TYPE,
- Table.DISTRIBUTION_DEPLOY_EVENT), DISTRIBUTION_GET_UEB_CLUSTER_EVENT_TYPE(
- AuditingTypesConstants.DISTRIBUTION_GET_UEB_CLUSTER_EVENT_TYPE,
- Table.DISTRIBUTION_GET_UEB_CLUSTER_EVENT), AUTH_EVENT_TYPE(
- AuditingTypesConstants.AUTH_EVENT_TYPE,
- Table.AUTH_EVENT), CONSUMER_EVENT_TYPE(
- AuditingTypesConstants.CONSUMER_EVENT_TYPE,
- Table.CONSUMER_EVENT), CATEGORY_EVENT_TYPE(
- AuditingTypesConstants.CATEGORY_EVENT_TYPE,
- Table.CATEGORY_EVENT), GET_USERS_LIST_EVENT_TYPE(
- AuditingTypesConstants.GET_USERS_LIST_EVENT_TYPE,
- Table.GET_USERS_LIST_EVENT), GET_CATEGORY_HIERARCHY_EVENT_TYPE(
- AuditingTypesConstants.GET_CATEGORY_HIERARCHY_EVENT_TYPE,
- Table.GET_CATEGORY_HIERARCHY_EVENT);
-
- String typeName;
- Table table;
-
- TypeToTableMapping(String typeName, Table table) {
- this.typeName = typeName;
- this.table = table;
- }
-
- public String getTypeName() {
- return typeName;
- }
-
- public Table getTable() {
- return table;
- }
-
- public static Table getTableByType(String type) {
- for (TypeToTableMapping mapping : TypeToTableMapping.values()) {
- if (mapping.getTypeName().equalsIgnoreCase(type)) {
- return mapping.getTable();
- }
- }
- return null;
- }
- }
-
-}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/EsToCassandraDataMigrationConfig.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/EsToCassandraDataMigrationConfig.java
deleted file mode 100644
index 6b15cb0075..0000000000
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/EsToCassandraDataMigrationConfig.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * 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=========================================================
- */
-
-package org.openecomp.sdc.asdctool.impl;
-
-import org.openecomp.sdc.be.dao.cassandra.ArtifactCassandraDao;
-import org.openecomp.sdc.be.dao.cassandra.AuditCassandraDao;
-import org.openecomp.sdc.be.dao.cassandra.CassandraClient;
-import org.openecomp.sdc.be.dao.cassandra.SdcSchemaFilesCassandraDao;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-
-@Configuration
-public class EsToCassandraDataMigrationConfig {
- @Bean(name = "DataMigrationBean")
- public DataMigration dataMigration(AuditCassandraDao auditCassandraDao, ArtifactCassandraDao artifactCassandraDao) {
- return new DataMigration(auditCassandraDao, artifactCassandraDao);
- }
-
- @Bean(name = "artifact-cassandra-dao")
- public ArtifactCassandraDao artifactCassandraDao(CassandraClient cassandraClient) {
- return new ArtifactCassandraDao(cassandraClient);
- }
-
- @Bean(name = "audit-cassandra-dao")
- public AuditCassandraDao auditCassandraDao(CassandraClient cassandraClient) {
- return new AuditCassandraDao(cassandraClient);
- }
-
- @Bean(name = "cassandra-client")
- public CassandraClient cassandraClient() {
- return new CassandraClient();
- }
-
- @Bean(name = "sdc-schema-files-cassandra-dao")
- public SdcSchemaFilesCassandraDao sdcSchemaFilesCassandraDao(CassandraClient cassandraClient) {
- return new SdcSchemaFilesCassandraDao(cassandraClient);
- }
-}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/GraphJsonValidator.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/GraphJsonValidator.java
index 57a7c251aa..2b96ba30b8 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/GraphJsonValidator.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/GraphJsonValidator.java
@@ -22,7 +22,6 @@ package org.openecomp.sdc.asdctool.impl;
import com.fasterxml.jackson.databind.ObjectMapper;
-import java.util.stream.Stream;
import org.openecomp.sdc.common.log.wrappers.Logger;
import java.io.IOException;
@@ -31,6 +30,7 @@ import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;
+import java.util.stream.Stream;
/**
* simple util class to verify that the janusgraph export json graph is not corrupted
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/GraphMLConverter.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/GraphMLConverter.java
index deb766fff9..ae4a55903a 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/GraphMLConverter.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/GraphMLConverter.java
@@ -21,20 +21,6 @@
package org.openecomp.sdc.asdctool.impl;
import com.google.gson.Gson;
-import java.io.BufferedInputStream;
-import java.io.BufferedOutputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.FileWriter;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
import org.apache.commons.configuration.BaseConfiguration;
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.tinkerpop.gremlin.structure.Element;
@@ -54,6 +40,21 @@ import org.openecomp.sdc.be.dao.neo4j.GraphPropertiesDictionary;
import org.openecomp.sdc.be.datatypes.enums.NodeTypeEnum;
import org.openecomp.sdc.common.log.wrappers.Logger;
+import java.io.BufferedInputStream;
+import java.io.BufferedOutputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.FileWriter;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+
public class GraphMLConverter {
private static final String STORAGE_BACKEND = "storage.backend";
@@ -95,6 +96,7 @@ public class GraphMLConverter {
return importJsonGraph(graph, inputFile, propertiesCriteriaToDelete);
} catch (Exception e) {
+ e.printStackTrace();
log.info("import graph failed ", e);
return false;
} finally {
@@ -121,6 +123,7 @@ public class GraphMLConverter {
log.info(LOG_FORMATTER, EXPORTED_FILE, result);
} catch (Exception e) {
+ e.printStackTrace();
log.info("export graph failed ", e);
return false;
} finally {
@@ -145,6 +148,7 @@ public class GraphMLConverter {
log.info(LOG_FORMATTER, EXPORTED_FILE, result);
} catch (Exception e) {
+ e.printStackTrace();
log.info("export exportGraphMl failed ", e);
return null;
} finally {
@@ -172,6 +176,7 @@ public class GraphMLConverter {
log.info(LOG_FORMATTER, EXPORTED_FILE, result);
} catch (Exception e) {
+ e.printStackTrace();
log.info("find Error In Json Graph failed ", e);
return false;
} finally {
@@ -208,8 +213,10 @@ public class GraphMLConverter {
result = outputFile;
} catch (Exception e) {
+ e.printStackTrace();
log.info("export Json Graph failed ", e);
graph.tx().rollback();
+ e.printStackTrace();
}
return result;
@@ -227,6 +234,7 @@ public class GraphMLConverter {
graph.tx().commit();
} catch (Exception e) {
graph.tx().rollback();
+ e.printStackTrace();
log.info("export Graph Ml failed ", e);
}
return result;
@@ -278,7 +286,9 @@ public class GraphMLConverter {
} catch (Exception e) {
log.info("Failed to import graph ", e);
+ e.printStackTrace();
graph.tx().rollback();
+ e.printStackTrace();
}
return result;
@@ -306,8 +316,10 @@ public class GraphMLConverter {
graph.tx().rollback();
} catch (Exception e) {
+ e.printStackTrace();
log.info("find Error In Json Graph failed ", e);
graph.tx().rollback();
+ e.printStackTrace();
}
return result;
@@ -355,8 +367,10 @@ public class GraphMLConverter {
result = outputFile;
} catch (Exception e) {
+ e.printStackTrace();
log.info("export Users failed ", e);
graph.tx().rollback();
+ e.printStackTrace();
}
return result;
@@ -397,6 +411,7 @@ public class GraphMLConverter {
log.info(EXPORTED_FILE, result);
} catch (Exception e) {
+ e.printStackTrace();
log.info("export Users failed ", e);
return false;
} finally {
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/GraphMLDataAnalyzer.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/GraphMLDataAnalyzer.java
index 853709225a..21e22be10c 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/GraphMLDataAnalyzer.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/GraphMLDataAnalyzer.java
@@ -20,12 +20,6 @@
package org.openecomp.sdc.asdctool.impl;
-import java.io.File;
-import java.io.FileOutputStream;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
@@ -38,6 +32,13 @@ import org.jdom2.util.IteratorIterable;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import java.io.File;
+import java.io.FileOutputStream;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
public class GraphMLDataAnalyzer {
private static Logger log = LoggerFactory.getLogger(GraphMLDataAnalyzer.class);
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/JanusGraphInitializer.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/JanusGraphInitializer.java
index fbebe2cd27..33fbf29f17 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/JanusGraphInitializer.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/JanusGraphInitializer.java
@@ -20,12 +20,16 @@
package org.openecomp.sdc.asdctool.impl;
-import org.janusgraph.core.*;
+import org.apache.tinkerpop.gremlin.structure.Edge;
+import org.apache.tinkerpop.gremlin.structure.Vertex;
+import org.janusgraph.core.JanusGraph;
+import org.janusgraph.core.JanusGraphException;
+import org.janusgraph.core.JanusGraphFactory;
+import org.janusgraph.core.JanusGraphQuery;
+import org.janusgraph.core.PropertyKey;
import org.janusgraph.core.schema.ConsistencyModifier;
import org.janusgraph.core.schema.JanusGraphIndex;
import org.janusgraph.core.schema.JanusGraphManagement;
-import org.apache.tinkerpop.gremlin.structure.Edge;
-import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.openecomp.sdc.be.dao.graph.datatype.ActionEnum;
import org.openecomp.sdc.be.dao.graph.datatype.GraphElementTypeEnum;
import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/ProductLogic.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/ProductLogic.java
index 883f5e50f4..e60640fa26 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/ProductLogic.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/ProductLogic.java
@@ -20,10 +20,10 @@
package org.openecomp.sdc.asdctool.impl;
-import org.janusgraph.core.JanusGraphFactory;
+import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.janusgraph.core.JanusGraph;
+import org.janusgraph.core.JanusGraphFactory;
import org.janusgraph.core.JanusGraphVertex;
-import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.openecomp.sdc.be.dao.neo4j.GraphPropertiesDictionary;
import org.openecomp.sdc.be.datatypes.enums.NodeTypeEnum;
import org.openecomp.sdc.common.log.wrappers.Logger;
@@ -75,7 +75,8 @@ public class ProductLogic {
graph.tx().commit();
return productsToDelete;
} catch (Exception e) {
- log.info("get All Products failed - {}" , e);
+ e.printStackTrace();
+ log.info("get All Products failed - {}" , e);
if(graph != null) {
graph.tx().rollback();
}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/UpdatePropertyOnVertex.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/UpdatePropertyOnVertex.java
index 9911fb73f3..7f9064fe71 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/UpdatePropertyOnVertex.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/UpdatePropertyOnVertex.java
@@ -20,10 +20,10 @@
package org.openecomp.sdc.asdctool.impl;
-import org.janusgraph.core.JanusGraphFactory;
+import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.janusgraph.core.JanusGraph;
+import org.janusgraph.core.JanusGraphFactory;
import org.janusgraph.core.JanusGraphQuery;
-import org.apache.tinkerpop.gremlin.structure.Vertex;
import org.openecomp.sdc.asdctool.Utils;
import org.openecomp.sdc.be.dao.neo4j.GraphPropertiesDictionary;
import org.openecomp.sdc.be.model.LifecycleStateEnum;
@@ -99,7 +99,7 @@ public class UpdatePropertyOnVertex {
return numberOfUpdatedVertexes;
} catch (Exception e) {
- log.info("update Property On Service At Least Certified failed -{}" , e);
+ e.printStackTrace();
graph.tx().rollback();
return null;
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/VrfObjectFixHandler.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/VrfObjectFixHandler.java
index cee0ded669..3633be7c98 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/VrfObjectFixHandler.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/VrfObjectFixHandler.java
@@ -42,7 +42,11 @@ import org.openecomp.sdc.be.model.operations.StorageException;
import org.openecomp.sdc.common.log.wrappers.Logger;
import java.io.IOException;
-import java.util.*;
+import java.util.EnumMap;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
import static java.util.Collections.emptyList;
import static java.util.stream.Collectors.toList;
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/internal/tool/CommonInternalTool.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/internal/tool/CommonInternalTool.java
index 1808175d99..0adaf51ed5 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/internal/tool/CommonInternalTool.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/internal/tool/CommonInternalTool.java
@@ -19,13 +19,13 @@
*/
package org.openecomp.sdc.asdctool.impl.internal.tool;
-import java.io.IOException;
-import java.util.Map;
-
import org.openecomp.sdc.asdctool.utils.ConsoleWriter;
import org.openecomp.sdc.asdctool.utils.ReportWriter;
import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
+import java.io.IOException;
+import java.util.Map;
+
public abstract class CommonInternalTool {
protected ReportWriter reportWriter;
private String reportType;
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/internal/tool/CsarGenerator.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/internal/tool/CsarGenerator.java
index 78f0ecbc88..8d74ea5abb 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/internal/tool/CsarGenerator.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/internal/tool/CsarGenerator.java
@@ -19,24 +19,14 @@
*/
package org.openecomp.sdc.asdctool.impl.internal.tool;
-import java.io.IOException;
-import java.util.EnumMap;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-import java.util.Scanner;
-import java.util.function.Supplier;
-import java.util.stream.Collectors;
-
import org.openecomp.sdc.asdctool.utils.ConsoleWriter;
import org.openecomp.sdc.be.dao.cassandra.ArtifactCassandraDao;
+import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.dao.jsongraph.types.EdgeLabelEnum;
import org.openecomp.sdc.be.dao.jsongraph.types.JsonParseFlagEnum;
import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
-import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
import org.openecomp.sdc.be.datatypes.elements.ArtifactDataDefinition;
import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
@@ -45,7 +35,7 @@ import org.openecomp.sdc.be.model.Component;
import org.openecomp.sdc.be.model.LifecycleStateEnum;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
import org.openecomp.sdc.be.model.operations.impl.UniqueIdBuilder;
-import org.openecomp.sdc.be.resources.data.ESArtifactData;
+import org.openecomp.sdc.be.resources.data.DAOArtifactData;
import org.openecomp.sdc.be.tosca.CsarUtils;
import org.openecomp.sdc.be.tosca.ToscaExportHandler;
import org.openecomp.sdc.common.api.ArtifactTypeEnum;
@@ -53,6 +43,16 @@ import org.openecomp.sdc.common.log.wrappers.Logger;
import org.openecomp.sdc.common.util.GeneralUtility;
import org.springframework.beans.factory.annotation.Autowired;
+import java.io.IOException;
+import java.util.EnumMap;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Scanner;
+import java.util.function.Supplier;
+import java.util.stream.Collectors;
+
@org.springframework.stereotype.Component("csarGenerator")
public class CsarGenerator extends CommonInternalTool {
@@ -174,7 +174,7 @@ public class CsarGenerator extends CommonInternalTool {
csarArtifact.setArtifactChecksum(GeneralUtility.calculateMD5Base64EncodedByByteArray(decodedPayload));
- ESArtifactData artifactData = new ESArtifactData(csarArtifact.getEsId(), decodedPayload);
+ DAOArtifactData artifactData = new DAOArtifactData(csarArtifact.getEsId(), decodedPayload);
artifactCassandraDao.saveArtifact(artifactData);
ConsoleWriter.dataLine("Artifact generated and saved into Cassandra ", csarArtifact.getArtifactLabel());
report(component, csarArtifact);
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/internal/tool/DeleteComponentHandler.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/internal/tool/DeleteComponentHandler.java
index 3bd13d0eff..62dd489810 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/internal/tool/DeleteComponentHandler.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/internal/tool/DeleteComponentHandler.java
@@ -19,11 +19,11 @@
*/
package org.openecomp.sdc.asdctool.impl.internal.tool;
-import org.janusgraph.core.JanusGraphVertex;
import fj.data.Either;
import org.apache.tinkerpop.gremlin.structure.Direction;
import org.apache.tinkerpop.gremlin.structure.Edge;
import org.apache.tinkerpop.gremlin.structure.Vertex;
+import org.janusgraph.core.JanusGraphVertex;
import org.openecomp.sdc.asdctool.utils.ConsoleWriter;
import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/config/ValidationConfigManager.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/config/ValidationConfigManager.java
index cc75dfc968..cdb3b2c5a5 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/config/ValidationConfigManager.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/config/ValidationConfigManager.java
@@ -24,14 +24,14 @@
package org.openecomp.sdc.asdctool.impl.validator.config;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
/**
* Created by chaya on 7/4/2017.
*/
@@ -76,6 +76,7 @@ public class ValidationConfigManager {
input = new FileInputStream(path);
prop.load(input);
} catch (IOException ex) {
+ ex.printStackTrace();
log.info("FileInputStream failed - {}", ex);
}
return prop;
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/config/ValidationToolConfiguration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/config/ValidationToolConfiguration.java
index d59a9aae6a..b83417c6c1 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/config/ValidationToolConfiguration.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/config/ValidationToolConfiguration.java
@@ -20,11 +20,16 @@
package org.openecomp.sdc.asdctool.impl.validator.config;
-import java.util.List;
import org.openecomp.sdc.asdctool.impl.VrfObjectFixHandler;
import org.openecomp.sdc.asdctool.impl.validator.ArtifactToolBL;
import org.openecomp.sdc.asdctool.impl.validator.ValidationToolBL;
-import org.openecomp.sdc.asdctool.impl.validator.executers.*;
+import org.openecomp.sdc.asdctool.impl.validator.executers.IArtifactValidatorExecuter;
+import org.openecomp.sdc.asdctool.impl.validator.executers.NodeToscaArtifactsValidatorExecuter;
+import org.openecomp.sdc.asdctool.impl.validator.executers.ServiceToscaArtifactsValidatorExecutor;
+import org.openecomp.sdc.asdctool.impl.validator.executers.ServiceValidatorExecuter;
+import org.openecomp.sdc.asdctool.impl.validator.executers.VFToscaArtifactValidatorExecutor;
+import org.openecomp.sdc.asdctool.impl.validator.executers.ValidatorExecuter;
+import org.openecomp.sdc.asdctool.impl.validator.executers.VfValidatorExecuter;
import org.openecomp.sdc.asdctool.impl.validator.tasks.VfValidationTask;
import org.openecomp.sdc.asdctool.impl.validator.tasks.artifacts.ArtifactValidationUtils;
import org.openecomp.sdc.asdctool.impl.validator.tasks.artifacts.ServiceArtifactValidationTask;
@@ -46,7 +51,13 @@ import org.openecomp.sdc.be.dao.janusgraph.JanusGraphGenericDao;
import org.openecomp.sdc.be.dao.jsongraph.HealingJanusGraphDao;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.model.DerivedNodeTypeResolver;
-import org.openecomp.sdc.be.model.jsonjanusgraph.operations.*;
+import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ArchiveOperation;
+import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ByToscaNameDerivedNodeTypeResolver;
+import org.openecomp.sdc.be.model.jsonjanusgraph.operations.GroupsOperation;
+import org.openecomp.sdc.be.model.jsonjanusgraph.operations.NodeTemplateOperation;
+import org.openecomp.sdc.be.model.jsonjanusgraph.operations.NodeTypeOperation;
+import org.openecomp.sdc.be.model.jsonjanusgraph.operations.TopologyTemplateOperation;
+import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
import org.openecomp.sdc.be.model.operations.api.IGraphLockOperation;
import org.openecomp.sdc.be.model.operations.impl.GraphLockOperation;
import org.openecomp.sdc.config.CatalogBESpringConfig;
@@ -58,6 +69,8 @@ import org.springframework.context.annotation.Import;
import org.springframework.context.annotation.Primary;
import org.springframework.core.io.FileSystemResource;
+import java.util.List;
+
/**
* Created by chaya on 7/3/2017.
*/
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/ArtifactValidatorExecuter.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/ArtifactValidatorExecuter.java
index 33cf9d46da..a5e7d7873b 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/ArtifactValidatorExecuter.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/ArtifactValidatorExecuter.java
@@ -34,8 +34,19 @@ import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade
import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
import org.openecomp.sdc.common.log.wrappers.Logger;
-import java.io.*;
-import java.util.*;
+import java.io.BufferedWriter;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.OutputStreamWriter;
+import java.io.Writer;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
import java.util.stream.Collectors;
public class ArtifactValidatorExecuter{
@@ -134,7 +145,7 @@ public class ArtifactValidatorExecuter{
try {
// "service name, service id, state, version
for(Component component: components ){
- StringBuilder sb = new StringBuilder(component.getName());
+ StringBuffer sb = new StringBuffer(component.getName());
sb.append(",").append(component.getUniqueId()).append(",").append(component.getInvariantUUID()).append(",").append(component.getLifecycleState()).append(",").append(component.getVersion());
sb.append("\n");
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/NodeToscaArtifactsValidatorExecuter.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/NodeToscaArtifactsValidatorExecuter.java
index 99e6637a08..9fa92200ac 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/NodeToscaArtifactsValidatorExecuter.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/NodeToscaArtifactsValidatorExecuter.java
@@ -26,11 +26,11 @@ import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
import org.openecomp.sdc.be.model.Component;
import org.openecomp.sdc.be.model.LifecycleStateEnum;
+import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
public class NodeToscaArtifactsValidatorExecuter extends ArtifactValidatorExecuter implements IArtifactValidatorExecuter{
protected String name;
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceToscaArtifactsValidatorExecutor.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceToscaArtifactsValidatorExecutor.java
index ed4b6eabf8..aad803e672 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceToscaArtifactsValidatorExecutor.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceToscaArtifactsValidatorExecutor.java
@@ -26,12 +26,12 @@ import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
import org.openecomp.sdc.be.model.Component;
import org.openecomp.sdc.be.model.LifecycleStateEnum;
+import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
+import org.springframework.beans.factory.annotation.Autowired;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
-import org.springframework.beans.factory.annotation.Autowired;
@org.springframework.stereotype.Component
public class ServiceToscaArtifactsValidatorExecutor extends ArtifactValidatorExecuter implements IArtifactValidatorExecuter{
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceValidatorExecuter.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceValidatorExecuter.java
index 8f36dd3d85..a52fb370d5 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceValidatorExecuter.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceValidatorExecuter.java
@@ -25,10 +25,10 @@ import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
-import org.springframework.stereotype.Component;
/**
* Created by chaya on 7/4/2017.
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/TopologyTemplateValidatorExecuter.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/TopologyTemplateValidatorExecuter.java
index 5287ea1b7a..ca027cb3ed 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/TopologyTemplateValidatorExecuter.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/TopologyTemplateValidatorExecuter.java
@@ -24,17 +24,22 @@ import fj.data.Either;
import org.openecomp.sdc.asdctool.impl.validator.tasks.TopologyTemplateValidationTask;
import org.openecomp.sdc.asdctool.impl.validator.utils.ReportManager;
import org.openecomp.sdc.asdctool.impl.validator.utils.VertexResult;
+import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
-import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum;
import org.openecomp.sdc.common.log.wrappers.Logger;
import org.springframework.beans.factory.annotation.Autowired;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.EnumMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
/**
* Created by chaya on 7/3/2017.
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/VFToscaArtifactValidatorExecutor.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/VFToscaArtifactValidatorExecutor.java
index 29d49ae592..f1c9af681c 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/VFToscaArtifactValidatorExecutor.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/VFToscaArtifactValidatorExecutor.java
@@ -27,11 +27,11 @@ import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum;
import org.openecomp.sdc.be.model.Component;
import org.openecomp.sdc.be.model.LifecycleStateEnum;
+import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
public class VFToscaArtifactValidatorExecutor extends ArtifactValidatorExecuter implements IArtifactValidatorExecuter{
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/VfValidatorExecuter.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/VfValidatorExecuter.java
index eefd19594a..181495ad44 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/VfValidatorExecuter.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/executers/VfValidatorExecuter.java
@@ -20,13 +20,14 @@
package org.openecomp.sdc.asdctool.impl.validator.executers;
-import java.util.List;
import org.openecomp.sdc.asdctool.impl.validator.tasks.VfValidationTask;
import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
import org.springframework.beans.factory.annotation.Autowired;
+import java.util.List;
+
/**
* Created by chaya on 7/3/2017.
*/
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/ArtifactValidationUtils.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/ArtifactValidationUtils.java
index 2e804cc8a2..11c80eae70 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/ArtifactValidationUtils.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/ArtifactValidationUtils.java
@@ -21,12 +21,7 @@
package org.openecomp.sdc.asdctool.impl.validator.tasks.artifacts;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-import java.util.Optional;
-
+import fj.data.Either;
import org.openecomp.sdc.asdctool.impl.validator.utils.ReportManager;
import org.openecomp.sdc.be.dao.cassandra.ArtifactCassandraDao;
import org.openecomp.sdc.be.dao.cassandra.CassandraOperationStatus;
@@ -41,7 +36,11 @@ import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
import org.openecomp.sdc.common.log.wrappers.Logger;
import org.springframework.beans.factory.annotation.Autowired;
-import fj.data.Either;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
/**
* Created by chaya on 7/6/2017.
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/tasks/moduleJson/ModuleJsonTask.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/tasks/moduleJson/ModuleJsonTask.java
index d6fafcbb5e..d45c896799 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/tasks/moduleJson/ModuleJsonTask.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/tasks/moduleJson/ModuleJsonTask.java
@@ -37,7 +37,12 @@ import org.openecomp.sdc.be.model.jsonjanusgraph.operations.TopologyTemplateOper
import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
import org.springframework.beans.factory.annotation.Autowired;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
import java.util.stream.Collectors;
/**
@@ -108,8 +113,7 @@ public class ModuleJsonTask extends ServiceValidationTask {
}
private boolean isAfterSubmitForTesting(GraphVertex vertex){
- List allowedStates = new ArrayList<>(Arrays.asList(LifecycleStateEnum.READY_FOR_CERTIFICATION.name(),
- LifecycleStateEnum.CERTIFICATION_IN_PROGRESS.name(), LifecycleStateEnum.CERTIFIED.name()));
+ List allowedStates = new ArrayList<>(Arrays.asList(LifecycleStateEnum.CERTIFIED.name()));
return allowedStates.contains(vertex.getMetadataProperty(GraphPropertyEnum.STATE));
}
}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/utils/ReportManager.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/utils/ReportManager.java
index 2be8f921fa..e575ffce24 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/utils/ReportManager.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/impl/validator/utils/ReportManager.java
@@ -21,19 +21,22 @@
package org.openecomp.sdc.asdctool.impl.validator.utils;
-import java.io.IOException;
-import java.nio.file.Files;
-import java.nio.file.Paths;
-import java.nio.file.StandardOpenOption;
-import java.util.*;
-
import org.apache.commons.lang.text.StrBuilder;
import org.openecomp.sdc.asdctool.impl.validator.config.ValidationConfigManager;
import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
-
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.nio.file.StandardOpenOption;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
+
/**
* Created by chaya on 7/5/2017.
*/
@@ -50,6 +53,7 @@ public class ReportManager {
initCsvFile();
initReportFile();
} catch (IOException e) {
+ e.printStackTrace();
log.info("Init file failed - {}", e.getClass().getSimpleName(), e);
}
}
@@ -98,6 +102,7 @@ public class ReportManager {
Files.write(Paths.get(reportOutputFilePath), new StrBuilder().appendNewLine().toString().getBytes(), StandardOpenOption.APPEND);
Files.write(Paths.get(reportOutputFilePath), message.getBytes(), StandardOpenOption.APPEND);
} catch (IOException e) {
+ e.printStackTrace();
log.info("write to file failed - {}", e.getClass().getSimpleName(), e);
}
}
@@ -145,6 +150,7 @@ public class ReportManager {
new StrBuilder().appendNewLine().toString().getBytes(),
StandardOpenOption.APPEND);
} catch (IOException e) {
+ e.printStackTrace();
log.info("write to file failed - {}", e.getClass().getSimpleName(), e);
}
}));
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/CsarGeneratorTool.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/CsarGeneratorTool.java
index 511e9baffc..882a4e12aa 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/CsarGeneratorTool.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/CsarGeneratorTool.java
@@ -20,14 +20,14 @@
package org.openecomp.sdc.asdctool.main;
-import java.util.Scanner;
-
import org.openecomp.sdc.asdctool.configuration.ConfigurationUploader;
import org.openecomp.sdc.asdctool.configuration.CsarGeneratorConfiguration;
import org.openecomp.sdc.asdctool.impl.internal.tool.CsarGenerator;
import org.openecomp.sdc.asdctool.utils.ConsoleWriter;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
+import java.util.Scanner;
+
public class CsarGeneratorTool extends SdcInternalTool {
public static void main(String[] args) {
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/DataSchemaMenu.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/DataSchemaMenu.java
index d2d5e77f2b..4b3496faa6 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/DataSchemaMenu.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/DataSchemaMenu.java
@@ -35,67 +35,70 @@ public class DataSchemaMenu {
private static Logger log = Logger.getLogger(DataSchemaMenu.class.getName());
- public static void main(String[] args) {
+ public static void main(String[] args) {
String operation = args[0];
- String appConfigDir = args[1];
+ String appConfigDir = args[1];
- if (args == null || args.length < 2) {
- usageAndExit();
- }
+ if (args == null || args.length < 2) {
+ usageAndExit();
+ }
- ConfigurationSource configurationSource = new FSConfigurationSource(ExternalConfiguration.getChangeListener(), appConfigDir);
- ConfigurationManager configurationManager = new ConfigurationManager(configurationSource);
+ ConfigurationSource configurationSource = new FSConfigurationSource(ExternalConfiguration.getChangeListener(), appConfigDir);
+ ConfigurationManager configurationManager = new ConfigurationManager(configurationSource);
+
+ try {
SdcSchemaBuilder sdcSchemaBuilder = new SdcSchemaBuilder(new SdcSchemaUtils(),
ConfigurationManager.getConfigurationManager().getConfiguration()::getCassandraConfig);
- switch (operation.toLowerCase()) {
- case "create-cassandra-structures":
- log.debug("Start create cassandra keyspace, tables and indexes");
+ switch (operation.toLowerCase()) {
+ case "create-cassandra-structures":
+ log.debug("Start create cassandra keyspace, tables and indexes");
if (sdcSchemaBuilder.createSchema()) {
- log.debug("create cassandra keyspace, tables and indexes successfull");
- System.exit(0);
- } else {
- log.debug("create cassandra keyspace, tables and indexes failed");
- System.exit(2);
- }
- break;
+ log.debug("create cassandra keyspace, tables and indexes successfull");
+ System.exit(0);
+ } else {
+ log.debug("create cassandra keyspace, tables and indexes failed");
+ System.exit(2);
+ }
case "create-janusgraph-structures":
log.debug("Start create janusgraph keyspace");
String janusGraphCfg = 2 == args.length ? configurationManager.getConfiguration().getJanusGraphCfgFile() : args[2];
if (JanusGraphInitializer.createGraph(janusGraphCfg)) {
log.debug("create janusgraph keyspace successfull");
- System.exit(0);
- } else {
+ System.exit(0);
+ } else {
log.debug("create janusgraph keyspace failed");
- System.exit(2);
- }
- break;
- case "clean-cassndra":
- log.debug("Start clean keyspace, tables");
+ System.exit(2);
+ }
+ case "clean-cassndra":
+ log.debug("Start clean keyspace, tables");
if (sdcSchemaBuilder.deleteSchema()) {
- log.debug(" successfull");
- System.exit(0);
- } else {
- log.debug(" failed");
- System.exit(2);
- }
- break;
- default:
- usageAndExit();
- break;
- }
- }
+ log.debug(" successfull");
+ System.exit(0);
+ } else {
+ log.debug(" failed");
+ System.exit(2);
+ }
+ default:
+ usageAndExit();
+ }
+ } catch (Throwable t) {
+ t.printStackTrace();
+ log.debug("create cassandra keyspace, tables and indexes failed");
+ System.exit(3);
+ }
+ }
- private static void usageAndExit() {
- DataSchemeUsage();
- System.exit(1);
- }
+ private static void usageAndExit() {
+ DataSchemeUsage();
+ System.exit(1);
+ }
- private static void DataSchemeUsage() {
- System.out.println("Usage: create-cassandra-structures <configuration dir> ");
+ private static void DataSchemeUsage() {
+ System.out.println("Usage: create-cassandra-structures <configuration dir> ");
System.out.println("Usage: create-janusgraph-structures <configuration dir> ");
- }
+ }
}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/DeleteComponentTool.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/DeleteComponentTool.java
index d30249eb6b..309d23ca14 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/DeleteComponentTool.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/DeleteComponentTool.java
@@ -20,14 +20,14 @@
package org.openecomp.sdc.asdctool.main;
-import java.util.Scanner;
-
import org.openecomp.sdc.asdctool.configuration.ConfigurationUploader;
import org.openecomp.sdc.asdctool.configuration.InternalToolConfiguration;
import org.openecomp.sdc.asdctool.impl.internal.tool.DeleteComponentHandler;
import org.openecomp.sdc.asdctool.utils.ConsoleWriter;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
+import java.util.Scanner;
+
public class DeleteComponentTool extends SdcInternalTool{
private static final String PSW = "ItIsTimeToDelete";
@@ -39,11 +39,6 @@ public class DeleteComponentTool extends SdcInternalTool{
String appConfigDir = args[0];
String password = args[1];
- if ( !PSW.equals(password) ){
- ConsoleWriter.dataLine("Wrong password");
- System.exit(1);
- }
-
disableConsole();
ConsoleWriter.dataLine("STARTED... ");
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/EsToCassandraDataMigrationMenu.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/EsToCassandraDataMigrationMenu.java
deleted file mode 100644
index c119d7e1ff..0000000000
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/EsToCassandraDataMigrationMenu.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * 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=========================================================
- */
-
-package org.openecomp.sdc.asdctool.main;
-
-import org.openecomp.sdc.asdctool.impl.DataMigration;
-import org.openecomp.sdc.asdctool.impl.EsToCassandraDataMigrationConfig;
-import org.openecomp.sdc.be.config.ConfigurationManager;
-import org.openecomp.sdc.common.api.ConfigurationSource;
-import org.openecomp.sdc.common.impl.ExternalConfiguration;
-import org.openecomp.sdc.common.impl.FSConfigurationSource;
-import org.openecomp.sdc.common.log.wrappers.Logger;
-import org.springframework.context.annotation.AnnotationConfigApplicationContext;
-
-public class EsToCassandraDataMigrationMenu {
-
- private static Logger log = Logger.getLogger(EsToCassandraDataMigrationMenu.class.getName());
-
- public static void main(String[] args) {
-
- if (args == null || args.length < 2) {
- usageAndExit();
- }
- String operation = args[0];
-
- String appConfigDir = args[1];
- System.setProperty("config.home", appConfigDir);
- ConfigurationSource configurationSource = new FSConfigurationSource(ExternalConfiguration.getChangeListener(),
- appConfigDir);
- ConfigurationManager configurationManager = new ConfigurationManager(configurationSource);
-
- AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(
- EsToCassandraDataMigrationConfig.class);
- DataMigration dataMigration = null;
- try {
- switch (operation.toLowerCase()) {
- case "es-to-cassndra-migration":
- dataMigration = (DataMigration) context.getBean("DataMigrationBean");
- log.debug("Start migration from ES to C* ");
- if (dataMigration.migrateDataESToCassndra(appConfigDir, true, true)) {
- log.debug("migration from ES to C* was finished successfull");
- System.exit(0);
- } else {
- log.debug("migration from ES to C* failed");
- System.exit(2);
- }
- break;
- case "es-to-cassndra-migration-export-only":
- dataMigration = (DataMigration) context.getBean("DataMigrationBean");
- log.debug("Start migration export only from ES to C* ");
- if (dataMigration.migrateDataESToCassndra(appConfigDir, true, false)) {
- log.debug("migration export only from ES to C* was finished successfull");
- System.exit(0);
- } else {
- log.debug("migration export only from ES to C* failed");
- System.exit(2);
- }
- break;
- case "es-to-cassndra-migration-import-only":
- dataMigration = (DataMigration) context.getBean("DataMigrationBean");
- log.debug("Start migration import only from ES to C* ");
- if (dataMigration.migrateDataESToCassndra(appConfigDir, false, true)) {
- log.debug("migration import only from ES to C* was finished successfull");
- System.exit(0);
- } else {
- log.debug("migration import only from ES to C* failed");
- System.exit(2);
- }
- break;
- default:
- usageAndExit();
- }
- } catch (Throwable t) {
- log.info("data migration failed - {}", t);
- System.exit(3);
- }
- }
-
- private static void usageAndExit() {
- MigrationUsage();
- System.exit(1);
- }
-
- private static void MigrationUsage() {
- System.out.println(
- "Usage: es-to-cassndra-migration/es-to-cassndra-migration-import-only/es-to-cassndra-migration-export-only <configuration dir>");
- }
-}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/ExportImportMenu.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/ExportImportMenu.java
index 9c8ca992aa..98aea2648c 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/ExportImportMenu.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/ExportImportMenu.java
@@ -22,13 +22,14 @@
package org.openecomp.sdc.asdctool.main;
+import org.openecomp.sdc.asdctool.impl.GraphJsonValidator;
+import org.openecomp.sdc.asdctool.impl.GraphMLConverter;
+import org.openecomp.sdc.asdctool.impl.GraphMLDataAnalyzer;
+
import java.io.IOException;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
-import org.openecomp.sdc.asdctool.impl.GraphJsonValidator;
-import org.openecomp.sdc.asdctool.impl.GraphMLConverter;
-import org.openecomp.sdc.asdctool.impl.GraphMLDataAnalyzer;
public class ExportImportMenu {
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/GetConsumersMenu.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/GetConsumersMenu.java
deleted file mode 100644
index 3c4f7458d9..0000000000
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/GetConsumersMenu.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.asdctool.main;
-
-import fj.data.Either;
-import org.openecomp.sdc.asdctool.cli.CLIToolData;
-import org.openecomp.sdc.asdctool.cli.SpringCLITool;
-import org.openecomp.sdc.asdctool.configuration.GetConsumersConfiguration;
-import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
-import org.openecomp.sdc.be.model.operations.impl.ConsumerOperation;
-import org.openecomp.sdc.be.resources.data.ConsumerData;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import java.util.List;
-
-public class GetConsumersMenu extends SpringCLITool {
-
- private static final Logger LOGGER = LoggerFactory.getLogger(GetConsumersMenu.class);
-
- public static void main(String[] args) {
- GetConsumersMenu getConsumersMenu = new GetConsumersMenu();
- CLIToolData cliToolData = getConsumersMenu.init(args);
- ConsumerOperation consumersService = cliToolData.getSpringApplicationContext().getBean(ConsumerOperation.class);
- printConsumers(getConsumersMenu, consumersService);
- }
-
- private static void printConsumers(GetConsumersMenu getConsumersMenu, ConsumerOperation consumersService) {
- Either<List<ConsumerData>, StorageOperationStatus> allConsumers = consumersService.getAll();
- allConsumers.left().foreachDoEffect(getConsumersMenu::printConsumers);
- allConsumers.right().foreachDoEffect(getConsumersMenu::printErr);
- }
-
- private void printConsumers(List<ConsumerData> consumers) {
- System.out.println("SDC consumers: ");
- consumers.forEach(consumer -> {
- System.out.println("#########################");
- System.out.println(consumer);
- });
- System.exit(0);
- }
-
- private void printErr(StorageOperationStatus err) {
- String errMsg = String.format("failed to fetch consumers. reason: %s", err);
- LOGGER.error(errMsg);
- System.err.print(errMsg);
- System.exit(1);
- }
-
- @Override
- protected String commandName() {
- return "get-consumers";
- }
-
- @Override
- protected Class<?> getSpringConfigurationClass() {
- return GetConsumersConfiguration.class;
- }
-}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/SdcInternalTool.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/SdcInternalTool.java
index aeb7abe63a..2fb99e29f3 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/SdcInternalTool.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/SdcInternalTool.java
@@ -20,11 +20,10 @@
package org.openecomp.sdc.asdctool.main;
+import ch.qos.logback.core.Appender;
import org.openecomp.sdc.common.log.wrappers.Logger;
import org.slf4j.LoggerFactory;
-import ch.qos.logback.core.Appender;
-
public abstract class SdcInternalTool {
protected static void disableConsole() {
org.slf4j.Logger rootLogger = LoggerFactory.getILoggerFactory().getLogger(Logger.ROOT_LOGGER_NAME);
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/SdcSchemaFileImport.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/SdcSchemaFileImport.java
index eb1d487cdd..47a08ea70e 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/SdcSchemaFileImport.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/main/SdcSchemaFileImport.java
@@ -20,6 +20,21 @@
package org.openecomp.sdc.asdctool.main;
+import org.apache.commons.codec.digest.DigestUtils;
+import org.apache.commons.lang3.ArrayUtils;
+import org.openecomp.sdc.asdctool.configuration.SdcSchemaFileImportConfiguration;
+import org.openecomp.sdc.asdctool.enums.SchemaZipFileEnum;
+import org.openecomp.sdc.be.config.ConfigurationManager;
+import org.openecomp.sdc.be.dao.cassandra.CassandraOperationStatus;
+import org.openecomp.sdc.be.dao.cassandra.SdcSchemaFilesCassandraDao;
+import org.openecomp.sdc.be.resources.data.SdcSchemaFilesData;
+import org.openecomp.sdc.common.api.ConfigurationSource;
+import org.openecomp.sdc.common.impl.ExternalConfiguration;
+import org.openecomp.sdc.common.impl.FSConfigurationSource;
+import org.springframework.context.annotation.AnnotationConfigApplicationContext;
+import org.yaml.snakeyaml.DumperOptions;
+import org.yaml.snakeyaml.Yaml;
+
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
@@ -36,20 +51,6 @@ import java.util.Map;
import java.util.stream.Stream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
-import org.apache.commons.codec.digest.DigestUtils;
-import org.apache.commons.lang3.ArrayUtils;
-import org.openecomp.sdc.asdctool.enums.SchemaZipFileEnum;
-import org.openecomp.sdc.asdctool.impl.EsToCassandraDataMigrationConfig;
-import org.openecomp.sdc.be.config.ConfigurationManager;
-import org.openecomp.sdc.be.dao.cassandra.CassandraOperationStatus;
-import org.openecomp.sdc.be.dao.cassandra.SdcSchemaFilesCassandraDao;
-import org.openecomp.sdc.be.resources.data.SdcSchemaFilesData;
-import org.openecomp.sdc.common.api.ConfigurationSource;
-import org.openecomp.sdc.common.impl.ExternalConfiguration;
-import org.openecomp.sdc.common.impl.FSConfigurationSource;
-import org.springframework.context.annotation.AnnotationConfigApplicationContext;
-import org.yaml.snakeyaml.DumperOptions;
-import org.yaml.snakeyaml.Yaml;
public class SdcSchemaFileImport {
@@ -106,10 +107,11 @@ public class SdcSchemaFileImport {
//Loop over schema file list and create each yaml file from /import/tosca folder
SchemaZipFileEnum[] schemaFileList = SchemaZipFileEnum.values();
for (SchemaZipFileEnum schemaZipFileEnum : schemaFileList) {
- String pathname = importToscaPath + SEPARATOR + schemaZipFileEnum.getSourceFolderName() + SEPARATOR + schemaZipFileEnum.getSourceFileName() + YAML_EXTENSION;
- try(InputStream input = new FileInputStream(new File(pathname));) {
+ try {
//get the source yaml file
+ String pathname = importToscaPath + SEPARATOR + schemaZipFileEnum.getSourceFolderName() + SEPARATOR + schemaZipFileEnum.getSourceFileName() + YAML_EXTENSION;
System.out.println("Processing file "+pathname+"....");
+ InputStream input = new FileInputStream(new File(pathname));
//Convert the content of file to yaml
Yaml yamlFileSource = new Yaml();
Object content = yamlFileSource.load(input);
@@ -275,6 +277,6 @@ public class SdcSchemaFileImport {
private static AnnotationConfigApplicationContext initContext(String appConfigDir) {
ConfigurationSource configurationSource = new FSConfigurationSource(ExternalConfiguration.getChangeListener(), appConfigDir);
new ConfigurationManager(configurationSource);
- return new AnnotationConfigApplicationContext(EsToCassandraDataMigrationConfig.class);
+ return new AnnotationConfigApplicationContext(SdcSchemaFileImportConfiguration.class);
}
}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/MigrationSpringConfig.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/MigrationSpringConfig.java
index e5e0740794..65f8c7be72 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/MigrationSpringConfig.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/MigrationSpringConfig.java
@@ -27,6 +27,8 @@ import org.openecomp.sdc.asdctool.migration.dao.MigrationTasksDao;
import org.openecomp.sdc.asdctool.migration.resolver.MigrationResolver;
import org.openecomp.sdc.asdctool.migration.resolver.SpringBeansMigrationResolver;
import org.openecomp.sdc.asdctool.migration.service.SdcRepoService;
+import org.openecomp.sdc.be.components.distribution.engine.DmaapClientFactory;
+import org.openecomp.sdc.be.components.health.HealthCheckBusinessLogic;
import org.openecomp.sdc.be.components.impl.ResourceBusinessLogic;
import org.openecomp.sdc.be.components.impl.ServiceBusinessLogic;
import org.openecomp.sdc.be.components.scheduledtasks.ComponentsCleanBusinessLogic;
@@ -42,12 +44,10 @@ import org.openecomp.sdc.be.model.operations.api.IGroupTypeOperation;
import org.openecomp.sdc.be.model.operations.impl.InterfaceLifecycleOperation;
import org.openecomp.sdc.config.CatalogBESpringConfig;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.config.PropertiesFactoryBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
-import org.springframework.core.io.FileSystemResource;
import java.util.ArrayList;
import java.util.List;
@@ -55,8 +55,8 @@ import java.util.List;
@Configuration
@Import({DAOSpringConfig.class, CatalogBESpringConfig.class, CatalogModelSpringConfig.class})
@ComponentScan({"org.openecomp.sdc.asdctool.migration.tasks",//migration tasks
- "org.openecomp.sdc.asdctool.migration.config.mocks"
- })
+ "org.openecomp.sdc.asdctool.migration.config.mocks",
+ "org.openecomp.sdc.be.filters" })
public class MigrationSpringConfig {
@Autowired(required=false)
@@ -85,14 +85,6 @@ public class MigrationSpringConfig {
return new MigrationTasksDao(cassandraClient);
}
- @Bean(name = "elasticsearchConfig")
- public PropertiesFactoryBean mapper() {
- String configHome = System.getProperty("config.home");
- PropertiesFactoryBean bean = new PropertiesFactoryBean();
- bean.setLocation(new FileSystemResource(configHome + "/elasticsearch.yml"));
- return bean;
- }
-
@Bean(name = "componentsCleanBusinessLogic")
public ComponentsCleanBusinessLogic componentsCleanBusinessLogic(
IElementOperation elementDao,
@@ -108,5 +100,12 @@ public class MigrationSpringConfig {
groupInstanceOperation, groupTypeOperation, interfaceOperation, interfaceLifecycleTypeOperation, resourceBusinessLogic,
serviceBusinessLogic, artifactToscaOperation);
}
+
+ @Bean(name = "dmaapClientFactory")
+ public DmaapClientFactory getDmaapClientFactory() {return new DmaapClientFactory();}
+ @Bean(name = "healthCheckBusinessLogic")
+ public HealthCheckBusinessLogic getHealthCheckBusinessLogic() {
+ return new HealthCheckBusinessLogic();
+ }
}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/mocks/CambriaHandlerMock.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/mocks/CambriaHandlerMock.java
new file mode 100644
index 0000000000..e8c6a955f0
--- /dev/null
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/mocks/CambriaHandlerMock.java
@@ -0,0 +1,87 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2020 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=========================================================
+ */
+
+package org.openecomp.sdc.asdctool.migration.config.mocks;
+
+import com.att.nsa.apiClient.credentials.ApiCredential;
+import fj.data.Either;
+import org.openecomp.sdc.be.components.distribution.engine.CambriaErrorResponse;
+import org.openecomp.sdc.be.components.distribution.engine.ICambriaHandler;
+import org.openecomp.sdc.be.components.distribution.engine.INotificationData;
+import org.openecomp.sdc.be.components.distribution.engine.SubscriberTypeEnum;
+import org.springframework.stereotype.Component;
+
+import java.util.Collection;
+import java.util.List;
+import java.util.Set;
+
+@Component("cambriaHandler")
+public class CambriaHandlerMock implements ICambriaHandler {
+
+ @Override
+ public Either<Set<String>, CambriaErrorResponse> getTopics(List<String> hostSet) {
+ return null;
+ }
+
+ @Override
+ public CambriaErrorResponse createTopic(Collection<String> hostSet, String apiKey, String secretKey, String topicName, int partitionCount, int replicationCount) {
+ return null;
+ }
+
+ @Override
+ public CambriaErrorResponse unRegisterFromTopic(Collection<String> hostSet, String managerApiKey, String managerSecretKey, String subscriberApiKey, SubscriberTypeEnum subscriberTypeEnum, String topicName) {
+ return null;
+ }
+
+ @Override
+ public CambriaErrorResponse registerToTopic(Collection<String> hostSet, String managerApiKey, String managerSecretKey, String subscriberApiKey, SubscriberTypeEnum subscriberTypeEnum, String topicName) {
+ return null;
+ }
+
+ @Override
+ public com.att.nsa.cambria.client.CambriaConsumer createConsumer(Collection<String> hostSet, String topicName, String apiKey, String secretKey, String consumerId, String consumerGroup, int timeoutMS) throws Exception {
+ return null;
+ }
+
+ @Override
+ public CambriaErrorResponse sendNotification(String topicName, String uebPublicKey, String uebSecretKey, List<String> uebServers, INotificationData data) {
+ return null;
+ }
+
+ @Override
+ public CambriaErrorResponse sendNotificationAndClose(String topicName, String uebPublicKey, String uebSecretKey, List<String> uebServers, INotificationData data, long waitBeforeCloseTimeout) {
+ return null;
+ }
+
+ @Override
+ public CambriaErrorResponse getApiKey(String server, String apiKey) {
+ return null;
+ }
+
+ @Override
+ public Either<ApiCredential, CambriaErrorResponse> createUebKeys(List<String> hostSet) {
+ return null;
+ }
+
+ @Override
+ public Either<Iterable<String>, CambriaErrorResponse> fetchFromTopic(com.att.nsa.cambria.client.CambriaConsumer topicConsumer) {
+ return null;
+ }
+}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/mocks/DistributionEngineMock.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/mocks/DistributionEngineMock.java
index c4150e41a1..dde7f6a2ac 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/mocks/DistributionEngineMock.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/mocks/DistributionEngineMock.java
@@ -29,6 +29,8 @@ import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
import org.openecomp.sdc.be.resources.data.OperationalEnvironmentEntry;
import org.springframework.stereotype.Component;
+import java.util.List;
+
@Component("distributionEngine")
public class DistributionEngineMock implements IDistributionEngine {
@Override
@@ -76,4 +78,9 @@ public class DistributionEngineMock implements IDistributionEngine {
return null;
}
+ @Override
+ public OperationalEnvironmentEntry getEnvironmentByDmaapUebAddress(List<String> dmaapUebAddress) {
+ return null;
+ }
+
}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ElasticSearchClientMock.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/mocks/PortalHealthCheckBuilderMock.java
index 04b398b7ce..46470cc04e 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ElasticSearchClientMock.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/config/mocks/PortalHealthCheckBuilderMock.java
@@ -2,14 +2,14 @@
* ============LICENSE_START=======================================================
* SDC
* ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2020 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.
@@ -18,27 +18,27 @@
* ============LICENSE_END=========================================================
*/
-package org.openecomp.sdc.asdctool.configuration.mocks.es;
+package org.openecomp.sdc.asdctool.migration.config.mocks;
-import org.openecomp.sdc.be.dao.es.ElasticSearchClient;
+import org.openecomp.sdc.be.components.health.PortalHealthCheckBuilder;
+import org.springframework.stereotype.Component;
-public class ElasticSearchClientMock extends ElasticSearchClient {
+import javax.annotation.PostConstruct;
+import javax.annotation.PreDestroy;
- @Override
- public void initialize() {
+@Component("portalHealthCheckBusinessLogic")
+public class PortalHealthCheckBuilderMock extends PortalHealthCheckBuilder {
- }
@Override
- public void setClusterName(final String clusterName) {
-
+ @PostConstruct
+ public PortalHealthCheckBuilder init() {
+ return null;
}
@Override
- public void setLocal(final String strIsLocal) {
- }
+ @PreDestroy
+ protected void destroy() {
- @Override
- public void setTransportClient(final String strIsTransportclient) {
}
}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/core/DBVersion.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/core/DBVersion.java
index a713f9243a..17c3aea42c 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/core/DBVersion.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/core/DBVersion.java
@@ -33,7 +33,7 @@ public class DBVersion implements Comparable<DBVersion>{
/**
* The current db version. should be tested against real db to verify it is compatible to the db version
*/
- public static final DBVersion CURRENT_VERSION = new DBVersion(1710, 0);
+ public static final DBVersion DEFAULT_VERSION = new DBVersion(1710, 0);
private DBVersion(BigInteger major, BigInteger minor) {
this.major = major;
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/core/task/PostMigration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/core/task/PostMigration.java
index f341ab2792..5ed2e56408 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/core/task/PostMigration.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/core/task/PostMigration.java
@@ -27,7 +27,7 @@ public interface PostMigration extends IMigrationStage {
@Override
default
public DBVersion getVersion() {
- return DBVersion.CURRENT_VERSION;
+ return DBVersion.DEFAULT_VERSION;
}
@Override
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/dao/MigrationTasksAccessor.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/dao/MigrationTasksAccessor.java
index 2dd51fcefd..74c74052e7 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/dao/MigrationTasksAccessor.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/dao/MigrationTasksAccessor.java
@@ -31,6 +31,9 @@ public interface MigrationTasksAccessor {
@Query("SELECT minor_version FROM sdcrepository.migrationTasks WHERE major_version = :majorVersion order by minor_version desc limit 1")
ResultSet getLatestMinorVersion(@Param("majorVersion") Long majorVersion);
+ @Query("SELECT major_version FROM sdcrepository.migrationTasks")
+ ResultSet getLatestMajorVersion();
+
@Query("DELETE FROM sdcrepository.migrationTasks WHERE major_version = :majorVersion")
void deleteTasksForMajorVersion(@Param("majorVersion") Long majorVersion);
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/dao/MigrationTasksDao.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/dao/MigrationTasksDao.java
index 1d7e66250e..aabd4d8bb0 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/dao/MigrationTasksDao.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/dao/MigrationTasksDao.java
@@ -27,6 +27,7 @@ import com.datastax.driver.mapping.Mapper;
import com.datastax.driver.mapping.MappingManager;
import fj.data.Either;
import org.apache.commons.lang3.tuple.ImmutablePair;
+import org.openecomp.sdc.asdctool.migration.core.DBVersion;
import org.openecomp.sdc.be.dao.cassandra.CassandraClient;
import org.openecomp.sdc.be.dao.cassandra.CassandraDao;
import org.openecomp.sdc.be.dao.cassandra.CassandraOperationStatus;
@@ -38,6 +39,9 @@ import org.springframework.stereotype.Service;
import javax.annotation.PostConstruct;
import java.math.BigInteger;
+import java.util.Collections;
+import java.util.List;
+import java.util.stream.Collectors;
@Service
public class MigrationTasksDao extends CassandraDao {
@@ -77,13 +81,29 @@ public class MigrationTasksDao extends CassandraDao {
try {
ResultSet latestMinorVersion = migrationTasksAccessor.getLatestMinorVersion(majorVersion.longValue());
Row minorVersionRow = latestMinorVersion.one();
- return minorVersionRow == null ? BigInteger.valueOf(Long.MIN_VALUE) : BigInteger.valueOf(minorVersionRow.getLong(0));
+ return minorVersionRow == null ? DBVersion.DEFAULT_VERSION.getMinor() : BigInteger.valueOf(minorVersionRow.getLong(0));
} catch (RuntimeException e) {
logger.error("failed to get latest minor version for major version {}", majorVersion, e);
throw e;
}
}
+ public BigInteger getLatestMajorVersion() {
+ try {
+ ResultSet latestMajorVersion = migrationTasksAccessor.getLatestMajorVersion();
+ List<Row> all = latestMajorVersion.all();
+ Long majorVersionRow = null;
+ if (all.size() != 0){
+ List<Long> majorVersions = all.stream().map(p -> p.getLong(0)).collect(Collectors.toList());
+ majorVersionRow = Collections.max(majorVersions);
+ }
+ return majorVersionRow == null ? DBVersion.DEFAULT_VERSION.getMajor() : BigInteger.valueOf(majorVersionRow);
+ } catch (RuntimeException e) {
+ logger.error("failed to get latest major version ", e);
+ throw e;
+ }
+ }
+
public void deleteAllTasksForVersion(BigInteger majorVersion) {
try {
migrationTasksAccessor.deleteTasksForMajorVersion(majorVersion.longValue());
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/service/SdcRepoService.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/service/SdcRepoService.java
index 9e62530d17..9141295dd4 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/service/SdcRepoService.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/service/SdcRepoService.java
@@ -35,13 +35,13 @@ public class SdcRepoService {
}
public DBVersion getLatestDBVersion() {
- BigInteger currentMajorVersion = DBVersion.CURRENT_VERSION.getMajor();
+ BigInteger currentMajorVersion = migrationTasksDao.getLatestMajorVersion();
BigInteger latestMinorVersion = migrationTasksDao.getLatestMinorVersion(currentMajorVersion);
- return latestMinorVersion == null ? DBVersion.from(currentMajorVersion, BigInteger.valueOf(Integer.MIN_VALUE)) : DBVersion.from(currentMajorVersion, latestMinorVersion);
+ return DBVersion.from(currentMajorVersion, latestMinorVersion);
}
public void clearTasksForCurrentMajor() {
- BigInteger currentMajorVersion = DBVersion.CURRENT_VERSION.getMajor();
+ BigInteger currentMajorVersion = DBVersion.DEFAULT_VERSION.getMajor();
migrationTasksDao.deleteAllTasksForVersion(currentMajorVersion);
}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/InstanceMigrationBase.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/InstanceMigrationBase.java
new file mode 100644
index 0000000000..b0a1d502aa
--- /dev/null
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/InstanceMigrationBase.java
@@ -0,0 +1,178 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2020 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=========================================================
+ */
+
+package org.openecomp.sdc.asdctool.migration.tasks;
+
+import fj.data.Either;
+import org.apache.tinkerpop.gremlin.structure.Direction;
+import org.apache.tinkerpop.gremlin.structure.Edge;
+import org.janusgraph.core.JanusGraphVertex;
+import org.openecomp.sdc.asdctool.migration.tasks.mig2002.SdcCollapsingRolesRFCstateMigration;
+import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
+import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
+import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
+import org.openecomp.sdc.be.dao.jsongraph.types.EdgeLabelEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.EdgePropertyEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.JsonParseFlagEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
+import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
+import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum;
+import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
+import org.openecomp.sdc.be.model.operations.impl.DaoStatusConverter;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.EnumMap;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+public abstract class InstanceMigrationBase {
+
+ private static final Logger log = LoggerFactory.getLogger(InstanceMigrationBase.class);
+ protected JanusGraphDao janusGraphDao;
+
+ public InstanceMigrationBase(JanusGraphDao janusGraphDao) {
+ this.janusGraphDao = janusGraphDao;
+ }
+
+ protected StorageOperationStatus upgradeTopologyTemplates() {
+ Map<GraphPropertyEnum, Object> hasNotProps = new EnumMap<>(GraphPropertyEnum.class);
+ hasNotProps.put(GraphPropertyEnum.IS_DELETED, true);
+ hasNotProps.put(GraphPropertyEnum.RESOURCE_TYPE, ResourceTypeEnum.CVFC);
+
+ return janusGraphDao.getByCriteria(VertexTypeEnum.TOPOLOGY_TEMPLATE, null, hasNotProps, JsonParseFlagEnum.ParseAll)
+ .either(this::proceed, this::handleError);
+ }
+
+ protected abstract StorageOperationStatus handleOneContainer(GraphVertex containerV);
+
+ protected StorageOperationStatus proceed(List<GraphVertex> containersV) {
+ int failureCounter = 0;
+ log.info("found {} vertices to migrate ", containersV.size());
+ for (GraphVertex container : containersV) {
+ StorageOperationStatus storageOperationStatus = handleOneContainer(container);
+ if (storageOperationStatus != StorageOperationStatus.OK) {
+ failureCounter++;
+ }
+ }
+
+ if (failureCounter > 0) {
+ log.info("Failed to update {} vertices", failureCounter);
+ } else {
+ log.info("All vertices were successfully updated");
+ }
+
+ return StorageOperationStatus.OK;
+ }
+
+ protected GraphVertex getVertexById(String vertexId) {
+ Either<GraphVertex, JanusGraphOperationStatus> vertexById = janusGraphDao.getVertexById(vertexId);
+ if (vertexById.isRight()) {
+ log.info("Exception occurred while query vertexId: {} exception: {} " + vertexId + vertexById.right().value());
+ return null;
+ }
+ else return vertexById.left().value();
+ }
+
+ protected StorageOperationStatus updateVertexAndCommit(GraphVertex graphVertex) {
+ StorageOperationStatus status;
+ if ((status = janusGraphDao.updateVertex(graphVertex)
+ .either(v -> StorageOperationStatus.OK, this::handleError)) != StorageOperationStatus.OK) {
+ return status;
+ }
+ return DaoStatusConverter.convertJanusGraphStatusToStorageStatus(janusGraphDao.commit());
+ }
+
+ protected StorageOperationStatus handleError(JanusGraphOperationStatus err) {
+ return DaoStatusConverter.convertJanusGraphStatusToStorageStatus(JanusGraphOperationStatus.NOT_FOUND == err ? JanusGraphOperationStatus.OK : err);
+ }
+
+ protected void removeEdges(Iterator<Edge> edges) {
+
+ while (edges.hasNext()) {
+ Edge edge = edges.next();
+ edge.remove();
+ }
+ }
+
+ protected void removeEdgesInState(Iterator<Edge> edges, String state) {
+
+ while (edges.hasNext()) {
+ Edge edge = edges.next();
+ String edgeState = (String) janusGraphDao.getProperty(edge, EdgePropertyEnum.STATE);
+ if (edgeState.equals(state)) {
+ edge.remove();
+ }
+ }
+ }
+
+
+ protected void updateEdgeProperty(EdgePropertyEnum property, String value, Iterator<Edge> edges) throws IOException {
+ while (edges.hasNext()) {
+ Edge edge = edges.next();
+ Map<EdgePropertyEnum, Object> prop = new HashMap<>();
+ prop.put(property, value);
+ janusGraphDao.setEdgeProperties(edge, prop);
+ }
+
+ }
+
+
+ // check if user has both edges state and last_state
+ protected boolean sameUser(List<JanusGraphVertex> stateList, List<JanusGraphVertex> lastStateList) {
+
+ for (JanusGraphVertex lsVertex : lastStateList) {
+ String idLs = (String) janusGraphDao.getProperty(lsVertex, GraphPropertyEnum.USERID.getProperty());
+ String idSt = (String) janusGraphDao.getProperty(stateList.get(0), GraphPropertyEnum.USERID.getProperty());
+ if (idLs.equals(idSt)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ protected List<JanusGraphVertex> getVertexByEdgeSide(Iterator<Edge> edges, SdcCollapsingRolesRFCstateMigration.EdgeSide side) {
+ List<JanusGraphVertex> vertexList = new ArrayList();
+ while (edges.hasNext()) {
+ Edge edge = edges.next();
+
+ if (side == SdcCollapsingRolesRFCstateMigration.EdgeSide.OUT) {
+ vertexList.add((JanusGraphVertex) edge.outVertex());
+ } else {
+ vertexList.add((JanusGraphVertex) edge.inVertex());
+ }
+ }
+
+ return vertexList;
+ }
+
+ protected Iterator<Edge> getVertexEdge(GraphVertex containerV, Direction direction, EdgeLabelEnum edgeLabel) {
+ return containerV.getVertex().edges(direction, edgeLabel.name());
+ }
+
+ public enum EdgeSide {
+ IN, OUT;
+ }
+}
+
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/handlers/XlsOutputHandler.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/handlers/XlsOutputHandler.java
index d51271bd69..758589cb53 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/handlers/XlsOutputHandler.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/handlers/XlsOutputHandler.java
@@ -82,7 +82,7 @@ public class XlsOutputHandler implements OutputHandler {
file.close();
return true;
} catch (Exception e) {
- log.debug("#writeOutputAndCloseFile - Failed to write an output file. ", e);
+ log.debug("#writeOutputAndCloseFile - Failed to write an output file. The {} exception occurred. ", e.getMessage());
return false;
}
}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1710/UpgradeMigration1710.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1710/UpgradeMigration1710.java
index 49cd1fea88..8eda8640c6 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1710/UpgradeMigration1710.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1710/UpgradeMigration1710.java
@@ -26,12 +26,14 @@ import fj.data.Either;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.collections.MapUtils;
import org.apache.commons.lang3.StringUtils;
+import org.openecomp.sdc.asdctool.enums.LifecycleStateEnum;
import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult;
import org.openecomp.sdc.asdctool.migration.core.task.PostMigration;
import org.openecomp.sdc.asdctool.migration.tasks.handlers.XlsOutputHandler;
import org.openecomp.sdc.be.components.impl.ComponentInstanceBusinessLogic;
import org.openecomp.sdc.be.components.impl.ResourceBusinessLogic;
import org.openecomp.sdc.be.components.impl.ServiceBusinessLogic;
+import org.openecomp.sdc.be.components.impl.exceptions.ByActionStatusComponentException;
import org.openecomp.sdc.be.components.impl.exceptions.ByResponseFormatComponentException;
import org.openecomp.sdc.be.components.impl.exceptions.ComponentException;
import org.openecomp.sdc.be.components.lifecycle.LifecycleBusinessLogic;
@@ -47,22 +49,37 @@ import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.dao.jsongraph.types.EdgeLabelEnum;
import org.openecomp.sdc.be.dao.jsongraph.types.JsonParseFlagEnum;
import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
-import org.openecomp.sdc.be.datatypes.enums.*;
+import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
+import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
+import org.openecomp.sdc.be.datatypes.enums.JsonPresentationFields;
+import org.openecomp.sdc.be.datatypes.enums.NodeTypeEnum;
+import org.openecomp.sdc.be.datatypes.enums.OriginTypeEnum;
+import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum;
import org.openecomp.sdc.be.impl.ComponentsUtils;
-import org.openecomp.sdc.be.model.*;
+import org.openecomp.sdc.be.model.ComponentInstance;
+import org.openecomp.sdc.be.model.ComponentInstanceProperty;
+import org.openecomp.sdc.be.model.ComponentParametersView;
+import org.openecomp.sdc.be.model.LifeCycleTransitionEnum;
+import org.openecomp.sdc.be.model.Resource;
+import org.openecomp.sdc.be.model.User;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
import org.openecomp.sdc.be.model.jsonjanusgraph.utils.ModelConverter;
-import org.openecomp.sdc.be.model.operations.api.IUserAdminOperation;
import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
import org.openecomp.sdc.be.model.operations.impl.CsarOperation;
import org.openecomp.sdc.be.model.operations.impl.DaoStatusConverter;
+import org.openecomp.sdc.be.model.operations.impl.UserAdminOperation;
import org.openecomp.sdc.common.log.wrappers.Logger;
import org.openecomp.sdc.exception.ResponseFormat;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.EnumMap;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
import java.util.function.Predicate;
import java.util.stream.Collectors;
@@ -103,7 +120,7 @@ public class UpgradeMigration1710 implements PostMigration {
private LifecycleBusinessLogic lifecycleBusinessLogic;
@Autowired
- private IUserAdminOperation userAdminOperation;
+ private UserAdminOperation userAdminOperation;
@Autowired
private ResourceBusinessLogic resourceBusinessLogic;
@@ -481,20 +498,25 @@ public class UpgradeMigration1710 implements PostMigration {
private Either<org.openecomp.sdc.be.model.Component, ResponseFormat> updateComposition(org.openecomp.sdc.be.model.Component component) {
if (component != null && component.getComponentInstances() != null) {
- Either<ComponentInstance, ResponseFormat> upgradeInstanceRes;
for (ComponentInstance instance : component.getComponentInstances()) {
- upgradeInstanceRes = upgradeInstance(component, instance);
- if (upgradeInstanceRes.isRight()) {
- log.error(FAILED_TO_UPGRADE_COMPONENT, component.getComponentType().getValue(), component.getName(), component.getInvariantUUID(), component.getVersion(), "upgradeInstance", upgradeInstanceRes.right().value().getFormattedMessage());
- outputHandler.addRecord(component.getComponentType().name(), component.getName(), component.getUUID(), component.getUniqueId(), MigrationResult.MigrationStatus.FAILED.name(), upgradeInstanceRes.right().value().getFormattedMessage());
- return Either.right(upgradeInstanceRes.right().value());
+ try {
+ upgradeInstance(component, instance);
+ }catch (ComponentException e){
+ ResponseFormat responseFormat = e.getResponseFormat();
+ log.error(FAILED_TO_UPGRADE_COMPONENT, component.getComponentType().getValue(), component.getName(),
+ component.getInvariantUUID(), component.getVersion(), "upgradeInstance",
+ responseFormat.getFormattedMessage());
+ outputHandler.addRecord(component.getComponentType().name(), component.getName(), component.getUUID(),
+ component.getUniqueId(), MigrationResult.MigrationStatus.FAILED.name(),
+ responseFormat.getFormattedMessage());
+ return Either.right(responseFormat);
}
}
}
return Either.left(component);
}
- private Either<ComponentInstance, ResponseFormat> upgradeInstance(org.openecomp.sdc.be.model.Component component, ComponentInstance instance) {
+ private ComponentInstance upgradeInstance(org.openecomp.sdc.be.model.Component component, ComponentInstance instance) {
log.info("Starting upgrade {} instance {} upon upgrade migration 1710 process. ", component.getComponentType().getValue(), instance.getName());
ComponentInstance newComponentInstance = new ComponentInstance(instance);
if (instance.getOriginType() == OriginTypeEnum.ServiceProxy) {
@@ -503,35 +525,33 @@ public class UpgradeMigration1710 implements PostMigration {
return upgradeResourceInstance(component, instance, newComponentInstance);
}
- private Either<ComponentInstance, ResponseFormat> upgradeResourceInstance(org.openecomp.sdc.be.model.Component component, ComponentInstance instance, ComponentInstance newComponentInstance) {
+ private ComponentInstance upgradeResourceInstance(org.openecomp.sdc.be.model.Component component, ComponentInstance instance, ComponentInstance newComponentInstance) {
log.info("Starting upgrade {} instance {} upon upgrade migration 1710 process. ", component.getComponentType().getValue(), instance.getName());
- Either<ComponentInstance, ResponseFormat> upgradeInstanceRes = null;
+ ComponentInstance upgradeInstanceRes = null;
VertexTypeEnum vertexType = ModelConverter.getVertexType(instance.getOriginType().name());
Either<Resource, StorageOperationStatus> getOriginRes = toscaOperationFacade.getLatestCertifiedByToscaResourceName(instance.getToscaComponentName(), vertexType, JsonParseFlagEnum.ParseMetadata);
if(getOriginRes.isRight()){
log.info("Upgrade of {} instance {} upon upgrade migration 1710 process failed due to a reason {}. ",
component.getComponentType().getValue(), instance.getName(), getOriginRes.right().value());
- upgradeInstanceRes = Either.right(componentsUtils.getResponseFormat(componentsUtils.convertFromStorageResponse(getOriginRes.right().value(), instance.getOriginType().getComponentType())));
+ throw new ByActionStatusComponentException(componentsUtils.convertFromStorageResponse(getOriginRes.right().value(), instance.getOriginType().getComponentType()));
}
- if(upgradeInstanceRes == null) {
- copyComponentNameAndVersionToNewInstance(newComponentInstance, getOriginRes.left().value());
+ copyComponentNameAndVersionToNewInstance(newComponentInstance, getOriginRes.left().value());
- if(isGreater(getOriginRes.left().value().getVersion(), instance.getComponentVersion())){
- upgradeInstanceRes = changeAssetVersion(component, instance, newComponentInstance);
- }
- if((upgradeInstanceRes == null || upgradeInstanceRes.isLeft()) && isAllottedResource(instance.getComponentUid()) && MapUtils.isNotEmpty(component.getComponentInstancesProperties())){
- ComponentInstance instanceToUpdate = upgradeInstanceRes == null ? instance : upgradeInstanceRes.left().value();
- upgradeInstanceRes = Either.left(updateServiceUuidProperty(component, instanceToUpdate, component.getComponentInstancesProperties().get(instance.getUniqueId())));
- }
+ if(isGreater(getOriginRes.left().value().getVersion(), instance.getComponentVersion())){
+ upgradeInstanceRes = changeAssetVersion(component, instance, newComponentInstance);
+ }
+ if(isAllottedResource(instance.getComponentUid()) && MapUtils.isNotEmpty(component.getComponentInstancesProperties())){
+ ComponentInstance instanceToUpdate = upgradeInstanceRes == null ? instance : upgradeInstanceRes;
+ upgradeInstanceRes = updateServiceUuidProperty(component, instanceToUpdate, component.getComponentInstancesProperties().get(instance.getUniqueId()));
}
//upgrade nodes contained by CVFC
if(upgradeInstanceRes == null && isVfcUpgradeRequired && newComponentInstance.getOriginType() == OriginTypeEnum.CVFC &&
!upgradeVf(getOriginRes.left().value().getUniqueId(), false, true)) {
- upgradeInstanceRes = Either.right(componentsUtils.getResponseFormat(ActionStatus.GENERAL_ERROR));
+ throw new ByActionStatusComponentException(ActionStatus.GENERAL_ERROR);
}
if(upgradeInstanceRes == null){
- upgradeInstanceRes = Either.left(instance);
+ upgradeInstanceRes = instance;
}
log.info("Upgrade of {} instance {} upon upgrade migration 1710 process finished successfully. ",
component.getComponentType().getValue(), instance.getName());
@@ -584,17 +604,17 @@ public class UpgradeMigration1710 implements PostMigration {
return isAllottedResource(component.getUniqueId());
}
- private Either<ComponentInstance, ResponseFormat> upgradeServiceProxyInstance(org.openecomp.sdc.be.model.Component component, ComponentInstance instance, ComponentInstance newComponentInstance) {
+ private ComponentInstance upgradeServiceProxyInstance(org.openecomp.sdc.be.model.Component component, ComponentInstance instance, ComponentInstance newComponentInstance) {
Either<List<GraphVertex>, JanusGraphOperationStatus> getLatestOriginServiceRes = getLatestCertifiedService(instance.getSourceModelInvariant());
if (getLatestOriginServiceRes.isRight()) {
- return Either.right(componentsUtils.getResponseFormat(componentsUtils.convertFromStorageResponse(DaoStatusConverter.convertJanusGraphStatusToStorageStatus(getLatestOriginServiceRes.right().value()), instance.getOriginType().getComponentType())));
+ throw new ByActionStatusComponentException(componentsUtils.convertFromStorageResponse(DaoStatusConverter.convertJanusGraphStatusToStorageStatus(getLatestOriginServiceRes.right().value()), instance.getOriginType().getComponentType()));
}
ModelConverter.getVertexType(instance.getOriginType().name());
Either<Resource, StorageOperationStatus> getOriginRes = toscaOperationFacade.getLatestByName(instance.getComponentName());
if(getOriginRes.isRight()){
log.info("Upgrade of {} instance {} upon upgrade migration 1710 process failed due to a reason {}. ",
component.getComponentType().getValue(), instance.getName(), getOriginRes.right().value());
- return Either.right(componentsUtils.getResponseFormat(componentsUtils.convertFromStorageResponse(getOriginRes.right().value(), instance.getOriginType().getComponentType())));
+ throw new ByActionStatusComponentException(componentsUtils.convertFromStorageResponse(getOriginRes.right().value(), instance.getOriginType().getComponentType()));
}
newComponentInstance.setComponentUid((String) getLatestOriginServiceRes.left().value().get(0).getJsonMetadataField(JsonPresentationFields.UNIQUE_ID));
return changeAssetVersion(component, instance, newComponentInstance);
@@ -613,7 +633,7 @@ public class UpgradeMigration1710 implements PostMigration {
.getByCriteria(VertexTypeEnum.TOPOLOGY_TEMPLATE, propertiesToMatch, propertiesNotToMatch, JsonParseFlagEnum.ParseMetadata);
}
- private Either<ComponentInstance, ResponseFormat> changeAssetVersion(org.openecomp.sdc.be.model.Component containerComponent, ComponentInstance instance, ComponentInstance newComponentInstance) {
+ private ComponentInstance changeAssetVersion(org.openecomp.sdc.be.model.Component containerComponent, ComponentInstance instance, ComponentInstance newComponentInstance) {
return componentInstanceBusinessLogic.changeComponentInstanceVersion(ComponentTypeEnum.SERVICE_PARAM_NAME, containerComponent.getUniqueId(), instance.getUniqueId(), user.getUserId(), newComponentInstance);
}
@@ -857,7 +877,7 @@ public class UpgradeMigration1710 implements PostMigration {
log.info("Starting upgrade node type with name {}, invariantUUID {}, version{}. ", nodeTypeV.getMetadataProperty(GraphPropertyEnum.NAME), nodeTypeV.getMetadataProperty(GraphPropertyEnum.INVARIANT_UUID), nodeTypeV.getMetadataProperty(GraphPropertyEnum.VERSION));
log.info("Starting to find derived to for node type with name {}, invariantUUID {}, version{}. ", nodeTypeV.getMetadataProperty(GraphPropertyEnum.NAME), nodeTypeV.getMetadataProperty(GraphPropertyEnum.INVARIANT_UUID), nodeTypeV.getMetadataProperty(GraphPropertyEnum.VERSION));
Either<List<GraphVertex>, JanusGraphOperationStatus> parentResourceRes = janusGraphDao
- .getParentVertecies(nodeTypeV, EdgeLabelEnum.DERIVED_FROM, JsonParseFlagEnum.ParseMetadata);
+ .getParentVertices(nodeTypeV, EdgeLabelEnum.DERIVED_FROM, JsonParseFlagEnum.ParseMetadata);
if (parentResourceRes.isRight() && parentResourceRes.right().value() != JanusGraphOperationStatus.NOT_FOUND) {
return DaoStatusConverter.convertJanusGraphStatusToStorageStatus(parentResourceRes.right().value());
@@ -916,18 +936,9 @@ public class UpgradeMigration1710 implements PostMigration {
private Either<? extends org.openecomp.sdc.be.model.Component, ResponseFormat> performFullCertification(org.openecomp.sdc.be.model.Component component) {
log.info("Starting to perform full certification of {} with name {}, invariantUUID {}, version {}. ",
component.getComponentType().getValue(), component.getName(), component.getInvariantUUID(), component.getVersion());
-
- Either<? extends org.openecomp.sdc.be.model.Component, ResponseFormat> changeStateEither = lifecycleBusinessLogic.changeComponentState(component.getComponentType(), component.getUniqueId(), user, LifeCycleTransitionEnum.CERTIFICATION_REQUEST, changeInfo, true, false);
- if (changeStateEither.isRight()) {
- log.info(FAILED_TO_CHANGE_STATE_OF_COMPONENT, component.getName(), component.getInvariantUUID(), component.getVersion(), LifeCycleTransitionEnum.CERTIFICATION_REQUEST);
- return changeStateEither;
- }
- changeStateEither = lifecycleBusinessLogic.changeComponentState(component.getComponentType(), changeStateEither.left().value().getUniqueId(), user, LifeCycleTransitionEnum.START_CERTIFICATION, changeInfo, true, false);
- if (changeStateEither.isRight()) {
- log.info(FAILED_TO_CHANGE_STATE_OF_COMPONENT, component.getName(), component.getInvariantUUID(), component.getVersion(), LifeCycleTransitionEnum.START_CERTIFICATION);
- return changeStateEither;
- }
- changeStateEither = lifecycleBusinessLogic.changeComponentState(component.getComponentType(), changeStateEither.left().value().getUniqueId(), user, LifeCycleTransitionEnum.CERTIFY, changeInfo, true, false);
+ org.openecomp.sdc.be.model.Component updatedComponent = component;
+ Either<? extends org.openecomp.sdc.be.model.Component, ResponseFormat> changeStateEither;
+ changeStateEither = lifecycleBusinessLogic.changeComponentState(component.getComponentType(), updatedComponent.getUniqueId(), user, LifeCycleTransitionEnum.CERTIFY, changeInfo, true, false);
if (changeStateEither.isRight()) {
log.info(FAILED_TO_CHANGE_STATE_OF_COMPONENT, component.getName(), component.getInvariantUUID(), component.getVersion(), LifeCycleTransitionEnum.CERTIFY);
} else {
@@ -997,6 +1008,7 @@ public class UpgradeMigration1710 implements PostMigration {
propertiesToMatch.put(GraphPropertyEnum.COMPONENT_TYPE, componentType.name());
propertiesToMatch.put(GraphPropertyEnum.IS_HIGHEST_VERSION, true);
+
Map<GraphPropertyEnum, Object> propertiesNotToMatch = new EnumMap<>(GraphPropertyEnum.class);
propertiesNotToMatch.put(GraphPropertyEnum.IS_DELETED, true);
if (vertexType == VertexTypeEnum.TOPOLOGY_TEMPLATE && componentType == ComponentTypeEnum.RESOURCE) {
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ForwardPathMigration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ForwardPathMigration.java
index 812c07e6b0..f0f59c4450 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ForwardPathMigration.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ForwardPathMigration.java
@@ -17,33 +17,23 @@
package org.openecomp.sdc.asdctool.migration.tasks.mig1806;
import com.google.common.collect.ImmutableSet;
-import org.janusgraph.core.JanusGraphVertex;
import fj.data.Either;
-import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.EnumMap;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.stream.Collectors;
import org.apache.tinkerpop.gremlin.structure.Direction;
import org.apache.tinkerpop.gremlin.structure.Edge;
import org.apache.tinkerpop.gremlin.structure.Vertex;
+import org.janusgraph.core.JanusGraphVertex;
import org.openecomp.sdc.asdctool.migration.core.DBVersion;
import org.openecomp.sdc.asdctool.migration.core.task.Migration;
import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult;
import org.openecomp.sdc.be.config.ConfigurationManager;
import org.openecomp.sdc.be.dao.api.ActionStatus;
+import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.dao.jsongraph.types.EdgeLabelEnum;
import org.openecomp.sdc.be.dao.jsongraph.types.JsonParseFlagEnum;
import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
import org.openecomp.sdc.be.dao.jsongraph.utils.IdBuilderUtils;
-import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
import org.openecomp.sdc.be.datatypes.elements.ForwardingPathDataDefinition;
import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
@@ -56,7 +46,18 @@ import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
import org.openecomp.sdc.be.model.operations.impl.DaoStatusConverter;
import org.openecomp.sdc.be.model.operations.impl.UserAdminOperation;
-@org.springframework.stereotype.Component
+import java.math.BigInteger;
+import java.util.ArrayList;
+import java.util.EnumMap;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+//@org.springframework.stereotype.Component
public class ForwardPathMigration implements Migration {
private JanusGraphDao janusGraphDao;
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ResourceLifecycleMigration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ResourceLifecycleMigration.java
index ea1e4a5529..8f7fc3eeb5 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ResourceLifecycleMigration.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ResourceLifecycleMigration.java
@@ -21,6 +21,7 @@
package org.openecomp.sdc.asdctool.migration.tasks.mig1806;
import fj.data.Either;
+import org.openecomp.sdc.asdctool.enums.LifecycleStateEnum;
import org.openecomp.sdc.asdctool.migration.core.DBVersion;
import org.openecomp.sdc.asdctool.migration.core.task.Migration;
import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult;
@@ -36,7 +37,6 @@ import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
import org.openecomp.sdc.be.model.LifeCycleTransitionEnum;
-import org.openecomp.sdc.be.model.LifecycleStateEnum;
import org.openecomp.sdc.be.model.User;
import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
import org.openecomp.sdc.be.model.operations.impl.DaoStatusConverter;
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/SDCInstancesMigration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/SDCInstancesMigration.java
index bcb236338f..a28c27fe6c 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/SDCInstancesMigration.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/SDCInstancesMigration.java
@@ -24,34 +24,35 @@ import fj.data.Either;
import org.openecomp.sdc.asdctool.migration.core.DBVersion;
import org.openecomp.sdc.asdctool.migration.core.task.Migration;
import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult;
+import org.openecomp.sdc.asdctool.migration.tasks.InstanceMigrationBase;
import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.dao.jsongraph.types.EdgeLabelEnum;
import org.openecomp.sdc.be.dao.jsongraph.types.JsonParseFlagEnum;
-import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
import org.openecomp.sdc.be.datatypes.elements.ComponentInstanceDataDefinition;
import org.openecomp.sdc.be.datatypes.elements.CompositionDataDefinition;
import org.openecomp.sdc.be.datatypes.elements.MapPropertiesDataDefinition;
import org.openecomp.sdc.be.datatypes.elements.PropertyDataDefinition;
import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
-import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum;
import org.openecomp.sdc.be.model.jsonjanusgraph.enums.JsonConstantKeysEnum;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.NodeTemplateOperation;
import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
-import org.openecomp.sdc.be.model.operations.impl.DaoStatusConverter;
import org.openecomp.sdc.common.log.wrappers.Logger;
import org.springframework.stereotype.Component;
import java.math.BigInteger;
-import java.util.*;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
import java.util.Map.Entry;
+import java.util.Optional;
@Component
-public class SDCInstancesMigration implements Migration {
+public class SDCInstancesMigration extends InstanceMigrationBase implements Migration {
- private JanusGraphDao janusGraphDao;
private NodeTemplateOperation nodeTemplateOperation;
private static final Logger log = Logger.getLogger(SDCInstancesMigration.class);
@@ -62,7 +63,7 @@ public class SDCInstancesMigration implements Migration {
public SDCInstancesMigration(JanusGraphDao janusGraphDao, NodeTemplateOperation nodeTemplateOperation) {
- this.janusGraphDao = janusGraphDao;
+ super(janusGraphDao);
this.nodeTemplateOperation = nodeTemplateOperation;
}
@@ -78,41 +79,14 @@ public class SDCInstancesMigration implements Migration {
@Override
public MigrationResult migrate() {
- StorageOperationStatus status = connectAllContainers();
-
+ StorageOperationStatus status = upgradeTopologyTemplates();
return status == StorageOperationStatus.OK ? MigrationResult.success() : MigrationResult.error("failed to create connection between instances and origins. Error : " + status);
}
- private StorageOperationStatus connectAllContainers() {
- StorageOperationStatus status;
- Map<GraphPropertyEnum, Object> hasNotProps = new EnumMap<>(GraphPropertyEnum.class);
- hasNotProps.put(GraphPropertyEnum.IS_DELETED, true);
- hasNotProps.put(GraphPropertyEnum.RESOURCE_TYPE, ResourceTypeEnum.CVFC);
-
- status = janusGraphDao
- .getByCriteria(VertexTypeEnum.TOPOLOGY_TEMPLATE, null, hasNotProps, JsonParseFlagEnum.ParseAll)
- .either(this::connectAll, this::handleError);
- return status;
- }
-
- private StorageOperationStatus handleError(JanusGraphOperationStatus err) {
- return DaoStatusConverter.convertJanusGraphStatusToStorageStatus(
- JanusGraphOperationStatus.NOT_FOUND == err ? JanusGraphOperationStatus.OK : err);
- }
-
- private StorageOperationStatus connectAll(List<GraphVertex> containersV) {
+ protected StorageOperationStatus handleOneContainer(GraphVertex containerVorig) {
StorageOperationStatus status = StorageOperationStatus.OK;
- for (GraphVertex container : containersV) {
- status = handleOneContainer(container);
- if (status != StorageOperationStatus.OK) {
- break;
- }
- }
- return status;
- }
- private StorageOperationStatus handleOneContainer(GraphVertex containerV) {
- StorageOperationStatus status = StorageOperationStatus.OK;
+ GraphVertex containerV = getVertexById(containerVorig.getUniqueId());
boolean needConnectAllotted = false;
ComponentTypeEnum componentType = containerV.getType();
@@ -154,6 +128,7 @@ public class SDCInstancesMigration implements Migration {
return status;
}
+
private Either<Map<String, MapPropertiesDataDefinition>, StorageOperationStatus> getInstProperties(GraphVertex containerV) {
Map<String, MapPropertiesDataDefinition> instanceProperties;
Either<GraphVertex, JanusGraphOperationStatus> instProps = janusGraphDao
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/InterfaceOperationMigration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/InterfaceOperationMigration.java
index 35e795095e..fd71336fd5 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/InterfaceOperationMigration.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/InterfaceOperationMigration.java
@@ -17,10 +17,6 @@
package org.openecomp.sdc.asdctool.migration.tasks.mig1902;
import fj.data.Either;
-import java.math.BigInteger;
-import java.util.EnumMap;
-import java.util.List;
-import java.util.Map;
import org.apache.commons.collections.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.openecomp.sdc.asdctool.migration.core.DBVersion;
@@ -45,6 +41,11 @@ import org.openecomp.sdc.be.model.operations.impl.UserAdminOperation;
import org.openecomp.sdc.common.log.wrappers.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+import java.math.BigInteger;
+import java.util.EnumMap;
+import java.util.List;
+import java.util.Map;
+
@org.springframework.stereotype.Component
public class InterfaceOperationMigration implements Migration {
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcConsumerMigration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcConsumerMigration.java
new file mode 100644
index 0000000000..16f0c485dc
--- /dev/null
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcConsumerMigration.java
@@ -0,0 +1,108 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2020 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=========================================================
+ */
+
+package org.openecomp.sdc.asdctool.migration.tasks.mig1902;
+
+import fj.data.Either;
+import org.openecomp.sdc.asdctool.migration.core.DBVersion;
+import org.openecomp.sdc.asdctool.migration.core.task.Migration;
+import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult;
+import org.openecomp.sdc.be.dao.janusgraph.JanusGraphGenericDao;
+import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
+import org.openecomp.sdc.be.datatypes.enums.NodeTypeEnum;
+import org.openecomp.sdc.be.resources.data.ConsumerData;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Component;
+
+import java.math.BigInteger;
+import java.util.List;
+
+@Component
+public class SdcConsumerMigration implements Migration {
+
+ private static final Logger logger = LoggerFactory.getLogger(SdcConsumerMigration.class);
+
+ private JanusGraphGenericDao janusGraphGenericDao;
+
+ public SdcConsumerMigration(JanusGraphGenericDao janusGraphGenericDao) {
+ this.janusGraphGenericDao = janusGraphGenericDao;
+ }
+
+ @Override
+ public String description() {
+ return "remove all consumer nodes";
+ }
+
+ @Override
+ public DBVersion getVersion() {
+ return DBVersion.from(BigInteger.valueOf(1902), BigInteger.valueOf(0));
+ }
+
+ @Override
+ public MigrationResult migrate() {
+ JanusGraphOperationStatus status = null;
+ try {
+ status = handleConsumerNodes();
+ if (status == JanusGraphOperationStatus.OK){
+ logger.info("removed all consumer nodes.");
+ return MigrationResult.success();
+ } else {
+ return MigrationResult.error("failed to remove consumer nodes. error: " + status);
+ }
+ } finally {
+ commitOrRollBack(status);
+ }
+ }
+
+ private void commitOrRollBack(JanusGraphOperationStatus status) {
+ if (status == JanusGraphOperationStatus.OK) {
+ janusGraphGenericDao.commit();
+ } else {
+ janusGraphGenericDao.rollback();
+ }
+ }
+
+ private JanusGraphOperationStatus handleConsumerNodes() {
+ logger.info("getting all consumer nodes.");
+ return janusGraphGenericDao.getAll(NodeTypeEnum.ConsumerCredentials, ConsumerData.class)
+ .either(this::removeConsumerNodes, this::handleError);
+ }
+
+ private JanusGraphOperationStatus removeConsumerNodes(List<ConsumerData> consumerNodes){
+ logger.info("found {} consumer nodes.", consumerNodes.size());
+ return consumerNodes.stream()
+ .map(consumerNode -> janusGraphGenericDao.deleteNode(consumerNode, ConsumerData.class))
+ .filter(Either::isRight)
+ .map(either -> either.right().value())
+ .findAny()
+ .orElse(JanusGraphOperationStatus.OK);
+ }
+
+ private JanusGraphOperationStatus handleError(JanusGraphOperationStatus status){
+ if (status == JanusGraphOperationStatus.NOT_FOUND) {
+ logger.info("found 0 consumer nodes.");
+ return JanusGraphOperationStatus.OK;
+ } else{
+ return status;
+ }
+ }
+
+}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcGroupsMigration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcGroupsMigration.java
new file mode 100644
index 0000000000..1045634ef9
--- /dev/null
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcGroupsMigration.java
@@ -0,0 +1,186 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2020 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=========================================================
+ */
+
+package org.openecomp.sdc.asdctool.migration.tasks.mig1902;
+
+import org.openecomp.sdc.asdctool.migration.core.DBVersion;
+import org.openecomp.sdc.asdctool.migration.core.task.Migration;
+import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult;
+import org.openecomp.sdc.asdctool.migration.tasks.InstanceMigrationBase;
+import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
+import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
+import org.openecomp.sdc.be.dao.jsongraph.types.EdgeLabelEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.JsonParseFlagEnum;
+import org.openecomp.sdc.be.datatypes.elements.GroupDataDefinition;
+import org.openecomp.sdc.be.datatypes.elements.PropertyDataDefinition;
+import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
+import org.openecomp.sdc.be.model.GroupTypeDefinition;
+import org.openecomp.sdc.be.model.PropertyDefinition;
+import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
+import org.openecomp.sdc.be.model.operations.impl.GroupTypeOperation;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Component;
+
+import java.math.BigInteger;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@Component
+public class SdcGroupsMigration extends InstanceMigrationBase implements Migration {
+
+ private static final Logger log = LoggerFactory.getLogger(SdcGroupsMigration.class);
+
+ private final GroupTypeOperation groupTypeOperation;
+
+ private Map<String, GroupTypeDefinition> latestGroupTypeMap = new HashMap<>();
+
+ public enum GroupsForUpgrade {
+ NW_COLLECTION_GROUP_NAME("org.openecomp.groups.NetworkCollection"),
+ VFC_INSTANCE_GROUP_NAME("org.openecomp.groups.VfcInstanceGroup");
+
+ private String toscaType;
+
+ GroupsForUpgrade(String toscaType) {
+ this.toscaType = toscaType;
+ }
+
+ public static boolean containsToscaType(String type) {
+ try {
+ return Arrays.stream(values()).anyMatch(g->g.getToscaType().equals(type));
+ }
+ catch (IllegalArgumentException ex) {
+ return false;
+ }
+ }
+
+ public String getToscaType() {
+ return toscaType;
+ }
+
+ }
+ public SdcGroupsMigration(JanusGraphDao janusGraphDao, GroupTypeOperation groupTypeOperation) {
+ super(janusGraphDao);
+ this.groupTypeOperation = groupTypeOperation;
+ }
+
+ @Override
+ public String description() {
+ return "update derived from field value for NetworkCollection and VfcInstanceGroup group instances ";
+ }
+
+ @Override
+ public DBVersion getVersion() {
+ return DBVersion.from(BigInteger.valueOf(1902), BigInteger.valueOf(0));
+ }
+
+ @Override
+ public MigrationResult migrate() {
+ loadLatestGroupTypeDefinitions();
+ StorageOperationStatus status = upgradeTopologyTemplates();
+ return status == StorageOperationStatus.OK ?
+ MigrationResult.success() : MigrationResult.error("failed to update derived from value for NetworkCollection and VfcInstanceGroup group instances. Error : " + status);
+ }
+
+ void loadLatestGroupTypeDefinitions() {
+ Arrays.stream(GroupsForUpgrade.values()).forEach(this::getLatestGroupTypeDefinition);
+ }
+
+ @Override
+ protected StorageOperationStatus handleOneContainer(GraphVertex containerVorig) {
+ StorageOperationStatus status = StorageOperationStatus.NOT_FOUND;
+ GraphVertex containerV = getVertexById(containerVorig.getUniqueId());
+
+ try {
+ status = janusGraphDao.getChildVertex(containerV, EdgeLabelEnum.GROUPS, JsonParseFlagEnum.ParseAll)
+ .either(this::updateGroupPropertiesIfRequired, this::handleError);
+ }
+ catch (Exception e) {
+ log.error("Exception occurred:", e);
+ status = StorageOperationStatus.GENERAL_ERROR;
+ }
+ finally {
+ if (status != StorageOperationStatus.OK) {
+ janusGraphDao.rollback();
+ if (status == StorageOperationStatus.NOT_FOUND) {
+ //it is happy flow as well
+ status = StorageOperationStatus.OK;
+ }
+ }
+ if (log.isInfoEnabled()) {
+ log.info("Upgrade status is <{}> for topology template <{}> uniqueId <{}>",
+ status.name(), containerV.getMetadataProperties().get(GraphPropertyEnum.NAME),
+ containerV.getMetadataProperties().get(GraphPropertyEnum.UNIQUE_ID));
+ }
+ }
+ return status;
+ }
+
+ private StorageOperationStatus updateGroupPropertiesIfRequired(GraphVertex vertex) {
+ StorageOperationStatus status = StorageOperationStatus.NOT_FOUND;
+ boolean isUpdated = false;
+ Map<String, GroupDataDefinition> groupDefinitionMap = (Map<String, GroupDataDefinition>) vertex.getJson();
+ for (GroupDataDefinition groupDef : groupDefinitionMap.values()) {
+ if (GroupsForUpgrade.containsToscaType(groupDef.getType())) {
+ if (log.isDebugEnabled()) {
+ log.debug("Group instance named <{}> of type <{}> is supposed to be updated on vertex <{}>",
+ groupDef.getName(), groupDef.getType(), vertex.getUniqueId());
+ }
+ isUpdated = isGroupPropertiesUpdateDone(groupDef.getProperties(), latestGroupTypeMap.get(groupDef.getType()).getProperties());
+ if (log.isDebugEnabled()) {
+ String result = isUpdated ? "has been updated" : "is up to date ";
+ log.debug("Group instance named <{}> of type <{}> uniqueID <{}> {} on vertex <{}>",
+ groupDef.getName(), groupDef.getType(), groupDef.getUniqueId(), result, vertex.getUniqueId());
+ }
+ }
+ }
+ if (isUpdated) {
+ vertex.setJson(groupDefinitionMap);
+ status = updateVertexAndCommit(vertex);
+ if (status == StorageOperationStatus.OK && log.isDebugEnabled()) {
+ log.debug("Group properties change is committed on vertex <{}>", vertex.getUniqueId());
+ }
+ }
+ return status;
+ }
+
+ private boolean isGroupPropertiesUpdateDone(List<PropertyDataDefinition> curPropDefList, List<PropertyDefinition> latestGroupDefList) {
+ boolean isUpdated = false;
+ for (PropertyDefinition prop: latestGroupDefList) {
+ if (curPropDefList.stream().noneMatch(l->l.getName().equals(prop.getName()))) {
+ curPropDefList.add(prop);
+ isUpdated = true;
+ }
+ }
+ return isUpdated;
+ }
+
+ StorageOperationStatus getLatestGroupTypeDefinition(GroupsForUpgrade groupsForUpgrade) {
+ return groupTypeOperation.getLatestGroupTypeByType(groupsForUpgrade.getToscaType(), false)
+ .either(g-> {
+ latestGroupTypeMap.put(groupsForUpgrade.getToscaType(), g);
+ return StorageOperationStatus.OK;
+ }, err->err);
+ }
+
+
+}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcResourceIconMigration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcResourceIconMigration.java
new file mode 100644
index 0000000000..837abf1c08
--- /dev/null
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcResourceIconMigration.java
@@ -0,0 +1,187 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2020 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=========================================================
+ */
+
+package org.openecomp.sdc.asdctool.migration.tasks.mig1902;
+
+import com.google.common.annotations.VisibleForTesting;
+import org.openecomp.sdc.asdctool.migration.core.DBVersion;
+import org.openecomp.sdc.asdctool.migration.core.task.Migration;
+import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult;
+import org.openecomp.sdc.asdctool.migration.tasks.InstanceMigrationBase;
+import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
+import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
+import org.openecomp.sdc.be.dao.jsongraph.types.JsonParseFlagEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
+import org.openecomp.sdc.be.datatypes.elements.ComponentInstanceDataDefinition;
+import org.openecomp.sdc.be.datatypes.elements.CompositionDataDefinition;
+import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
+import org.openecomp.sdc.be.datatypes.enums.JsonPresentationFields;
+import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum;
+import org.openecomp.sdc.be.model.jsonjanusgraph.enums.JsonConstantKeysEnum;
+import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
+import org.openecomp.sdc.common.log.wrappers.Logger;
+import org.springframework.stereotype.Component;
+
+import java.math.BigInteger;
+import java.util.EnumMap;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@Component
+public class SdcResourceIconMigration extends InstanceMigrationBase implements Migration {
+
+ private static final Logger log = Logger.getLogger(SdcResourceIconMigration.class);
+
+ private Map <String, String> resourceTypeToIconMap = new HashMap<>();
+
+ @VisibleForTesting
+ SdcResourceIconMigration(JanusGraphDao janusGraphDao) {
+ super(janusGraphDao);
+ }
+
+
+ @Override
+ public String description() {
+ return "update iconPath for VL and CP nodes";
+ }
+
+ @Override
+ public DBVersion getVersion() {
+ return DBVersion.from(BigInteger.valueOf(1902), BigInteger.valueOf(0));
+ }
+
+ @Override
+ public MigrationResult migrate() {
+ StorageOperationStatus status;
+ try {
+ updateNodeTypeIconAndStoreInMap(ResourceTypeEnum.VL);
+ updateNodeTypeIconAndStoreInMap(ResourceTypeEnum.CP);
+
+ if (!resourceTypeToIconMap.isEmpty()) {
+ status = upgradeTopologyTemplates();
+ } else {
+ log.error("No VL and CP node definitions found");
+ status = StorageOperationStatus.NOT_FOUND;
+ }
+ }
+ catch(Exception e) {
+ log.error("Exception thrown: {}", e);
+ status = StorageOperationStatus.GENERAL_ERROR;
+ }
+ return status == StorageOperationStatus.OK ?
+ MigrationResult.success() : MigrationResult.error("failed to update iconPath for VL and CP nodes. Error : " + status);
+ }
+
+ @Override
+ protected StorageOperationStatus handleOneContainer(GraphVertex containerVorig) {
+ StorageOperationStatus status = StorageOperationStatus.OK;
+ GraphVertex containerV = getVertexById(containerVorig.getUniqueId());
+
+ Map<String, CompositionDataDefinition> jsonComposition = (Map<String, CompositionDataDefinition>)containerV.getJson();
+ if (jsonComposition != null && !jsonComposition.isEmpty()) {
+ CompositionDataDefinition compositionDataDefinition = jsonComposition.get(JsonConstantKeysEnum.COMPOSITION.getValue());
+ Map<String, ComponentInstanceDataDefinition> componentInstances = compositionDataDefinition.getComponentInstances();
+
+ long updateCount = componentInstances.values()
+ .stream()
+ .filter(this::updateIconInsideInstance).count();
+ if (updateCount > 0) {
+ status = updateVertexAndCommit(containerV);
+ }
+ }
+ else {
+ log.warn("No json found for template <{}> uniqueId <{}>",
+ containerV.getMetadataProperties().get(GraphPropertyEnum.NAME),
+ containerV.getMetadataProperties().get(GraphPropertyEnum.UNIQUE_ID));
+ }
+ if (log.isInfoEnabled()) {
+ log.info("Upgrade status is <{}> for topology template <{}> uniqueId <{}>",
+ status.name(), containerV.getMetadataProperties().get(GraphPropertyEnum.NAME),
+ containerV.getMetadataProperties().get(GraphPropertyEnum.UNIQUE_ID));
+ }
+ return status;
+ }
+
+
+ @VisibleForTesting
+ boolean updateIconInsideInstance(ComponentInstanceDataDefinition componentInstanceDataDefinition) {
+ String iconPath = resourceTypeToIconMap.get(componentInstanceDataDefinition.getComponentName());
+ if (iconPath != null) {
+ componentInstanceDataDefinition.setIcon(iconPath);
+ if (log.isDebugEnabled()) {
+ log.debug("Icon of component {} is set to {}", componentInstanceDataDefinition.getComponentName(), iconPath);
+ }
+ return true;
+ }
+ return false;
+ }
+
+ @VisibleForTesting
+ void updateNodeTypeIconAndStoreInMap(ResourceTypeEnum resourceType) {
+ Map<GraphPropertyEnum, Object> propertiesToMatch = new EnumMap<>(GraphPropertyEnum.class);
+ Map<GraphPropertyEnum, Object> propertiesNotToMatch = new EnumMap<>(GraphPropertyEnum.class);
+
+ propertiesToMatch.put(GraphPropertyEnum.RESOURCE_TYPE, resourceType.name());
+ propertiesToMatch.put(GraphPropertyEnum.IS_HIGHEST_VERSION, true);
+
+ propertiesNotToMatch.put(GraphPropertyEnum.IS_DELETED, true);
+
+ String iconPath = String.valueOf(resourceType.getValue()).toLowerCase();
+
+ Map<String, String> resourceNameToIconMap = janusGraphDao.getByCriteria(VertexTypeEnum.NODE_TYPE, propertiesToMatch, propertiesNotToMatch, JsonParseFlagEnum.ParseAll)
+ .either(vl-> updateIconResource(vl, iconPath), status->null);
+
+ if (resourceNameToIconMap != null) {
+ resourceTypeToIconMap.putAll(resourceNameToIconMap);
+ }
+ else {
+ log.warn("Failed to get resources of type <{}>", resourceType.name());
+ }
+ }
+
+ private Map <String, String> updateIconResource(List<GraphVertex> vertexList, String iconPath) {
+ if (vertexList.isEmpty()) {
+ return null;
+ }
+ Map <String, String> nameToIconMap = new HashMap<>();
+ vertexList.forEach(v->{
+ StorageOperationStatus status = updateIconOnVertex(v, iconPath);
+ if (status == StorageOperationStatus.OK) {
+ if (log.isDebugEnabled()) {
+ log.debug("Node type's {} icon is updated to {}", v.getMetadataProperty(GraphPropertyEnum.NAME), iconPath);
+ }
+ nameToIconMap.put(String.valueOf(v.getMetadataProperty(GraphPropertyEnum.NAME)), iconPath);
+ }
+ else {
+ log.error("Failed to update node type {} icon due to a reason: {}",
+ v.getMetadataProperty(GraphPropertyEnum.NAME), status);
+ throw new RuntimeException("Node update failure");
+ }
+ });
+ return nameToIconMap;
+ }
+
+ private StorageOperationStatus updateIconOnVertex(GraphVertex vertex, String iconPath) {
+ vertex.setJsonMetadataField(JsonPresentationFields.ICON, iconPath);
+ return updateVertexAndCommit(vertex);
+ }
+
+}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1911/SdcDeploymentArtTimeOutMigration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1911/SdcDeploymentArtTimeOutMigration.java
new file mode 100644
index 0000000000..cba562750a
--- /dev/null
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig1911/SdcDeploymentArtTimeOutMigration.java
@@ -0,0 +1,137 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2020 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=========================================================
+ */
+
+package org.openecomp.sdc.asdctool.migration.tasks.mig1911;
+
+import fj.data.Either;
+import org.openecomp.sdc.asdctool.migration.core.DBVersion;
+import org.openecomp.sdc.asdctool.migration.core.task.Migration;
+import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult;
+import org.openecomp.sdc.asdctool.migration.tasks.InstanceMigrationBase;
+import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
+import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
+import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
+import org.openecomp.sdc.be.dao.jsongraph.types.EdgeLabelEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.JsonParseFlagEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
+import org.openecomp.sdc.be.datatypes.elements.ArtifactDataDefinition;
+import org.openecomp.sdc.be.datatypes.elements.MapArtifactDataDefinition;
+import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
+import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
+import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
+import org.openecomp.sdc.common.api.ArtifactTypeEnum;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Component;
+
+import java.math.BigInteger;
+import java.util.Collection;
+import java.util.EnumMap;
+import java.util.List;
+import java.util.Map;
+import java.util.function.Predicate;
+import java.util.stream.Collectors;
+
+@Component
+public class SdcDeploymentArtTimeOutMigration extends InstanceMigrationBase implements Migration {
+
+ private static final Logger log = LoggerFactory.getLogger(SdcDeploymentArtTimeOutMigration.class);
+ private static Integer defaultTimeOut = 120;
+
+ public SdcDeploymentArtTimeOutMigration(JanusGraphDao janusGraphDao) {
+ super(janusGraphDao);
+ }
+
+ @Override
+ public String description() {
+ return "update instance deployment artifact timeOut to default value 120 minutes";
+ }
+
+ @Override
+ public DBVersion getVersion() {
+ return DBVersion.from(BigInteger.valueOf(1911), BigInteger.valueOf(0));
+ }
+
+ @Override
+ public MigrationResult migrate() {
+ StorageOperationStatus status = updateDeploymentArtifactTimeOut();
+ return status == StorageOperationStatus.OK ?
+ MigrationResult.success() : MigrationResult.error("failed to update instance deployment artifact timeOut. Error : " + status);
+ }
+
+ protected StorageOperationStatus updateDeploymentArtifactTimeOut() {
+ Map<GraphPropertyEnum, Object> propertiesToMatch = new EnumMap<>(GraphPropertyEnum.class);
+ propertiesToMatch.put(GraphPropertyEnum.COMPONENT_TYPE, ComponentTypeEnum.SERVICE.name());
+ Map<GraphPropertyEnum, Object> propertiesNotToMatch = new EnumMap<>(GraphPropertyEnum.class);
+ propertiesNotToMatch.put(GraphPropertyEnum.IS_DELETED, true);
+ Either<List<GraphVertex>, JanusGraphOperationStatus> byCriteria = janusGraphDao.getByCriteria(VertexTypeEnum.TOPOLOGY_TEMPLATE, propertiesToMatch, propertiesNotToMatch, JsonParseFlagEnum.ParseAll);
+ return byCriteria.either(this::proceed, this::handleError);
+ }
+
+ @Override
+ protected StorageOperationStatus handleOneContainer(GraphVertex containerVorig) {
+ StorageOperationStatus status = StorageOperationStatus.NOT_FOUND;
+ GraphVertex containerV = getVertexById(containerVorig.getUniqueId());
+ try {
+ Either<GraphVertex, JanusGraphOperationStatus> childVertex = janusGraphDao.getChildVertex(containerV, EdgeLabelEnum.INST_DEPLOYMENT_ARTIFACTS, JsonParseFlagEnum.ParseAll);
+ GraphVertex instDeployArt = childVertex.left().value();
+ Collection<MapArtifactDataDefinition> values = (Collection<MapArtifactDataDefinition>) instDeployArt.getJson().values();
+ List<ArtifactDataDefinition> artifactDataDefinitionsList = values.stream().map(f -> f.getMapToscaDataDefinition().values()).flatMap(f -> f.stream().filter(isRelevantArtifact())).collect(Collectors.toList());
+ artifactDataDefinitionsList.forEach(t -> t.setTimeout(defaultTimeOut));
+ status = updateVertexAndCommit(instDeployArt);
+
+ } catch (NullPointerException e) {
+ log.error("Null Pointer Exception occurred - this mean we have zombie vertex, migration task will continue anyway", e);
+ status = StorageOperationStatus.OK;
+ }
+ catch (Exception e) {
+ //it is happy flow as well
+ log.error("Exception occurred:", e);
+ log.error("Migration task will continue anyway, please find below vertex details related to this exception", e);
+ if (containerV != null){
+ log.error("containerV.getUniqueId() {} ---> ", containerV.getUniqueId());
+ }
+
+ status = StorageOperationStatus.OK;
+ } finally {
+ if (status != StorageOperationStatus.OK) {
+ janusGraphDao.rollback();
+ log.info("failed to update vertex ID {} ", containerV.getUniqueId());
+ if (status == StorageOperationStatus.NOT_FOUND) {
+ //it is happy flow as well
+ status = StorageOperationStatus.OK;
+ }
+ }
+ else{
+ log.info("vertex ID {} successfully updated", containerV.getUniqueId());
+ }
+
+ }
+ return status;
+ }
+
+ private static Predicate<ArtifactDataDefinition> isRelevantArtifact() {
+
+ return p -> ((p.getArtifactType().equals(ArtifactTypeEnum.HEAT.getType()) || p.getArtifactType().equals(ArtifactTypeEnum.HEAT_VOL.getType()) || p.getArtifactType().equals(ArtifactTypeEnum.HEAT_NET.getType()))
+ && p.getTimeout() != defaultTimeOut);
+
+ }
+
+}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig2002/SdcCollapsingRolesCERTIFIEDstateMigration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig2002/SdcCollapsingRolesCERTIFIEDstateMigration.java
new file mode 100644
index 0000000000..1d7d3d1298
--- /dev/null
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig2002/SdcCollapsingRolesCERTIFIEDstateMigration.java
@@ -0,0 +1,139 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2020 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=========================================================
+ */
+
+package org.openecomp.sdc.asdctool.migration.tasks.mig2002;
+
+import fj.data.Either;
+import org.apache.tinkerpop.gremlin.structure.Direction;
+import org.openecomp.sdc.asdctool.enums.DistributionStatusEnum;
+import org.openecomp.sdc.asdctool.enums.LifecycleStateEnum;
+import org.openecomp.sdc.asdctool.migration.core.DBVersion;
+import org.openecomp.sdc.asdctool.migration.core.task.Migration;
+import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult;
+import org.openecomp.sdc.asdctool.migration.tasks.InstanceMigrationBase;
+import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
+import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
+import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
+import org.openecomp.sdc.be.dao.jsongraph.types.EdgeLabelEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.EdgePropertyEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.JsonParseFlagEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
+import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
+import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
+import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Component;
+
+import java.math.BigInteger;
+import java.util.EnumMap;
+import java.util.List;
+import java.util.Map;
+
+@Component
+public class SdcCollapsingRolesCERTIFIEDstateMigration extends InstanceMigrationBase implements Migration {
+
+ private static final Logger log = LoggerFactory.getLogger(SdcCollapsingRolesCERTIFIEDstateMigration.class);
+
+ public SdcCollapsingRolesCERTIFIEDstateMigration(JanusGraphDao janusGraphDao) {
+ super(janusGraphDao);
+ }
+
+ @Override
+ public String description() {
+ return "remove LS=READY_FOR_CERTIFICATION edge from service node + migrate DISTRIBUTION approved/rejected states to <waiting for distribution> state";
+ }
+
+ @Override
+ public DBVersion getVersion() {
+ return DBVersion.from(BigInteger.valueOf(2002), BigInteger.valueOf(0));
+ }
+
+ @Override
+ public MigrationResult migrate() {
+ StorageOperationStatus status = updateServiceLifeCycleState();
+ return status == StorageOperationStatus.OK ?
+ MigrationResult.success() : MigrationResult.error("failed to service state. Error : " + status);
+ }
+
+ protected StorageOperationStatus updateServiceLifeCycleState() {
+ Map<GraphPropertyEnum, Object> propertiesToMatch = new EnumMap<>(GraphPropertyEnum.class);
+ propertiesToMatch.put(GraphPropertyEnum.COMPONENT_TYPE, ComponentTypeEnum.SERVICE.name());
+ propertiesToMatch.put(GraphPropertyEnum.STATE, LifecycleStateEnum.CERTIFIED.name());
+ Map<GraphPropertyEnum, Object> propertiesNotToMatch = new EnumMap<>(GraphPropertyEnum.class);
+ propertiesNotToMatch.put(GraphPropertyEnum.IS_DELETED, true);
+ Either<List<GraphVertex>, JanusGraphOperationStatus> byCriteria = janusGraphDao.getByCriteria(VertexTypeEnum.TOPOLOGY_TEMPLATE, propertiesToMatch, propertiesNotToMatch, JsonParseFlagEnum.ParseAll);
+ return byCriteria.either(this::proceed, this::handleError);
+ }
+
+ @Override
+ protected StorageOperationStatus handleOneContainer(GraphVertex containerVorig) {
+ StorageOperationStatus status = StorageOperationStatus.NOT_FOUND;
+ GraphVertex containerV = getVertexById(containerVorig.getUniqueId());
+ try {
+
+ //update edges to meet above change
+ // update LS eges from RFC to NOT_CERTIFIED_CHECKIN
+
+ updateEdgeProperty(EdgePropertyEnum.STATE, LifecycleStateEnum.NOT_CERTIFIED_CHECKIN.name(), getVertexEdge(containerV, Direction.IN, EdgeLabelEnum.LAST_STATE));
+
+ if (containerV.getMetadataProperty(GraphPropertyEnum.DISTRIBUTION_STATUS).equals(DistributionStatusEnum.DISTRIBUTION_APPROVED.name()) || containerV.getMetadataProperty(GraphPropertyEnum.DISTRIBUTION_STATUS).equals(DistributionStatusEnum.DISTRIBUTION_REJECTED.name())) {
+
+ // update vertex state property from DISTRIBUTION_APPROVED/REJECTED to DISTRIBUTION_NOT_APPROVED state
+
+ Map<GraphPropertyEnum, Object> metadataProperties = containerV.getMetadataProperties();
+ metadataProperties.put(GraphPropertyEnum.DISTRIBUTION_STATUS, DistributionStatusEnum.DISTRIBUTION_NOT_APPROVED.name());
+ containerV.setMetadataProperties(metadataProperties);
+
+ //update edges to meet above change
+ //delete LAST_DISTRIBUTION_STATE_MODIFIER edge
+
+ removeEdges(getVertexEdge(containerV, Direction.IN, EdgeLabelEnum.LAST_DISTRIBUTION_STATE_MODIFIER));
+
+ }
+
+ status = updateVertexAndCommit(containerV);
+
+ } catch (NullPointerException e) {
+ log.error("Null Pointer Exception occurred - this mean we have zombie vertex, migration task will continue anyway", e);
+ status = StorageOperationStatus.EXEUCTION_FAILED;
+ } catch (Exception e) {
+ //it is happy flow as well
+ log.error("Exception occurred:", e);
+ log.error("Migration task will continue anyway, please find below vertex details related to this exception", e);
+ if (containerV != null) {
+ log.error("containerV.getUniqueId() ---> {} ", containerV.getUniqueId());
+ }
+
+ } finally {
+ if (status != StorageOperationStatus.OK) {
+ janusGraphDao.rollback();
+ log.info("failed to update vertex ID {} ", containerV.getUniqueId());
+ log.info("Storage Operation Status {}", status.toString());
+ } else {
+ log.info("vertex ID {} successfully updated", containerV.getUniqueId());
+ }
+
+ }
+ return status;
+ }
+
+
+}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig2002/SdcCollapsingRolesCIPstateMigration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig2002/SdcCollapsingRolesCIPstateMigration.java
new file mode 100644
index 0000000000..463ccd8695
--- /dev/null
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig2002/SdcCollapsingRolesCIPstateMigration.java
@@ -0,0 +1,153 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2020 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=========================================================
+ */
+
+package org.openecomp.sdc.asdctool.migration.tasks.mig2002;
+
+import fj.data.Either;
+import org.apache.tinkerpop.gremlin.structure.Direction;
+import org.apache.tinkerpop.gremlin.structure.Edge;
+import org.apache.tinkerpop.gremlin.structure.Vertex;
+import org.openecomp.sdc.asdctool.enums.LifecycleStateEnum;
+import org.openecomp.sdc.asdctool.migration.core.DBVersion;
+import org.openecomp.sdc.asdctool.migration.core.task.Migration;
+import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult;
+import org.openecomp.sdc.asdctool.migration.tasks.InstanceMigrationBase;
+import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
+import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
+import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
+import org.openecomp.sdc.be.dao.jsongraph.types.EdgeLabelEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.EdgePropertyEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.JsonParseFlagEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
+import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
+import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
+import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Component;
+
+import java.math.BigInteger;
+import java.util.EnumMap;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+@Component
+public class SdcCollapsingRolesCIPstateMigration extends InstanceMigrationBase implements Migration {
+
+ private static final Logger log = LoggerFactory.getLogger(SdcCollapsingRolesCIPstateMigration.class);
+
+ public SdcCollapsingRolesCIPstateMigration(JanusGraphDao janusGraphDao) {
+ super(janusGraphDao);
+ }
+
+ @Override
+ public String description() {
+ return "update Service state from CERTIFICATION_IN_PROGRES to NOT_CERTIFIED_CHECKOUT state ";
+ }
+
+ @Override
+ public DBVersion getVersion() {
+ return DBVersion.from(BigInteger.valueOf(2002), BigInteger.valueOf(0));
+ }
+
+ @Override
+ public MigrationResult migrate() {
+ StorageOperationStatus status = updateServiceLifeCycleState();
+ return status == StorageOperationStatus.OK ?
+ MigrationResult.success() : MigrationResult.error("failed to service state. Error : " + status);
+ }
+
+ protected StorageOperationStatus updateServiceLifeCycleState() {
+ Map<GraphPropertyEnum, Object> propertiesToMatch = new EnumMap<>(GraphPropertyEnum.class);
+ propertiesToMatch.put(GraphPropertyEnum.COMPONENT_TYPE, ComponentTypeEnum.SERVICE.name());
+ propertiesToMatch.put(GraphPropertyEnum.STATE, LifecycleStateEnum.CERTIFICATION_IN_PROGRESS.name());
+ propertiesToMatch.put(GraphPropertyEnum.IS_HIGHEST_VERSION, true);
+ Map<GraphPropertyEnum, Object> propertiesNotToMatch = new EnumMap<>(GraphPropertyEnum.class);
+ propertiesNotToMatch.put(GraphPropertyEnum.IS_DELETED, true);
+ Either<List<GraphVertex>, JanusGraphOperationStatus> byCriteria = janusGraphDao.getByCriteria(VertexTypeEnum.TOPOLOGY_TEMPLATE, propertiesToMatch, propertiesNotToMatch, JsonParseFlagEnum.ParseAll);
+ return byCriteria.either(this::proceed, this::handleError);
+ }
+
+ @Override
+ protected StorageOperationStatus handleOneContainer(GraphVertex containerVorig) {
+ StorageOperationStatus status = StorageOperationStatus.NOT_FOUND;
+ GraphVertex containerV = getVertexById(containerVorig.getUniqueId());
+ try {
+
+ // update vertex state property from READY_FOR_CERTIFICATION to NOT_CERTIFIED_CHECKIN state
+
+ Map<GraphPropertyEnum, Object> metadataProperties = containerV.getMetadataProperties();
+ metadataProperties.put(GraphPropertyEnum.STATE, LifecycleStateEnum.NOT_CERTIFIED_CHECKIN.name());
+ containerV.setMetadataProperties(metadataProperties);
+
+ //update edges to meet above change
+ // remove STATE and LAST_MODIFIER edges
+ removeEdges(getVertexEdge(containerV, Direction.IN, EdgeLabelEnum.STATE));
+ removeEdges(getVertexEdge(containerV, Direction.IN, EdgeLabelEnum.LAST_MODIFIER));
+
+ //find designer with LS = NOT_CERTIFIED_CHECKIN
+ Vertex relevantDesigner = findRelevantDesigner(getVertexEdge(containerV, Direction.IN, EdgeLabelEnum.LAST_STATE));
+ removeEdges(getVertexEdge(containerV, Direction.IN, EdgeLabelEnum.LAST_STATE));
+ Map<EdgePropertyEnum, Object> edgeProperties = new HashMap<>();
+ edgeProperties.put(EdgePropertyEnum.STATE, LifecycleStateEnum.NOT_CERTIFIED_CHECKIN.name());
+ JanusGraphOperationStatus createSTedgeStatus = janusGraphDao.createEdge(relevantDesigner, containerV.getVertex(), EdgeLabelEnum.STATE, edgeProperties);
+ JanusGraphOperationStatus createLMedgeStatus = janusGraphDao.createEdge(relevantDesigner, containerV.getVertex(), EdgeLabelEnum.LAST_MODIFIER, new HashMap<>());
+
+ status = updateVertexAndCommit(containerV);
+
+ } catch (NullPointerException e) {
+ log.error("Null Pointer Exception occurred - this mean we have zombie vertex, migration task will continue anyway", e);
+ status = StorageOperationStatus.EXEUCTION_FAILED;
+ } catch (Exception e) {
+ //it is happy flow as well
+ log.error("Exception occurred:", e);
+ log.error("Migration task will continue anyway, please find below vertex details related to this exception", e);
+ if (containerV != null) {
+ log.error("containerV.getUniqueId() ---> {} ", containerV.getUniqueId());
+ }
+
+ } finally {
+ if (status != StorageOperationStatus.OK) {
+ janusGraphDao.rollback();
+ log.info("failed to update vertex ID {} ", containerV.getUniqueId());
+ log.info("Storage Operation Status {}", status.toString());
+ } else {
+ log.info("vertex ID {} successfully updated", containerV.getUniqueId());
+ }
+
+ }
+ return status;
+ }
+
+ private Vertex findRelevantDesigner(Iterator<Edge> edges) {
+ Vertex vertex = null;
+ while (edges.hasNext()) {
+ Edge edge = edges.next();
+ String state = (String) janusGraphDao.getProperty(edge, EdgePropertyEnum.STATE);
+ if (state.equals(LifecycleStateEnum.NOT_CERTIFIED_CHECKIN.name())) {
+ vertex = edge.outVertex();
+ }
+ }
+ return vertex;
+ }
+
+}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig2002/SdcCollapsingRolesRFCstateMigration.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig2002/SdcCollapsingRolesRFCstateMigration.java
new file mode 100644
index 0000000000..559715ef5d
--- /dev/null
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/migration/tasks/mig2002/SdcCollapsingRolesRFCstateMigration.java
@@ -0,0 +1,147 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2020 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=========================================================
+ */
+
+package org.openecomp.sdc.asdctool.migration.tasks.mig2002;
+
+import fj.data.Either;
+import org.apache.tinkerpop.gremlin.structure.Direction;
+import org.janusgraph.core.JanusGraphVertex;
+import org.openecomp.sdc.asdctool.enums.LifecycleStateEnum;
+import org.openecomp.sdc.asdctool.migration.core.DBVersion;
+import org.openecomp.sdc.asdctool.migration.core.task.Migration;
+import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult;
+import org.openecomp.sdc.asdctool.migration.tasks.InstanceMigrationBase;
+import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
+import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
+import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
+import org.openecomp.sdc.be.dao.jsongraph.types.EdgeLabelEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.EdgePropertyEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.JsonParseFlagEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
+import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
+import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
+import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Component;
+
+import java.math.BigInteger;
+import java.util.EnumMap;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@Component
+public class SdcCollapsingRolesRFCstateMigration extends InstanceMigrationBase implements Migration {
+
+ private static final Logger log = LoggerFactory.getLogger(SdcCollapsingRolesRFCstateMigration.class);
+
+ public SdcCollapsingRolesRFCstateMigration(JanusGraphDao janusGraphDao) {
+ super(janusGraphDao);
+ }
+
+ @Override
+ public String description() {
+ return "update Service state from READY_FOR_CERTIFICATION to NOT_CERTIFIED_CHECKOUT state ";
+ }
+
+ @Override
+ public DBVersion getVersion() {
+ return DBVersion.from(BigInteger.valueOf(2002), BigInteger.valueOf(0));
+ }
+
+ @Override
+ public MigrationResult migrate() {
+ StorageOperationStatus status = updateServiceLifeCycleState();
+ return status == StorageOperationStatus.OK ?
+ MigrationResult.success() : MigrationResult.error("failed to service state. Error : " + status);
+ }
+
+ protected StorageOperationStatus updateServiceLifeCycleState() {
+ Map<GraphPropertyEnum, Object> propertiesToMatch = new EnumMap<>(GraphPropertyEnum.class);
+ propertiesToMatch.put(GraphPropertyEnum.COMPONENT_TYPE, ComponentTypeEnum.SERVICE.name());
+ propertiesToMatch.put(GraphPropertyEnum.STATE, LifecycleStateEnum.READY_FOR_CERTIFICATION.name());
+ propertiesToMatch.put(GraphPropertyEnum.IS_HIGHEST_VERSION, true);
+ Map<GraphPropertyEnum, Object> propertiesNotToMatch = new EnumMap<>(GraphPropertyEnum.class);
+ propertiesNotToMatch.put(GraphPropertyEnum.IS_DELETED, true);
+ Either<List<GraphVertex>, JanusGraphOperationStatus> byCriteria = janusGraphDao.getByCriteria(VertexTypeEnum.TOPOLOGY_TEMPLATE, propertiesToMatch, propertiesNotToMatch, JsonParseFlagEnum.ParseAll);
+ return byCriteria.either(this::proceed, this::handleError);
+ }
+
+ @Override
+ protected StorageOperationStatus handleOneContainer(GraphVertex containerVorig) {
+ StorageOperationStatus status = StorageOperationStatus.NOT_FOUND;
+ GraphVertex containerV = getVertexById(containerVorig.getUniqueId());
+ try {
+
+ // update vertex state property from READY_FOR_CERTIFICATION to NOT_CERTIFIED_CHECKIN state
+
+ Map<GraphPropertyEnum, Object> metadataProperties = containerV.getMetadataProperties();
+ metadataProperties.put(GraphPropertyEnum.STATE, LifecycleStateEnum.NOT_CERTIFIED_CHECKIN.name());
+ containerV.setMetadataProperties(metadataProperties);
+
+ //update edges to meet above change
+
+ List<JanusGraphVertex> stateEdgesOutVertexList = getVertexByEdgeSide(getVertexEdge(containerV, Direction.IN, EdgeLabelEnum.STATE), EdgeSide.OUT);
+ List<JanusGraphVertex> lastStateEdgesOutVertexList = getVertexByEdgeSide(getVertexEdge(containerV, Direction.IN, EdgeLabelEnum.LAST_STATE), EdgeSide.OUT);
+
+ if (sameUser(stateEdgesOutVertexList, lastStateEdgesOutVertexList)) {
+ updateEdgeProperty(EdgePropertyEnum.STATE, LifecycleStateEnum.NOT_CERTIFIED_CHECKIN.name(), getVertexEdge(containerV, Direction.IN, EdgeLabelEnum.STATE));
+ removeEdges(getVertexEdge(containerV, Direction.IN, EdgeLabelEnum.LAST_STATE));
+ } else {
+ removeEdges(getVertexEdge(containerV, Direction.IN, EdgeLabelEnum.STATE));
+ removeEdges(getVertexEdge(containerV, Direction.IN, EdgeLabelEnum.LAST_STATE));
+ Map<EdgePropertyEnum, Object> edgeProperties = new HashMap<>();
+ edgeProperties.put(EdgePropertyEnum.STATE, LifecycleStateEnum.NOT_CERTIFIED_CHECKIN.name());
+ janusGraphDao.createEdge(lastStateEdgesOutVertexList.get(0), containerV.getVertex(), EdgeLabelEnum.STATE, edgeProperties);
+
+ }
+
+ status = updateVertexAndCommit(containerV);
+
+ } catch (NullPointerException e) {
+ log.error("Null Pointer Exception occurred - this mean we have zombie vertex, migration task will continue anyway", e);
+ status = StorageOperationStatus.EXEUCTION_FAILED;
+ } catch (Exception e) {
+ //it is happy flow as well
+ log.error("Exception occurred:", e);
+ log.error("Migration task will ?" +
+ "" +
+ "" +
+ ", please find below vertex details related to this exception", e);
+ if (containerV != null) {
+ log.error("containerV.getUniqueId() ---> {} ", containerV.getUniqueId());
+ }
+
+ } finally {
+ if (status != StorageOperationStatus.OK) {
+ janusGraphDao.rollback();
+ log.info("failed to update vertex ID {} ", containerV.getUniqueId());
+ log.info("Storage Operation Status {}", status.toString());
+ } else {
+ log.info("vertex ID {} successfully updated", containerV.getUniqueId());
+ }
+
+ }
+ return status;
+ }
+
+
+}
diff --git a/asdctool/src/main/java/org/openecomp/sdc/asdctool/servlets/ExportImportJanusGraphServlet.java b/asdctool/src/main/java/org/openecomp/sdc/asdctool/servlets/ExportImportJanusGraphServlet.java
index e7d39ffb3e..412926fa6c 100644
--- a/asdctool/src/main/java/org/openecomp/sdc/asdctool/servlets/ExportImportJanusGraphServlet.java
+++ b/asdctool/src/main/java/org/openecomp/sdc/asdctool/servlets/ExportImportJanusGraphServlet.java
@@ -20,11 +20,11 @@
package org.openecomp.sdc.asdctool.servlets;
-import org.janusgraph.core.JanusGraph;
import org.apache.commons.configuration.BaseConfiguration;
import org.apache.commons.configuration.Configuration;
import org.apache.tinkerpop.gremlin.structure.io.graphml.GraphMLWriter;
import org.glassfish.jersey.media.multipart.FormDataParam;
+import org.janusgraph.core.JanusGraph;
import org.openecomp.sdc.asdctool.Utils;
import org.openecomp.sdc.common.log.wrappers.Logger;
@@ -34,7 +34,13 @@ import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
-import java.io.*;
+import java.io.BufferedOutputStream;
+import java.io.BufferedReader;
+import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.FileReader;
+import java.io.IOException;
+import java.io.OutputStream;
import java.util.Map.Entry;
import java.util.Properties;
//import com.tinkerpop.blueprints.util.io.graphml.GraphMLWriter;
@@ -146,7 +152,7 @@ public class ExportImportJanusGraphServlet {
result = outputFile;
} catch (Exception e) {
- log.info("export Graph failed - {}" , e);
+ e.printStackTrace();
// graph.rollback();
graph.tx().rollback();
} finally {
@@ -155,7 +161,7 @@ public class ExportImportJanusGraphServlet {
out.close();
}
} catch (IOException e) {
- log.info("close FileOutputStream failed - {}" , e);
+ e.printStackTrace();
}
}
return result;
diff --git a/asdctool/src/main/resources/application-context.xml b/asdctool/src/main/resources/application-context.xml
index c9a13df44a..252b951895 100644
--- a/asdctool/src/main/resources/application-context.xml
+++ b/asdctool/src/main/resources/application-context.xml
@@ -1,11 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="
- http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
- http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd">
-
-
- <util:properties id="elasticsearchConfig" location="file:${config.home}/elasticsearch.yml" />
-
+ http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd">
</beans>
diff --git a/asdctool/src/main/resources/config/configuration.yaml b/asdctool/src/main/resources/config/configuration.yaml
index cc7a3cf295..93bb2de2be 100644
--- a/asdctool/src/main/resources/config/configuration.yaml
+++ b/asdctool/src/main/resources/config/configuration.yaml
@@ -23,12 +23,13 @@ beSslPort: 8443
version: 1.0
released: 2012-11-30
-toscaConformanceLevel: 8.0
+toscaConformanceLevel: 12.0
minToscaConformanceLevel: 3.0
# These values are necessary for running upgrade migration 1710.0 process
enableAutoHealing: false
appVersion: 1.1.0
+artifactGeneratorConfig: Artifact-Generator.properties
resourcesForUpgrade:
8.0:
- org.openecomp.resource.cp.extCP
@@ -53,8 +54,6 @@ janusGraphReconnectIntervalInSeconds: 3
# The read timeout towards JanusGraph DB when health check is invoked:
janusGraphHealthCheckReadTimeout: 1
-# The interval to try and reconnect to Elasticsearch when it is down during ASDC startup:
-esReconnectIntervalInSeconds: 3
uebHealthCheckReconnectIntervalInSeconds: 15
uebHealthCheckReadTimeout: 4
@@ -107,30 +106,6 @@ cassandraConfig:
- { name: sdccomponent, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['DC-AIO-Ubuntu1', '1']}
- { name: sdcrepository, replicationStrategy: NetworkTopologyStrategy, replicationInfo: ['DC-AIO-Ubuntu1', '1']}
-
-#Application-specific settings of ES
-elasticSearch:
- # Mapping of index prefix to time-based frame. For example, if below is configured:
- #
- # - indexPrefix: auditingevents
- # creationPeriod: minute
- #
- # then ES object of type which is mapped to "auditingevents-*" template, and created on 2015-12-23 13:24:54, will enter "auditingevents-2015-12-23-13-24" index.
- # Another object created on 2015-12-23 13:25:54, will enter "auditingevents-2015-12-23-13-25" index.
- # If creationPeriod: month, both of the above will enter "auditingevents-2015-12" index.
- #
- # PLEASE NOTE: the timestamps are created in UTC/GMT timezone! This is needed so that timestamps will be correctly presented in Kibana.
- #
- # Legal values for creationPeriod - year, month, day, hour, minute, none (meaning no time-based behaviour).
- #
- # If no creationPeriod is configured for indexPrefix, default behavour is creationPeriod: month.
-
- indicesTimeFrequency:
- - indexPrefix: auditingevents
- creationPeriod: month
- - indexPrefix: monitoring_events
- creationPeriod: month
-
artifactTypes:
- CHEF
- PUPPET
@@ -176,11 +151,6 @@ resourceTypes: &allResourceTypes
# - VF
# - VL
deploymentResourceArtifacts:
- cdsBlueprint:
- displayName: "CDS Blueprint"
- type: CONTROLLER_BLUEPRINT_ARCHIVE
- description: "CDS deployment artifact"
- fileExtension: "zip"
# heat:
# displayName: "Base HEAT Template"
# type: HEAT
@@ -318,7 +288,10 @@ systemMonitoring:
isProxy: false
probeIntervalInSeconds: 15
-defaultHeatArtifactTimeoutMinutes: 60
+heatArtifactDeploymentTimeout:
+ defaultMinutes: 30
+ minMinutes: 1
+ maxMinutes: 120
serviceDeploymentArtifacts:
CONTROLLER_BLUEPRINT_ARCHIVE:
@@ -506,7 +479,6 @@ resourceDeploymentArtifacts:
ONBOARDED_PACKAGE:
acceptedTypes:
- csar
- - zip
validForResourceTypes:
- VF
- PNF
@@ -614,10 +586,6 @@ resourceInformationalArtifacts:
resourceInformationalDeployedArtifacts:
-requirementsToFulfillBeforeCert:
-
-capabilitiesToConsumeBeforeCert:
-
unLoggedUrls:
- /sdc2/rest/healthCheck
@@ -701,3 +669,59 @@ genericAssetNodeTypes:
VF : org.openecomp.resource.abstract.nodes.VF
PNF: org.openecomp.resource.abstract.nodes.PNF
Service: org.openecomp.resource.abstract.nodes.service
+
+dmaapConsumerConfiguration:
+ hosts: olsd004.wnsnet.attws.com:3905
+ consumerGroup: asdc
+ consumerId: mama #mama - in Order To Consume Remove This String And Replace It With -> mama
+ timeoutMs: 15000
+ limit: 1
+ pollingInterval: 2
+ topic: com.att.sdc.23911-SDCforTestDev-v001
+ latitude: 32.109333
+ longitude: 34.855499
+ version: 1.0
+ serviceName: dmaap-v1.dev.dmaap.dt.saat.acsi.att.com/events
+ environment: TEST
+ partner: BOT_R
+ routeOffer: MR1
+ protocol: https
+ contenttype: application/json
+ dme2TraceOn: true
+ aftEnvironment: AFTUAT
+ aftDme2ConnectionTimeoutMs: 15000
+ aftDme2RoundtripTimeoutMs: 240000
+ aftDme2ReadTimeoutMs: 50000
+ dme2preferredRouterFilePath: DME2preferredRouter.txt
+ timeLimitForNotificationHandleMs: 120000
+ credential:
+ username: m09875@sdc.att.com
+ password: hmXYcznAljMSisdy8zgcag==
+
+dmaapProducerConfiguration:
+ hosts: olsd004.wnsnet.attws.com:3905
+ consumerGroup: asdc
+ consumerId: mama #mama - in Order To Consume Remove This String And Replace It With -> mama
+ timeoutMs: 15000
+ limit: 1
+ pollingInterval: 2
+ topic: com.att.sdc.23911-SDCforTestDev-v001
+ latitude: 32.109333
+ longitude: 34.855499
+ version: 1.0
+ serviceName: dmaap-v1.dev.dmaap.dt.saat.acsi.att.com/events
+ environment: TEST
+ partner: BOT_R
+ routeOffer: MR1
+ protocol: https
+ contenttype: application/json
+ dme2TraceOn: true
+ aftEnvironment: AFTUAT
+ aftDme2ConnectionTimeoutMs: 15000
+ aftDme2RoundtripTimeoutMs: 240000
+ aftDme2ReadTimeoutMs: 50000
+ dme2preferredRouterFilePath: DME2preferredRouter.txt
+ timeLimitForNotificationHandleMs: 120000
+ credential:
+ username: m09875@sdc.att.com
+ password: hmXYcznAljMSisdy8zgcag== \ No newline at end of file
diff --git a/asdctool/src/main/resources/config/dataTypes.yml b/asdctool/src/main/resources/config/dataTypes.yml
index d768bffe78..43c7f0c844 100644
--- a/asdctool/src/main/resources/config/dataTypes.yml
+++ b/asdctool/src/main/resources/config/dataTypes.yml
@@ -114,12 +114,12 @@ org.openecomp.datatypes.heat.network.AddressPair:
type: string
description: MAC address
required: false
- status: supported
+ status: SUPPORTED
ip_address:
type: string
description: IP address
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.network.subnet.HostRoute:
derived_from: tosca.datatypes.Root
description: Host route info for the subnet
@@ -128,12 +128,12 @@ org.openecomp.datatypes.heat.network.subnet.HostRoute:
type: string
description: The destination for static route
required: false
- status: supported
+ status: SUPPORTED
nexthop:
type: string
description: The next hop for the destination
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.network.AllocationPool:
derived_from: tosca.datatypes.Root
@@ -143,12 +143,12 @@ org.openecomp.datatypes.heat.network.AllocationPool:
type: string
description: Start address for the allocation pool
required: false
- status: supported
+ status: SUPPORTED
end:
type: string
description: End address for the allocation pool
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.network.neutron.Subnet:
derived_from: tosca.datatypes.Root
@@ -158,18 +158,18 @@ org.openecomp.datatypes.heat.network.neutron.Subnet:
type: string
description: The ID of the tenant who owns the network
required: false
- status: supported
+ status: SUPPORTED
enable_dhcp:
type: boolean
description: Set to true if DHCP is enabled and false if DHCP is disabled
required: false
default: true
- status: supported
+ status: SUPPORTED
ipv6_address_mode:
type: string
description: IPv6 address mode
required: false
- status: supported
+ status: SUPPORTED
constraints:
- valid_values:
- dhcpv6-stateful
@@ -179,7 +179,7 @@ org.openecomp.datatypes.heat.network.neutron.Subnet:
type: string
description: IPv6 RA (Router Advertisement) mode
required: false
- status: supported
+ status: SUPPORTED
constraints:
- valid_values:
- dhcpv6-stateful
@@ -191,35 +191,35 @@ org.openecomp.datatypes.heat.network.neutron.Subnet:
required: false
default: {
}
- status: supported
+ status: SUPPORTED
entry_schema:
type: string
allocation_pools:
type: list
description: The start and end addresses for the allocation pools
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.network.AllocationPool
subnetpool:
type: string
description: The name or ID of the subnet pool
required: false
- status: supported
+ status: SUPPORTED
dns_nameservers:
type: list
description: A specified set of DNS name servers to be used
required: false
default: [
]
- status: supported
+ status: SUPPORTED
entry_schema:
type: string
host_routes:
type: list
description: The gateway IP address
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.network.subnet.HostRoute
ip_version:
@@ -227,7 +227,7 @@ org.openecomp.datatypes.heat.network.neutron.Subnet:
description: The gateway IP address
required: false
default: 4
- status: supported
+ status: SUPPORTED
constraints:
- valid_values:
- '4'
@@ -236,24 +236,24 @@ org.openecomp.datatypes.heat.network.neutron.Subnet:
type: string
description: The name of the subnet
required: false
- status: supported
+ status: SUPPORTED
prefixlen:
type: integer
description: Prefix length for subnet allocation from subnet pool
required: false
- status: supported
+ status: SUPPORTED
constraints:
- greater_or_equal: 0
cidr:
type: string
description: The CIDR
required: false
- status: supported
+ status: SUPPORTED
gateway_ip:
type: string
description: The gateway IP address
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.novaServer.network.PortExtraProperties:
derived_from: tosca.datatypes.Root
@@ -263,35 +263,35 @@ org.openecomp.datatypes.heat.novaServer.network.PortExtraProperties:
type: boolean
description: Flag to enable/disable port security on the port
required: false
- status: supported
+ status: SUPPORTED
mac_address:
type: string
description: MAC address to give to this port
required: false
- status: supported
+ status: SUPPORTED
admin_state_up:
type: boolean
description: The administrative state of this port
required: false
default: true
- status: supported
+ status: SUPPORTED
qos_policy:
type: string
description: The name or ID of QoS policy to attach to this port
required: false
- status: supported
+ status: SUPPORTED
allowed_address_pairs:
type: list
description: Additional MAC/IP address pairs allowed to pass through the port
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.network.AddressPair
binding:vnic_type:
type: string
description: The vnic type to be bound on the neutron port
required: false
- status: supported
+ status: SUPPORTED
constraints:
- valid_values:
- macvtap
@@ -303,7 +303,7 @@ org.openecomp.datatypes.heat.novaServer.network.PortExtraProperties:
required: false
default: {
}
- status: supported
+ status: SUPPORTED
entry_schema:
type: string
org.openecomp.datatypes.heat.novaServer.network.AddressInfo:
@@ -314,7 +314,7 @@ org.openecomp.datatypes.heat.novaServer.network.AddressInfo:
type: string
description: Port id
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.neutron.port.FixedIps:
derived_from: tosca.datatypes.Root
description: subnet/ip_address
@@ -323,12 +323,12 @@ org.openecomp.datatypes.heat.neutron.port.FixedIps:
type: string
description: Subnet in which to allocate the IP address for this port
required: false
- status: supported
+ status: SUPPORTED
ip_address:
type: string
description: IP address desired in the subnet for this port
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.FileInfo:
derived_from: tosca.datatypes.Root
description: Heat File Info
@@ -337,12 +337,12 @@ org.openecomp.datatypes.heat.FileInfo:
type: string
description: The required URI string (relative or absolute) which can be used to locate the file
required: true
- status: supported
+ status: SUPPORTED
file_type:
type: string
description: The type of the file
required: true
- status: supported
+ status: SUPPORTED
constraints:
- valid_values:
- base
@@ -357,12 +357,12 @@ org.openecomp.datatypes.heat.contrail.network.rule.PortPairs:
type: string
description: Start port
required: false
- status: supported
+ status: SUPPORTED
end_port:
type: string
description: End port
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrail.network.rule.Rule:
derived_from: tosca.datatypes.Root
description: policy rule
@@ -371,45 +371,45 @@ org.openecomp.datatypes.heat.contrail.network.rule.Rule:
type: list
description: Source ports
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.contrail.network.rule.PortPairs
protocol:
type: string
description: Protocol
required: false
- status: supported
+ status: SUPPORTED
dst_addresses:
type: list
description: Destination addresses
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork
apply_service:
type: string
description: Service to apply
required: false
- status: supported
+ status: SUPPORTED
dst_ports:
type: list
description: Destination ports
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.contrail.network.rule.PortPairs
src_addresses:
type: list
description: Source addresses
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork
direction:
type: string
description: Direction
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrail.network.rule.RuleList:
derived_from: tosca.datatypes.Root
description: list of policy rules
@@ -418,7 +418,7 @@ org.openecomp.datatypes.heat.contrail.network.rule.RuleList:
type: list
description: Contrail network rule
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.contrail.network.rule.Rule
org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork:
@@ -429,7 +429,7 @@ org.openecomp.datatypes.heat.contrail.network.rule.VirtualNetwork:
type: string
description: Virtual network
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
derived_from: tosca.datatypes.Root
@@ -439,12 +439,12 @@ org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
type: string
description: The remote group ID to be associated with this security group rule
required: false
- status: supported
+ status: SUPPORTED
protocol:
type: string
description: The protocol that is matched by the security group rule
required: false
- status: supported
+ status: SUPPORTED
constraints:
- valid_values:
- tcp
@@ -455,7 +455,7 @@ org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
description: Ethertype of the traffic
required: false
default: IPv4
- status: supported
+ status: SUPPORTED
constraints:
- valid_values:
- IPv4
@@ -465,7 +465,7 @@ org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
description: 'The maximum port number in the range that is matched by the
security group rule. '
required: false
- status: supported
+ status: SUPPORTED
constraints:
- in_range:
- 0
@@ -474,13 +474,13 @@ org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
type: string
description: The remote IP prefix (CIDR) to be associated with this security group rule
required: false
- status: supported
+ status: SUPPORTED
remote_mode:
type: string
description: Whether to specify a remote group or a remote IP prefix
required: false
default: remote_ip_prefix
- status: supported
+ status: SUPPORTED
constraints:
- valid_values:
- remote_ip_prefix
@@ -490,7 +490,7 @@ org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
description: The direction in which the security group rule is applied
required: false
default: ingress
- status: supported
+ status: SUPPORTED
constraints:
- valid_values:
- egress
@@ -499,7 +499,7 @@ org.openecomp.datatypes.heat.network.neutron.SecurityRules.Rule:
type: integer
description: The minimum port number in the range that is matched by the security group rule.
required: false
- status: supported
+ status: SUPPORTED
constraints:
- in_range:
- 0
@@ -512,13 +512,13 @@ org.openecomp.datatypes.heat.substitution.SubstitutionFiltering:
type: string
description: Substitute Service Template
required: true
- status: supported
+ status: SUPPORTED
index_value:
type: integer
description: Index value of the substitution service template runtime instance
required: false
default: 0
- status: supported
+ status: SUPPORTED
constraints:
- greater_or_equal: 0
count:
@@ -526,19 +526,19 @@ org.openecomp.datatypes.heat.substitution.SubstitutionFiltering:
description: Count
required: false
default: 1
- status: supported
+ status: SUPPORTED
scaling_enabled:
type: boolean
description: Indicates whether service scaling is enabled
required: false
default: true
- status: supported
+ status: SUPPORTED
mandatory:
type: boolean
description: Mandatory
required: false
default: true
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence:
derived_from: tosca.datatypes.Root
description: network policy refs data sequence
@@ -547,12 +547,12 @@ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence:
type: integer
description: Network Policy ref data sequence Major
required: false
- status: supported
+ status: SUPPORTED
network_policy_refs_data_sequence_minor:
type: integer
description: Network Policy ref data sequence Minor
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefData:
derived_from: tosca.datatypes.Root
description: network policy refs data
@@ -561,7 +561,7 @@ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefData:
type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.RefDataSequence
description: Network Policy ref data sequence
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet:
derived_from: tosca.datatypes.Root
description: Network Ipam Ref Data Subnet
@@ -570,12 +570,12 @@ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet
type: string
description: Network ipam refs data ipam subnets ip prefix len
required: false
- status: supported
+ status: SUPPORTED
network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
type: string
description: Network ipam refs data ipam subnets ip prefix
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnetList:
derived_from: tosca.datatypes.Root
description: Network Ipam Ref Data Subnet List
@@ -584,12 +584,12 @@ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet
type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnet
description: Network ipam refs data ipam subnets
required: false
- status: supported
+ status: SUPPORTED
network_ipam_refs_data_ipam_subnets_addr_from_start:
type: string
description: Network ipam refs data ipam subnets addr from start
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.IpamRefData:
derived_from: tosca.datatypes.Root
description: Network Ipam Ref Data
@@ -598,7 +598,7 @@ org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.IpamRefData:
type: list
description: Network ipam refs data ipam subnets
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.contrailV2.virtual.network.rule.ref.data.IpamSubnetList
org.openecomp.datatypes.heat.contrailV2.network.rule.SrcVirtualNetwork:
@@ -609,7 +609,7 @@ org.openecomp.datatypes.heat.contrailV2.network.rule.SrcVirtualNetwork:
type: string
description: Source addresses Virtual network
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.network.rule.DstVirtualNetwork:
derived_from: tosca.datatypes.Root
description: destination addresses
@@ -618,7 +618,7 @@ org.openecomp.datatypes.heat.contrailV2.network.rule.DstVirtualNetwork:
type: string
description: Destination addresses Virtual network
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs:
derived_from: tosca.datatypes.Root
description: destination port pairs
@@ -627,12 +627,12 @@ org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs:
type: string
description: Start port
required: false
- status: supported
+ status: SUPPORTED
network_policy_entries_policy_rule_dst_ports_end_port:
type: string
description: End port
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs:
derived_from: tosca.datatypes.Root
description: source port pairs
@@ -641,12 +641,12 @@ org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs:
type: string
description: Start port
required: false
- status: supported
+ status: SUPPORTED
network_policy_entries_policy_rule_src_ports_end_port:
type: string
description: End port
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList:
derived_from: tosca.datatypes.Root
description: Action List
@@ -655,12 +655,12 @@ org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList:
type: string
description: Simple Action
required: false
- status: supported
+ status: SUPPORTED
network_policy_entries_policy_rule_action_list_apply_service:
type: list
description: Apply Service
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: string
org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList:
@@ -671,12 +671,12 @@ org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList:
type: string
description: Simple Action
required: false
- status: supported
+ status: SUPPORTED
network_policy_entries_policy_rule_action_list_apply_service:
type: list
description: Apply Service
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: string
org.openecomp.datatypes.heat.contrailV2.network.rule.Rule:
@@ -687,45 +687,45 @@ org.openecomp.datatypes.heat.contrailV2.network.rule.Rule:
type: list
description: Destination addresses
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.contrailV2.network.rule.DstVirtualNetwork
network_policy_entries_policy_rule_dst_ports:
type: list
description: Destination ports
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.contrailV2.network.rule.DstPortPairs
network_policy_entries_policy_rule_protocol:
type: string
description: Protocol
required: false
- status: supported
+ status: SUPPORTED
network_policy_entries_policy_rule_src_addresses:
type: list
description: Source addresses
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.contrailV2.network.rule.SrcVirtualNetwork
network_policy_entries_policy_rule_direction:
type: string
description: Direction
required: false
- status: supported
+ status: SUPPORTED
network_policy_entries_policy_rule_src_ports:
type: list
description: Source ports
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.contrailV2.network.rule.SrcPortPairs
network_policy_entries_policy_rule_action_list:
type: org.openecomp.datatypes.heat.contrailV2.network.rule.ActionList
description: Action list
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.network.rule.RuleList:
derived_from: tosca.datatypes.Root
description: list of policy rules
@@ -734,7 +734,7 @@ org.openecomp.datatypes.heat.contrailV2.network.rule.RuleList:
type: list
description: Contrail network rule
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.contrailV2.network.rule.Rule
org.openecomp.datatypes.heat.network.contrail.port.StaticRoute:
@@ -745,17 +745,17 @@ org.openecomp.datatypes.heat.network.contrail.port.StaticRoute:
type: string
description: Route prefix
required: false
- status: supported
+ status: SUPPORTED
next_hop:
type: string
description: Next hop
required: false
- status: supported
+ status: SUPPORTED
next_hop_type:
type: string
description: Next hop type
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.network.contrail.AddressPair:
derived_from: tosca.datatypes.Root
description: Address Pair
@@ -764,7 +764,7 @@ org.openecomp.datatypes.heat.network.contrail.AddressPair:
type: string
description: Address mode active-active or active-standy
required: false
- status: supported
+ status: SUPPORTED
constraints:
- valid_values:
- active-active
@@ -773,12 +773,12 @@ org.openecomp.datatypes.heat.network.contrail.AddressPair:
type: string
description: IP address prefix
required: false
- status: supported
+ status: SUPPORTED
mac_address:
type: string
description: Mac address
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.network.contrail.InterfaceData:
derived_from: tosca.datatypes.Root
description: Interface Data
@@ -787,26 +787,26 @@ org.openecomp.datatypes.heat.network.contrail.InterfaceData:
type: list
description: An ordered list of static routes to be added to this interface
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.network.contrail.port.StaticRoute
virtual_network:
type: string
description: Virtual Network for this interface
required: true
- status: supported
+ status: SUPPORTED
allowed_address_pairs:
type: list
description: List of allowed address pair for this interface
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.network.contrail.AddressPair
ip_address:
type: string
description: IP for this interface
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.virtual.machine.interface.Properties:
derived_from: tosca.datatypes.Root
description: Virtual Machine Interface Properties.
@@ -815,7 +815,7 @@ org.openecomp.datatypes.heat.contrailV2.virtual.machine.interface.Properties:
type: string
description: Service Interface Type.
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.Root:
derived_from: tosca.datatypes.Root
description: >
@@ -1061,12 +1061,12 @@ org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair
type: string
description: IP Prefix.
required: false
- status: supported
+ status: SUPPORTED
ip_prefix_len:
type: integer
description: IP Prefix Len.
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.MacAddress:
derived_from: tosca.datatypes.Root
@@ -1076,7 +1076,7 @@ org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.MacAddress:
type: list
description: Mac Addresses List.
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: string
@@ -1088,7 +1088,7 @@ org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.Properties:
type: string
description: Sub Interface VLAN Tag.
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair:
derived_from: tosca.datatypes.Root
@@ -1098,17 +1098,17 @@ org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair
type: string
description: Address Mode.
required: false
- status: supported
+ status: SUPPORTED
ip:
type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairIp
description: IP.
required: false
- status: supported
+ status: SUPPORTED
mac:
type: string
description: Mac.
required: false
- status: supported
+ status: SUPPORTED
org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPairs:
derived_from: tosca.datatypes.Root
@@ -1118,6 +1118,6 @@ org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair
type: list
description: Addresses pair List.
required: false
- status: supported
+ status: SUPPORTED
entry_schema:
type: org.openecomp.datatypes.heat.contrailV2.virtual.machine.subInterface.AddressPair \ No newline at end of file
diff --git a/asdctool/src/main/resources/config/elasticsearch.yml b/asdctool/src/main/resources/config/elasticsearch.yml
deleted file mode 100644
index 38482e2b02..0000000000
--- a/asdctool/src/main/resources/config/elasticsearch.yml
+++ /dev/null
@@ -1,393 +0,0 @@
-
-elasticSearch.local: true
-elasticSearch.transportclient: false
-cluster.name: elasticsearch
-
-discovery.zen.ping.multicast.enabled: false
-discovery.zen.ping.unicast.enabled: true
-discovery.zen.ping.unicast.hosts: elasticsearch_host
-transport.client.initial_nodes:
- - elasticsearch_host:9300
-
-http.cors.enabled: true
-
-#plugin.types: "DeleteByQueryPlugin"
-
-##################### Elasticsearch Configuration Example #####################
-
-# This file contains an overview of various configuration settings,
-# targeted at operations staff. Application developers should
-# consult the guide at <http://elasticsearch.org/guide>.
-#
-# The installation procedure is covered at
-# <http://elasticsearch.org/guide/en/elasticsearch/reference/current/setup.html>.
-#
-# Elasticsearch comes with reasonable defaults for most settings,
-# so you can try it out without bothering with configuration.
-#
-# Most of the time, these defaults are just fine for running a production
-# cluster. If you're fine-tuning your cluster, or wondering about the
-# effect of certain configuration option, please _do ask_ on the
-# mailing list or IRC channel [http://elasticsearch.org/community].
-
-# Any element in the configuration can be replaced with environment variables
-# by placing them in ${...} notation. For example:
-#
-# node.rack: ${RACK_ENV_VAR}
-
-# For information on supported formats and syntax for the config file, see
-# <http://elasticsearch.org/guide/en/elasticsearch/reference/current/setup-configuration.html>
-
-
-################################### Cluster ###################################
-
-# Cluster name identifies your cluster for auto-discovery. If you're running
-# multiple clusters on the same network, make sure you're using unique names.
-#
-# cluster.name: elasticsearch
-
-
-#################################### Node #####################################
-
-# Node names are generated dynamically on startup, so you're relieved
-# from configuring them manually. You can tie this node to a specific name:
-#
-# node.name: "Franz Kafka"
-
-# Every node can be configured to allow or deny being eligible as the master,
-# and to allow or deny to store the data.
-#
-# Allow this node to be eligible as a master node (enabled by default):
-#
-# node.master: true
-#
-# Allow this node to store data (enabled by default):
-#
-# node.data: true
-
-# You can exploit these settings to design advanced cluster topologies.
-#
-# 1. You want this node to never become a master node, only to hold data.
-# This will be the "workhorse" of your cluster.
-#
-# node.master: false
-# node.data: true
-#
-# 2. You want this node to only serve as a master: to not store any data and
-# to have free resources. This will be the "coordinator" of your cluster.
-#
-# node.master: true
-# node.data: false
-#
-# 3. You want this node to be neither master nor data node, but
-# to act as a "search load balancer" (fetching data from nodes,
-# aggregating results, etc.)
-#
-# node.master: false
-# node.data: false
-
-# Use the Cluster Health API [http://localhost:9200/_cluster/health], the
-# Node Info API [http://localhost:9200/_nodes] or GUI tools
-# such as <http://www.elasticsearch.org/overview/marvel/>,
-# <http://github.com/karmi/elasticsearch-paramedic>,
-# <http://github.com/lukas-vlcek/bigdesk> and
-# <http://mobz.github.com/elasticsearch-head> to inspect the cluster state.
-
-# A node can have generic attributes associated with it, which can later be used
-# for customized shard allocation filtering, or allocation awareness. An attribute
-# is a simple key value pair, similar to node.key: value, here is an example:
-#
-# node.rack: rack314
-
-# By default, multiple nodes are allowed to start from the same installation location
-# to disable it, set the following:
-# node.max_local_storage_nodes: 1
-
-
-#################################### Index ####################################
-
-# You can set a number of options (such as shard/replica options, mapping
-# or analyzer definitions, translog settings, ...) for indices globally,
-# in this file.
-#
-# Note, that it makes more sense to configure index settings specifically for
-# a certain index, either when creating it or by using the index templates API.
-#
-# See <http://elasticsearch.org/guide/en/elasticsearch/reference/current/index-modules.html> and
-# <http://elasticsearch.org/guide/en/elasticsearch/reference/current/indices-create-index.html>
-# for more information.
-
-# Set the number of shards (splits) of an index (5 by default):
-#
-# index.number_of_shards: 5
-
-# Set the number of replicas (additional copies) of an index (1 by default):
-#
-# index.number_of_replicas: 1
-
-# Note, that for development on a local machine, with small indices, it usually
-# makes sense to "disable" the distributed features:
-#
-index.number_of_shards: 1
-index.number_of_replicas: 0
-
-# These settings directly affect the performance of index and search operations
-# in your cluster. Assuming you have enough machines to hold shards and
-# replicas, the rule of thumb is:
-#
-# 1. Having more *shards* enhances the _indexing_ performance and allows to
-# _distribute_ a big index across machines.
-# 2. Having more *replicas* enhances the _search_ performance and improves the
-# cluster _availability_.
-#
-# The "number_of_shards" is a one-time setting for an index.
-#
-# The "number_of_replicas" can be increased or decreased anytime,
-# by using the Index Update Settings API.
-#
-# Elasticsearch takes care about load balancing, relocating, gathering the
-# results from nodes, etc. Experiment with different settings to fine-tune
-# your setup.
-
-# Use the Index Status API (<http://localhost:9200/A/_status>) to inspect
-# the index status.
-
-
-#################################### Paths ####################################
-path.home: /src/test/resources
-# Path to directory containing configuration (this file and logging.yml):
-#
-path.conf: /src/test/resources
-
-# Path to directory where to store index data allocated for this node.
-#
-path.data: target/esdata
-#
-# Can optionally include more than one location, causing data to be striped across
-# the locations (a la RAID 0) on a file level, favouring locations with most free
-# space on creation. For example:
-#
-# path.data: /path/to/data1,/path/to/data2
-
-# Path to temporary files:
-#
-path.work: /target/eswork
-
-# Path to log files:
-#
-path.logs: /target/eslogs
-
-# Path to where plugins are installed:
-#
-# path.plugins: /path/to/plugins
-
-
-#################################### Plugin ###################################
-
-# If a plugin listed here is not installed for current node, the node will not start.
-#
-# plugin.mandatory: mapper-attachments,lang-groovy
-
-
-################################### Memory ####################################
-
-# Elasticsearch performs poorly when JVM starts swapping: you should ensure that
-# it _never_ swaps.
-#
-# Set this property to true to lock the memory:
-#
-# bootstrap.mlockall: true
-
-# Make sure that the ES_MIN_MEM and ES_MAX_MEM environment variables are set
-# to the same value, and that the machine has enough memory to allocate
-# for Elasticsearch, leaving enough memory for the operating system itself.
-#
-# You should also make sure that the Elasticsearch process is allowed to lock
-# the memory, eg. by using `ulimit -l unlimited`.
-
-
-############################## Network And HTTP ###############################
-
-# Elasticsearch, by default, binds itself to the 0.0.0.0 address, and listens
-# on port [9200-9300] for HTTP traffic and on port [9300-9400] for node-to-node
-# communication. (the range means that if the port is busy, it will automatically
-# try the next port).
-
-# Set the bind address specifically (IPv4 or IPv6):
-#
-# network.bind_host: 192.168.0.1
-
-# Set the address other nodes will use to communicate with this node. If not
-# set, it is automatically derived. It must point to an actual IP address.
-#
-# network.publish_host: 192.168.0.1
-
-# Set both 'bind_host' and 'publish_host':
-#
-# network.host: 192.168.0.1
-
-# Set a custom port for the node to node communication (9300 by default):
-#
-# transport.tcp.port: 9300
-
-# Enable compression for all communication between nodes (disabled by default):
-#
-# transport.tcp.compress: true
-
-# Set a custom port to listen for HTTP traffic:
-#
-# http.port: 9200
-
-# Set a custom allowed content length:
-#
-# http.max_content_length: 100mb
-
-# Disable HTTP completely:
-#
-# http.enabled: false
-
-
-################################### Gateway ###################################
-
-# The gateway allows for persisting the cluster state between full cluster
-# restarts. Every change to the state (such as adding an index) will be stored
-# in the gateway, and when the cluster starts up for the first time,
-# it will read its state from the gateway.
-
-# There are several types of gateway implementations. For more information, see
-# <http://elasticsearch.org/guide/en/elasticsearch/reference/current/modules-gateway.html>.
-
-# The default gateway type is the "local" gateway (recommended):
-#
-# gateway.type: local
-
-# Settings below control how and when to start the initial recovery process on
-# a full cluster restart (to reuse as much local data as possible when using shared
-# gateway).
-
-# Allow recovery process after N nodes in a cluster are up:
-#
-gateway.recover_after_nodes: 1
-
-# Set the timeout to initiate the recovery process, once the N nodes
-# from previous setting are up (accepts time value):
-#
-# gateway.recover_after_time: 5m
-
-# Set how many nodes are expected in this cluster. Once these N nodes
-# are up (and recover_after_nodes is met), begin recovery process immediately
-# (without waiting for recover_after_time to expire):
-#
-gateway.expected_nodes: 1
-
-
-############################# Recovery Throttling #############################
-
-# These settings allow to control the process of shards allocation between
-# nodes during initial recovery, replica allocation, rebalancing,
-# or when adding and removing nodes.
-
-# Set the number of concurrent recoveries happening on a node:
-#
-# 1. During the initial recovery
-#
-# cluster.routing.allocation.node_initial_primaries_recoveries: 4
-#
-# 2. During adding/removing nodes, rebalancing, etc
-#
-# cluster.routing.allocation.node_concurrent_recoveries: 2
-
-# Set to throttle throughput when recovering (eg. 100mb, by default 20mb):
-#
-# indices.recovery.max_bytes_per_sec: 20mb
-
-# Set to limit the number of open concurrent streams when
-# recovering a shard from a peer:
-#
-# indices.recovery.concurrent_streams: 5
-
-
-################################## Discovery ##################################
-
-# Discovery infrastructure ensures nodes can be found within a cluster
-# and master node is elected. Multicast discovery is the default.
-
-# Set to ensure a node sees N other master eligible nodes to be considered
-# operational within the cluster. Its recommended to set it to a higher value
-# than 1 when running more than 2 nodes in the cluster.
-#
-# discovery.zen.minimum_master_nodes: 1
-
-# Set the time to wait for ping responses from other nodes when discovering.
-# Set this option to a higher value on a slow or congested network
-# to minimize discovery failures:
-#
-# discovery.zen.ping.timeout: 3s
-
-# For more information, see
-# <http://elasticsearch.org/guide/en/elasticsearch/reference/current/modules-discovery-zen.html>
-
-# Unicast discovery allows to explicitly control which nodes will be used
-# to discover the cluster. It can be used when multicast is not present,
-# or to restrict the cluster communication-wise.
-#
-# 1. Disable multicast discovery (enabled by default):
-#
-# discovery.zen.ping.multicast.enabled: false
-#
-# 2. Configure an initial list of master nodes in the cluster
-# to perform discovery when new nodes (master or data) are started:
-#
-# discovery.zen.ping.unicast.hosts: ["host1", "host2:port"]
-
-# EC2 discovery allows to use AWS EC2 API in order to perform discovery.
-#
-# You have to install the cloud-aws plugin for enabling the EC2 discovery.
-#
-# For more information, see
-# <http://elasticsearch.org/guide/en/elasticsearch/reference/current/modules-discovery-ec2.html>
-#
-# See <http://elasticsearch.org/tutorials/elasticsearch-on-ec2/>
-# for a step-by-step tutorial.
-
-# GCE discovery allows to use Google Compute Engine API in order to perform discovery.
-#
-# You have to install the cloud-gce plugin for enabling the GCE discovery.
-#
-# For more information, see <https://github.com/elasticsearch/elasticsearch-cloud-gce>.
-
-# Azure discovery allows to use Azure API in order to perform discovery.
-#
-# You have to install the cloud-azure plugin for enabling the Azure discovery.
-#
-# For more information, see <https://github.com/elasticsearch/elasticsearch-cloud-azure>.
-
-################################## Slow Log ##################################
-
-# Shard level query and fetch threshold logging.
-
-#index.search.slowlog.threshold.query.warn: 10s
-#index.search.slowlog.threshold.query.info: 5s
-#index.search.slowlog.threshold.query.debug: 2s
-#index.search.slowlog.threshold.query.trace: 500ms
-
-#index.search.slowlog.threshold.fetch.warn: 1s
-#index.search.slowlog.threshold.fetch.info: 800ms
-#index.search.slowlog.threshold.fetch.debug: 500ms
-#index.search.slowlog.threshold.fetch.trace: 200ms
-
-#index.indexing.slowlog.threshold.index.warn: 10s
-#index.indexing.slowlog.threshold.index.info: 5s
-#index.indexing.slowlog.threshold.index.debug: 2s
-#index.indexing.slowlog.threshold.index.trace: 500ms
-
-################################## GC Logging ################################
-
-#monitor.jvm.gc.young.warn: 1000ms
-#monitor.jvm.gc.young.info: 700ms
-#monitor.jvm.gc.young.debug: 400ms
-
-#monitor.jvm.gc.old.warn: 10s
-#monitor.jvm.gc.old.info: 5s
-#monitor.jvm.gc.old.debug: 2s
-
diff --git a/asdctool/src/main/resources/config/groupTypes.yml b/asdctool/src/main/resources/config/groupTypes.yml
index 0c0abc9013..ce457e4add 100644
--- a/asdctool/src/main/resources/config/groupTypes.yml
+++ b/asdctool/src/main/resources/config/groupTypes.yml
@@ -6,12 +6,12 @@ org.openecomp.groups.heat.HeatStack:
type: string
description: Heat file which associate to this group/heat stack
required: true
- status: supported
+ status: SUPPORTED
description:
type: string
description: group description
required: true
- status: supported
+ status: SUPPORTED
org.openecomp.groups.VfModule:
derived_from: tosca.groups.Root
description: Grouped all heat resources which are in the same VF Module
@@ -21,7 +21,7 @@ org.openecomp.groups.VfModule:
description: Whether this module should be deployed before other modules
required: true
default: false
- status: supported
+ status: SUPPORTED
vf_module_label:
type: string
required: true
diff --git a/asdctool/src/main/resources/config/janusgraph.properties b/asdctool/src/main/resources/config/janusgraph.properties
index 5f22a08837..3e88b0d3c8 100644
--- a/asdctool/src/main/resources/config/janusgraph.properties
+++ b/asdctool/src/main/resources/config/janusgraph.properties
@@ -7,14 +7,14 @@ storage.connection-timeout=10000
storage.cassandra.keyspace=sdctitan
storage.cassandra.ssl.enabled=true
-storage.cassandra.ssl.truststore.location=C:\\gitWork\\vagrant-sdc-all-in-one\\mytmp.trust
+storage.cassandra.ssl.truststore.location=/var/lib/jetty/etc/truststore
storage.cassandra.ssl.truststore.password=Aa123456
storage.cassandra.read-consistency-level=LOCAL_QUORUM
storage.cassandra.write-consistency-level=LOCAL_QUORUM
storage.cassandra.replication-strategy-class=org.apache.cassandra.locator.NetworkTopologyStrategy
-storage.cassandra.replication-strategy-options=DC-sdc-iltlv633,1
-storage.cassandra.astyanax.local-datacenter=DC-sdc-iltlv633
+storage.cassandra.replication-strategy-options=DC-ILTLV2083,1
+storage.cassandra.astyanax.local-datacenter=DC-ILTLV2083
cache.db-cache = false
diff --git a/asdctool/src/main/resources/config/tmp.trust b/asdctool/src/main/resources/config/tmp.trust
new file mode 100644
index 0000000000..f74b8f53cc
--- /dev/null
+++ b/asdctool/src/main/resources/config/tmp.trust
Binary files differ
diff --git a/asdctool/src/main/resources/elasticsearch.yml b/asdctool/src/main/resources/elasticsearch.yml
deleted file mode 100644
index 71ccdbb8f5..0000000000
--- a/asdctool/src/main/resources/elasticsearch.yml
+++ /dev/null
@@ -1,399 +0,0 @@
-
-cluster.name: elasticsearch
-
-discovery.zen.ping.multicast.enabled: false
-discovery.zen.ping.unicast.enabled: true
-discovery.zen.ping.unicast.hosts: elasticsearch_host
-
-http.cors.enabled: true
-
-path.home: "/home/vagrant/catalog-be/config"
-
-elasticSearch.transportclient: true
-
-transport.client.initial_nodes:
- - elasticsearch_host:9300
-
-#shield.user: asdc:Aa12345
-#shield.ssl.keystore.path: "/vagrant/install/resources/catalog-be/keystore/es-client.jks"
-#shield.ssl.keystore.password: Aa123456
-#shield.transport.ssl: true
-
-##################### Elasticsearch Configuration Example #####################
-
-# This file contains an overview of various configuration settings,
-# targeted at operations staff. Application developers should
-# consult the guide at <http://elasticsearch.org/guide>.
-#
-# The installation procedure is covered at
-# <http://elasticsearch.org/guide/en/elasticsearch/reference/current/setup.html>.
-#
-# Elasticsearch comes with reasonable defaults for most settings,
-# so you can try it out without bothering with configuration.
-#
-# Most of the time, these defaults are just fine for running a production
-# cluster. If you're fine-tuning your cluster, or wondering about the
-# effect of certain configuration option, please _do ask_ on the
-# mailing list or IRC channel [http://elasticsearch.org/community].
-
-# Any element in the configuration can be replaced with environment variables
-# by placing them in ${...} notation. For example:
-#
-# node.rack: ${RACK_ENV_VAR}
-
-# For information on supported formats and syntax for the config file, see
-# <http://elasticsearch.org/guide/en/elasticsearch/reference/current/setup-configuration.html>
-
-
-################################### Cluster ###################################
-
-# Cluster name identifies your cluster for auto-discovery. If you're running
-# multiple clusters on the same network, make sure you're using unique names.
-#
-# cluster.name: elasticsearch
-
-
-#################################### Node #####################################
-
-# Node names are generated dynamically on startup, so you're relieved
-# from configuring them manually. You can tie this node to a specific name:
-#
-# node.name: "Franz Kafka"
-
-# Every node can be configured to allow or deny being eligible as the master,
-# and to allow or deny to store the data.
-#
-# Allow this node to be eligible as a master node (enabled by default):
-#
-# node.master: true
-#
-# Allow this node to store data (enabled by default):
-#
-# node.data: true
-
-# You can exploit these settings to design advanced cluster topologies.
-#
-# 1. You want this node to never become a master node, only to hold data.
-# This will be the "workhorse" of your cluster.
-#
-# node.master: false
-# node.data: true
-#
-# 2. You want this node to only serve as a master: to not store any data and
-# to have free resources. This will be the "coordinator" of your cluster.
-#
-# node.master: true
-# node.data: false
-#
-# 3. You want this node to be neither master nor data node, but
-# to act as a "search load balancer" (fetching data from nodes,
-# aggregating results, etc.)
-#
-# node.master: false
-# node.data: false
-
-# Use the Cluster Health API [http://localhost:9200/_cluster/health], the
-# Node Info API [http://localhost:9200/_nodes] or GUI tools
-# such as <http://www.elasticsearch.org/overview/marvel/>,
-# <http://github.com/karmi/elasticsearch-paramedic>,
-# <http://github.com/lukas-vlcek/bigdesk> and
-# <http://mobz.github.com/elasticsearch-head> to inspect the cluster state.
-
-# A node can have generic attributes associated with it, which can later be used
-# for customized shard allocation filtering, or allocation awareness. An attribute
-# is a simple key value pair, similar to node.key: value, here is an example:
-#
-# node.rack: rack314
-
-# By default, multiple nodes are allowed to start from the same installation location
-# to disable it, set the following:
-# node.max_local_storage_nodes: 1
-
-
-#################################### Index ####################################
-
-# You can set a number of options (such as shard/replica options, mapping
-# or analyzer definitions, translog settings, ...) for indices globally,
-# in this file.
-#
-# Note, that it makes more sense to configure index settings specifically for
-# a certain index, either when creating it or by using the index templates API.
-#
-# See <http://elasticsearch.org/guide/en/elasticsearch/reference/current/index-modules.html> and
-# <http://elasticsearch.org/guide/en/elasticsearch/reference/current/indices-create-index.html>
-# for more information.
-
-# Set the number of shards (splits) of an index (5 by default):
-#
-# index.number_of_shards: 5
-
-# Set the number of replicas (additional copies) of an index (1 by default):
-#
-# index.number_of_replicas: 1
-
-# Note, that for development on a local machine, with small indices, it usually
-# makes sense to "disable" the distributed features:
-#
-index.number_of_shards: 1
-index.number_of_replicas: 0
-
-# These settings directly affect the performance of index and search operations
-# in your cluster. Assuming you have enough machines to hold shards and
-# replicas, the rule of thumb is:
-#
-# 1. Having more *shards* enhances the _indexing_ performance and allows to
-# _distribute_ a big index across machines.
-# 2. Having more *replicas* enhances the _search_ performance and improves the
-# cluster _availability_.
-#
-# The "number_of_shards" is a one-time setting for an index.
-#
-# The "number_of_replicas" can be increased or decreased anytime,
-# by using the Index Update Settings API.
-#
-# Elasticsearch takes care about load balancing, relocating, gathering the
-# results from nodes, etc. Experiment with different settings to fine-tune
-# your setup.
-
-# Use the Index Status API (<http://localhost:9200/A/_status>) to inspect
-# the index status.
-
-
-#################################### Paths ####################################
-
-# Path to directory containing configuration (this file and logging.yml):
-#
-path.conf: /src/test/resources
-
-# Path to directory where to store index data allocated for this node.
-#
-path.data: target/esdata
-#
-# Can optionally include more than one location, causing data to be striped across
-# the locations (a la RAID 0) on a file level, favouring locations with most free
-# space on creation. For example:
-#
-# path.data: /path/to/data1,/path/to/data2
-
-# Path to temporary files:
-#
-path.work: /target/eswork
-
-# Path to log files:
-#
-path.logs: /target/eslogs
-
-# Path to where plugins are installed:
-#
-# path.plugins: /path/to/plugins
-
-
-#################################### Plugin ###################################
-
-# If a plugin listed here is not installed for current node, the node will not start.
-#
-# plugin.mandatory: mapper-attachments,lang-groovy
-
-
-################################### Memory ####################################
-
-# Elasticsearch performs poorly when JVM starts swapping: you should ensure that
-# it _never_ swaps.
-#
-# Set this property to true to lock the memory:
-#
-# bootstrap.mlockall: true
-
-# Make sure that the ES_MIN_MEM and ES_MAX_MEM environment variables are set
-# to the same value, and that the machine has enough memory to allocate
-# for Elasticsearch, leaving enough memory for the operating system itself.
-#
-# You should also make sure that the Elasticsearch process is allowed to lock
-# the memory, eg. by using `ulimit -l unlimited`.
-
-
-############################## Network And HTTP ###############################
-
-# Elasticsearch, by default, binds itself to the 0.0.0.0 address, and listens
-# on port [9200-9300] for HTTP traffic and on port [9300-9400] for node-to-node
-# communication. (the range means that if the port is busy, it will automatically
-# try the next port).
-
-# Set the bind address specifically (IPv4 or IPv6):
-#
-# network.bind_host: 192.168.0.1
-
-# Set the address other nodes will use to communicate with this node. If not
-# set, it is automatically derived. It must point to an actual IP address.
-#
-# network.publish_host: 192.168.0.1
-
-# Set both 'bind_host' and 'publish_host':
-#
-# network.host: 192.168.0.1
-
-# Set a custom port for the node to node communication (9300 by default):
-#
-# transport.tcp.port: 9300
-
-# Enable compression for all communication between nodes (disabled by default):
-#
-# transport.tcp.compress: true
-
-# Set a custom port to listen for HTTP traffic:
-#
-# http.port: 9200
-
-# Set a custom allowed content length:
-#
-# http.max_content_length: 100mb
-
-# Disable HTTP completely:
-#
-# http.enabled: false
-
-
-################################### Gateway ###################################
-
-# The gateway allows for persisting the cluster state between full cluster
-# restarts. Every change to the state (such as adding an index) will be stored
-# in the gateway, and when the cluster starts up for the first time,
-# it will read its state from the gateway.
-
-# There are several types of gateway implementations. For more information, see
-# <http://elasticsearch.org/guide/en/elasticsearch/reference/current/modules-gateway.html>.
-
-# The default gateway type is the "local" gateway (recommended):
-#
-# gateway.type: local
-
-# Settings below control how and when to start the initial recovery process on
-# a full cluster restart (to reuse as much local data as possible when using shared
-# gateway).
-
-# Allow recovery process after N nodes in a cluster are up:
-#
-gateway.recover_after_nodes: 1
-
-# Set the timeout to initiate the recovery process, once the N nodes
-# from previous setting are up (accepts time value):
-#
-# gateway.recover_after_time: 5m
-
-# Set how many nodes are expected in this cluster. Once these N nodes
-# are up (and recover_after_nodes is met), begin recovery process immediately
-# (without waiting for recover_after_time to expire):
-#
-gateway.expected_nodes: 1
-
-
-############################# Recovery Throttling #############################
-
-# These settings allow to control the process of shards allocation between
-# nodes during initial recovery, replica allocation, rebalancing,
-# or when adding and removing nodes.
-
-# Set the number of concurrent recoveries happening on a node:
-#
-# 1. During the initial recovery
-#
-# cluster.routing.allocation.node_initial_primaries_recoveries: 4
-#
-# 2. During adding/removing nodes, rebalancing, etc
-#
-# cluster.routing.allocation.node_concurrent_recoveries: 2
-
-# Set to throttle throughput when recovering (eg. 100mb, by default 20mb):
-#
-# indices.recovery.max_bytes_per_sec: 20mb
-
-# Set to limit the number of open concurrent streams when
-# recovering a shard from a peer:
-#
-# indices.recovery.concurrent_streams: 5
-
-
-################################## Discovery ##################################
-
-# Discovery infrastructure ensures nodes can be found within a cluster
-# and master node is elected. Multicast discovery is the default.
-
-# Set to ensure a node sees N other master eligible nodes to be considered
-# operational within the cluster. Its recommended to set it to a higher value
-# than 1 when running more than 2 nodes in the cluster.
-#
-# discovery.zen.minimum_master_nodes: 1
-
-# Set the time to wait for ping responses from other nodes when discovering.
-# Set this option to a higher value on a slow or congested network
-# to minimize discovery failures:
-#
-# discovery.zen.ping.timeout: 3s
-
-# For more information, see
-# <http://elasticsearch.org/guide/en/elasticsearch/reference/current/modules-discovery-zen.html>
-
-# Unicast discovery allows to explicitly control which nodes will be used
-# to discover the cluster. It can be used when multicast is not present,
-# or to restrict the cluster communication-wise.
-#
-# 1. Disable multicast discovery (enabled by default):
-#
-# discovery.zen.ping.multicast.enabled: false
-#
-# 2. Configure an initial list of master nodes in the cluster
-# to perform discovery when new nodes (master or data) are started:
-#
-# discovery.zen.ping.unicast.hosts: ["host1", "host2:port"]
-
-# EC2 discovery allows to use AWS EC2 API in order to perform discovery.
-#
-# You have to install the cloud-aws plugin for enabling the EC2 discovery.
-#
-# For more information, see
-# <http://elasticsearch.org/guide/en/elasticsearch/reference/current/modules-discovery-ec2.html>
-#
-# See <http://elasticsearch.org/tutorials/elasticsearch-on-ec2/>
-# for a step-by-step tutorial.
-
-# GCE discovery allows to use Google Compute Engine API in order to perform discovery.
-#
-# You have to install the cloud-gce plugin for enabling the GCE discovery.
-#
-# For more information, see <https://github.com/elasticsearch/elasticsearch-cloud-gce>.
-
-# Azure discovery allows to use Azure API in order to perform discovery.
-#
-# You have to install the cloud-azure plugin for enabling the Azure discovery.
-#
-# For more information, see <https://github.com/elasticsearch/elasticsearch-cloud-azure>.
-
-################################## Slow Log ##################################
-
-# Shard level query and fetch threshold logging.
-
-#index.search.slowlog.threshold.query.warn: 10s
-#index.search.slowlog.threshold.query.info: 5s
-#index.search.slowlog.threshold.query.debug: 2s
-#index.search.slowlog.threshold.query.trace: 500ms
-
-#index.search.slowlog.threshold.fetch.warn: 1s
-#index.search.slowlog.threshold.fetch.info: 800ms
-#index.search.slowlog.threshold.fetch.debug: 500ms
-#index.search.slowlog.threshold.fetch.trace: 200ms
-
-#index.indexing.slowlog.threshold.index.warn: 10s
-#index.indexing.slowlog.threshold.index.info: 5s
-#index.indexing.slowlog.threshold.index.debug: 2s
-#index.indexing.slowlog.threshold.index.trace: 500ms
-
-################################## GC Logging ################################
-
-#monitor.jvm.gc.young.warn: 1000ms
-#monitor.jvm.gc.young.info: 700ms
-#monitor.jvm.gc.young.debug: 400ms
-
-#monitor.jvm.gc.old.warn: 10s
-#monitor.jvm.gc.old.info: 5s
-#monitor.jvm.gc.old.debug: 2s
-
diff --git a/asdctool/src/main/resources/es-resources/README.txt b/asdctool/src/main/resources/es-resources/README.txt
deleted file mode 100644
index a7006efa80..0000000000
--- a/asdctool/src/main/resources/es-resources/README.txt
+++ /dev/null
@@ -1,43 +0,0 @@
-ASDC elasticsearch tool
-========================
-
-This tool purpose is to ease and allow updating elasticsearch indices.
-
-In order to use the scripts, you need to verify Python is installed and to install the elasticsearc-py library:
- Verify pip is installed: $command -v pip
- if not installed:
- Download https://bootstrap.pypa.io/get-pip.py
- $python get-pip.py (see instruction: https://pip.pypa.io/en/latest/installing/#installing-with-get-pip-py)
- $pip install elasticsearch
-
-
-Tool contains:
- - index_ops.py
- This script includes operations on elasticsearch index:
-
- create index:
- $python index_ops.py -o create -a <elasticsearch hostname> -n <indexName> -f <index mapping file>
-
- delete index:
- $python index_ops.py -o delete -a <elasticsearch hostname> -n <indexName>
-
- copy index (assumes destination index already exists):
- $python index_ops.py -o move -a <elasticsearch hostname> -n <indexName> -t <toIndex>
-
-
- - file_utils.py
- This script includes operations on files
-
- - audit_migration_1602.py
- This script run full flow to migrate audit information from previous versions to ASDC 1602
- It has 2 inputs:
- 1. config_properties.py - this file holds configuration (hostname, index name, index mapping file etc.)
- 2. folder of fields mapping per elasticsearch type (map old field to new field)
- The flow of this script is as follow:
- * create temp index with correct index mapping
- * scan the audit index to get all records
- * manipulate fields data and insert it to temp index
- * delete audit index
- * create audit index with correct mapping
- * copy from temp index to newly created audit index
- * delete temp index \ No newline at end of file
diff --git a/asdctool/src/main/resources/es-resources/auditMappings.txt b/asdctool/src/main/resources/es-resources/auditMappings.txt
deleted file mode 100644
index 7de77cccbd..0000000000
--- a/asdctool/src/main/resources/es-resources/auditMappings.txt
+++ /dev/null
@@ -1,169 +0,0 @@
-{ "settings": {}, "mappings":
-{
-"distributiondownloadevent":
-{ "properties": {
- "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS", "precision_step": 4, "type": "date" },
- "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DESC": { "include_in_all": true, "type": "string" },
- "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "RESOURCE_URL": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "CONSUMER_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }},
- "_all": { "enabled": true } },
- "auditinggetuebclusterevent":
-{ "properties": {
- "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS", "precision_step": 4, "type": "date" },
- "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DESC": { "include_in_all": true, "type": "string" },
- "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "CONSUMER_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }},
- "_all": { "enabled": true } },
- "distributionstatusevent":
-{ "properties": {
- "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS", "precision_step": 4, "type": "date" },
- "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DESC": { "include_in_all": true, "type": "string" },
- "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "RESOURCE_URL": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "TOPIC_NAME":{ "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "CONSUMER_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }},
- "_all": { "enabled": true } },
-"distributionengineevent":
-{ "properties": {
- "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS", "precision_step": 4, "type": "date" },
- "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DESC": { "include_in_all": true, "type": "string" },
- "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "TOPIC_NAME":{ "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "ROLE": { "include_in_all": true, "type": "string" },
- "API_KEY": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "D_ENV": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "CONSUMER_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" }},
- "_all": { "enabled": true } },
- "useraccessevent": {
- "properties": {
- "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS", "precision_step": 4, "type": "date" },
- "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DESC": { "include_in_all": true, "type": "string" },
- "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "USER_UID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "USER_NAME": { "include_in_all": true, "type": "string" }} ,
- "_all": { "enabled": true }},
- "resourceadminevent":
- { "properties": {
- "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS", "precision_step": 4, "type": "date" },
- "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DESC": { "include_in_all": true, "type": "string" },
- "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "CURR_VERSION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "CURR_STATE": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "MODIFIER_NAME": { "include_in_all": true, "type": "string" },
- "PREV_VERSION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "MODIFIER_UID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "PREV_STATE": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "RESOURCE_NAME": { "include_in_all": true, "type": "string" },
- "RESOURCE_TYPE": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DPREV_STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DCURR_STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "COMMENT": { "include_in_all": true, "type": "string" },
- "ARTIFACT_NAME": { "include_in_all": true, "index": "not_analyzed", "type": "string" } },
- "_all": { "enabled": true }} ,
- "useradminevent":
- { "properties": {
- "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS", "precision_step": 4, "type": "date" },
- "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DESC": { "include_in_all": true, "type": "string" },
- "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "MODIFIER_NAME": { "include_in_all": true, "type": "string" },
- "USER_EMAIL": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "USER_ROLE": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "USER_AFTER_EMAIL": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "USER_BEFORE_ROLE": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "USER_AFTER_ROLE": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "USER_UID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "USER_NAME": { "include_in_all": true, "type": "string" },
- "USER_BEFORE_NAME": { "include_in_all": true, "type": "string" },
- "USER_BEFORE_EMAIL": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "MODIFIER_UID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "USER_AFTER_NAME": { "include_in_all": true, "type": "string" } },
- "_all": { "enabled": true } },
-"distributionnotificationevent":
- {"properties":{
- "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS", "precision_step": 4, "type": "date" },
- "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DESC": { "include_in_all": true, "type": "string" },
- "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "CURR_STATE": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "CURR_VERSION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "MODIFIER_NAME": { "include_in_all": true, "type": "string" },
- "MODIFIER_UID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "RESOURCE_NAME": { "include_in_all": true, "type": "string" },
- "RESOURCE_TYPE": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "TOPIC_NAME":{ "include_in_all": true, "index": "not_analyzed", "type": "string" }}},
-"categoryevent":
-{"properties":{
- "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DESC": { "include_in_all": true, "type": "string" },
- "MODIFIER": { "include_in_all": true, "type": "string" },
- "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "CATEGORY_NAME": { "include_in_all": true, "type": "string" },
- "SUB_CATEGORY_NAME": { "include_in_all": true, "type": "string" },
- "GROUPING_NAME": { "include_in_all": true, "type": "string" },
- "RESOURCE_TYPE": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS", "precision_step": 4, "type": "date" }},
- "_all": { "enabled": true } },
- "authevent": {
- "properties": {
- "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS", "precision_step": 4, "type": "date" },
- "DESC": { "include_in_all": true, "type": "string" },
- "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "URL": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "USER": { "include_in_all": true, "type": "string" } ,
- "AUTH_STATUS": { "include_in_all": true, "index": "not_analyzed","type": "string" } ,
- "REALM": { "include_in_all": true, "index": "not_analyzed","type": "string" }} ,
- "_all": { "enabled": true }},
- "consumerevent":
- {"properties":{
- "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "MODIFIER": { "include_in_all": true, "type": "string" },
- "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DESC": { "include_in_all": true, "type": "string" },
- "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "ECOMP_USER": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS", "precision_step": 4, "type": "date" }},
- "_all": { "enabled": true } },
- "distributiondeployevent":
- { "properties": {
- "ACTION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "CURR_VERSION": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "DESC": { "include_in_all": true, "type": "string" },
- "DID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "MODIFIER_NAME": { "include_in_all": true, "type": "string" },
- "MODIFIER_UID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "REQUEST_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "RESOURCE_NAME": { "include_in_all": true, "type": "string" },
- "RESOURCE_TYPE": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "SERVICE_INSTANCE_ID": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "STATUS": { "include_in_all": true, "index": "not_analyzed", "type": "string" },
- "TIMESTAMP": { "include_in_all": true, "ignore_malformed": false, "format": "yyyy-MM-dd HH:mm:ss.SSS", "precision_step": 4, "type": "date" }}}}} \ No newline at end of file
diff --git a/asdctool/src/main/resources/es-resources/audit_migration_1602.py b/asdctool/src/main/resources/es-resources/audit_migration_1602.py
deleted file mode 100644
index 8b61ebfaf0..0000000000
--- a/asdctool/src/main/resources/es-resources/audit_migration_1602.py
+++ /dev/null
@@ -1,132 +0,0 @@
-import itertools
-import string
-import json
-from datetime import datetime
-from elasticsearch import Elasticsearch
-import elasticsearch
-import elasticsearch.helpers
-from elasticsearch.client import IndicesClient
-import sys, os
-from index_ops import createIndex, deleteIndex, copyIndex
-from config_properties import getGlobalVar
-from file_utils import readFileToJson
-
-def updateFieldNames(client, queryFrom, fromIndex, destIndex, addUTC):
- typesDir="types"
- typeFields = {}
- for filename in os.listdir(typesDir):
- print filename
- fieldNames=readFileToJson(typesDir+os.sep+filename)
-
- type=filename.split(".")[0]
- typeFields[type] = fieldNames
-
- client.indices.refresh(index=fromIndex)
- res = elasticsearch.helpers.scan(client, query=queryFrom, index=fromIndex)
-
- actions = []
- for i in res:
- res_type = i['_type']
- fieldNames = typeFields.get(res_type)
- if (fieldNames != None):
- action={}
- for field in i['_source']:
- updatedName=fieldNames.get(field)
- if (updatedName != None):
- if (field == 'timestamp' and addUTC == True):
- value+=" UTC"
- value=i['_source'].get(field)
- action[updatedName]=value
- else:
- action[field]=i['_source'].get(field)
- i['_source']=action
-
- i['_index']=destIndex
- i.pop('_id', None)
- actions.append(i)
-
- bulk_res = elasticsearch.helpers.bulk(client, actions)
- print "bulk response: ", bulk_res
-
-
-
-def updateAllrecordsWithUTC(client, queryFrom, fromIndex, destIndex):
-
- #scan indices
- client.indices.refresh(index=fromIndex)
- res = elasticsearch.helpers.scan(client, query=queryFrom, index=fromIndex)
-
- actions = []
- for i in res:
- print i
- i['_index']=destIndex
- i['_source']['TIMESTAMP']+=" UTC"
- actions.append(i)
-
- bulk_res = elasticsearch.helpers.bulk(client, actions)
- print "bulk response: ", bulk_res
-
-
-def printQueryResults(client, myQuery, indexName):
- client.indices.refresh(index=indexName)
- res = elasticsearch.helpers.scan(client, query=myQuery, index=indexName)
- for i in res:
- print i
-
-def main():
- print "start script for changing fields"
- print "================================="
-
- # initialize es
- es = Elasticsearch([getGlobalVar('host')])
-
- try:
- mapping=readFileToJson(getGlobalVar('mappingFileName'))
- res = createIndex(es, getGlobalVar('tempIndexName'), mapping)
- if (res != 0):
- print "script results in error"
- sys.exit(1)
-
- print "scan audit index and manipulate data"
- print "===================================="
-
- print "start time: ", datetime.now().time()
- updateFieldNames(es, getGlobalVar('matchAllQuery'), getGlobalVar('origIndexName'), getGlobalVar('tempIndexName'), getGlobalVar('addUTC'))
-
- print "re-create original index"
- print "========================="
- res = createIndex(es, getGlobalVar('origIndexName'), mapping)
- if (res != 0):
- print "script results in error"
- sys.exit(1)
-
- print "copy data from temp index to original"
- print "======================================="
- res = copyIndex(es, getGlobalVar('tempIndexName'), getGlobalVar('origIndexName'))
- if (res != 0):
- print "script results in error"
- sys.exit(1)
-
- print "delete temp index"
- print "=================="
- res = deleteIndex(es, getGlobalVar('tempIndexName'))
- if (res != 0):
- print "script results in error"
- sys.exit(1)
-
-
- print "end time: ", datetime.now().time()
-
- except Exception, error:
- print "An exception was thrown!"
- print str(error)
- return 2
-
-
-if __name__ == "__main__":
- main()
-
-
-
-
-
diff --git a/asdctool/src/main/resources/es-resources/config_properties.py b/asdctool/src/main/resources/es-resources/config_properties.py
deleted file mode 100644
index d0973001dc..0000000000
--- a/asdctool/src/main/resources/es-resources/config_properties.py
+++ /dev/null
@@ -1,11 +0,0 @@
-globalVars={
- "host": "127.0.0.1",
- "origIndexName": "temp_audit",
- "tempIndexName": "temp_audit2",
- "addUTC": False,
- "mappingFileName": "auditMappings.txt",
- "matchAllQuery":{"query": {"match_all": {}}}
-}
-
-def getGlobalVar(propertyName):
- return globalVars.get(propertyName) \ No newline at end of file
diff --git a/asdctool/src/main/resources/es-resources/file_utils.py b/asdctool/src/main/resources/es-resources/file_utils.py
deleted file mode 100644
index 743902084e..0000000000
--- a/asdctool/src/main/resources/es-resources/file_utils.py
+++ /dev/null
@@ -1,21 +0,0 @@
-import itertools
-import string
-import json
-from datetime import datetime
-from elasticsearch import Elasticsearch
-import elasticsearch
-import elasticsearch.helpers
-from elasticsearch.client import IndicesClient
-import sys, os
-
-def readFileToJson(fileName):
- print "read file ", fileName
- fo=open(fileName)
- try:
- json_mapping=json.load(fo)
- fo.close()
- except ValueError:
- print "error in reading file " , fileName
- fo.close()
- raise
- return json_mapping
diff --git a/asdctool/src/main/resources/es-resources/index_ops.py b/asdctool/src/main/resources/es-resources/index_ops.py
deleted file mode 100644
index d1f3bb0021..0000000000
--- a/asdctool/src/main/resources/es-resources/index_ops.py
+++ /dev/null
@@ -1,151 +0,0 @@
-import itertools
-import string
-import json
-from datetime import datetime
-from elasticsearch import Elasticsearch
-import elasticsearch
-import elasticsearch.helpers
-from elasticsearch.client import IndicesClient, CatClient
-import sys, os, getopt
-from file_utils import readFileToJson
-from config_properties import getGlobalVar
-
-
-
-def createIndex(client, indexName, createBody):
- try:
- print "start createIndex"
- if (client == None):
- client = Elasticsearch(['localhost'])
- esIndexClient = IndicesClient(client)
- res = deleteIndex(client, indexName)
- if (res != 0):
- print "operation failed"
- return 2
- create_res=elasticsearch.client.IndicesClient.create(esIndexClient, index=indexName, body=createBody)
- print "create index response: ", create_res
- if (create_res['acknowledged'] != True):
- print "failed to create index"
- return 1
- else:
- print "index ",indexName, " created successfully"
- return 0
- except Exception, error:
- print "An exception was thrown!"
- print str(error)
- return 2
-
-
-def deleteIndex(client, indexName):
- try:
- print "start deleteIndex"
- if (client == None):
- client = Elasticsearch(['localhost'])
- esIndexClient = IndicesClient(client)
- isExists=elasticsearch.client.IndicesClient.exists(esIndexClient, indexName)
- if ( isExists == True ):
- delete_res=elasticsearch.client.IndicesClient.delete(esIndexClient, index=indexName)
- if (delete_res['acknowledged'] != True):
- print "failed to delete index"
- return 1
- else:
- print "index ",indexName, " deleted"
- return 0
- else:
- print "index not found - assume already deleted"
- return 0
- except Exception, error:
- print "An exception was thrown!"
- print str(error)
- return 2
-
-def copyIndex(client, fromIndex, toIndex):
- try:
- print "start copyIndex"
- if (client == None):
- client = Elasticsearch(['localhost'])
- client.indices.refresh(index=fromIndex)
- count=client.search(fromIndex, search_type='count')
- print "original index count: ",count
- docNum, docErrors = elasticsearch.helpers.reindex(client, fromIndex, toIndex)
- print "copy result: ", docNum, docErrors
- if (docNum != count['hits']['total']):
- print "Failed to copy all documents. expected: ", count['hits']['total'], " actual: ", docNum
- return 1
- # if (len(docErrors) != 0):
- # print "copy returned with errors"
- # print docErrors
- # return 1
- return 0
- except Exception, error:
- print "An exception was thrown!"
- print str(error)
- return 2
-
-
-def usage():
- print 'USAGE: ', sys.argv[0], '-o <operation : create | delete | move> -n <indexName> -a <address> -f <mappingFile (for create)> -t <toIndex (for move operation)>'
-
-
-
-def main(argv):
- print "start script with ", len(sys.argv), 'arguments.'
- print "=============================================="
-
- try:
- opts, args = getopt.getopt(argv, "h:o:a:n:f:t:", ["operation","address","indexName","file","toIndex"])
- except getopt.GetoptError:
- usage()
- sys.exit(2)
-
- host = None
- for opt, arg in opts:
- print opt, arg
- if opt == '-h':
- usage()
- sys.exit(2)
- elif opt in ('-f', '--file'):
- mapping=readFileToJson(arg)
- elif opt in ('-a', '--address'):
- host=arg
- elif opt in ('-o', '--operation'):
- operation=arg
- elif opt in ('-n', '--indexName'):
- indexName=arg
- elif opt in ('-t', '--toIndex'):
- destIndexName=arg
-
- if (operation == None):
- usage()
- sys.exit(2)
- elif (host == None):
- print "address is mandatory argument"
- usage()
- sys.exit(2)
- elif operation == 'create':
- print "create new index ", indexName
- client = Elasticsearch([{'host': host, 'timeout':5}] )
- res = createIndex(client, indexName, mapping)
-
- elif operation == 'delete':
- print "delete index ", indexName
- client = Elasticsearch([{'host': host, 'timeout':5}] )
- res = deleteIndex(client, indexName)
-
- elif operation == 'move':
- print "move index ", indexName, " to ", destIndexName
- client = Elasticsearch([{'host': host, 'timeout':5}] )
- res = copyIndex(client, indexName, destIndexName)
- else:
- usage()
- exit(2)
- if res != 0:
- print "ERROR: operation Failed"
- exit(1)
-
-
-
-if __name__ == "__main__":
- main(sys.argv[1:])
-
-
diff --git a/asdctool/src/main/resources/es-resources/types/auditinggetuebclusterevent.txt b/asdctool/src/main/resources/es-resources/types/auditinggetuebclusterevent.txt
deleted file mode 100644
index b7e9435f97..0000000000
--- a/asdctool/src/main/resources/es-resources/types/auditinggetuebclusterevent.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-{ "action": "ACTION",
- "timestamp": "TIMESTAMP",
- "requestId": "REQUEST_ID",
- "serviceInstanceId": "SERVICE_INSTANCE_ID",
- "desc": "DESC",
- "status": "STATUS",
- "consumerId": "CONSUMER_ID"
-} \ No newline at end of file
diff --git a/asdctool/src/main/resources/es-resources/types/distributiondeployevent.txt b/asdctool/src/main/resources/es-resources/types/distributiondeployevent.txt
deleted file mode 100644
index a74f0370e6..0000000000
--- a/asdctool/src/main/resources/es-resources/types/distributiondeployevent.txt
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "action": "ACTION",
- "timestamp": "TIMESTAMP",
- "requestId": "REQUEST_ID",
- "serviceInstanceId": "SERVICE_INSTANCE_ID",
- "desc": "DESC",
- "status": "STATUS",
- "currVersion": "CURR_VERSION",
- "distributionId": "DID",
- "modifierName": "MODIFIER_NAME",
- "modifierUid": "MODIFIER_UID",
- "resourceName": "RESOURCE_NAME",
- "resourceType": "RESOURCE_TYPE"
-} \ No newline at end of file
diff --git a/asdctool/src/main/resources/es-resources/types/distributiondownloadevent.txt b/asdctool/src/main/resources/es-resources/types/distributiondownloadevent.txt
deleted file mode 100644
index 879c4c4231..0000000000
--- a/asdctool/src/main/resources/es-resources/types/distributiondownloadevent.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-{ "action": "ACTION",
- "timestamp": "TIMESTAMP",
- "requestId": "REQUEST_ID",
- "serviceInstanceId": "SERVICE_INSTANCE_ID",
- "desc": "DESC",
- "status": "STATUS",
- "resourceUrl": "RESOURCE_URL",
- "consumerId": "CONSUMER_ID"
-} \ No newline at end of file
diff --git a/asdctool/src/main/resources/es-resources/types/distributionengineevent.txt b/asdctool/src/main/resources/es-resources/types/distributionengineevent.txt
deleted file mode 100644
index a261042720..0000000000
--- a/asdctool/src/main/resources/es-resources/types/distributionengineevent.txt
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "action": "ACTION",
- "timestamp": "TIMESTAMP",
- "requestId": "REQUEST_ID",
- "serviceInstanceId": "SERVICE_INSTANCE_ID",
- "desc": "DESC",
- "status": "STATUS",
- "consumerId": "CONSUMER_ID",
- "role": "ROLE",
- "topicName": "TOPIC_NAME",
- "apiKey": "API_KEY",
- "environmentName": "D_ENV"
-} \ No newline at end of file
diff --git a/asdctool/src/main/resources/es-resources/types/distributionnotificationevent.txt b/asdctool/src/main/resources/es-resources/types/distributionnotificationevent.txt
deleted file mode 100644
index 6375ead9bb..0000000000
--- a/asdctool/src/main/resources/es-resources/types/distributionnotificationevent.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "action": "ACTION",
- "timestamp": "TIMESTAMP",
- "requestId": "REQUEST_ID",
- "serviceInstanceId": "SERVICE_INSTANCE_ID",
- "desc": "DESC",
- "status": "STATUS",
- "currVersion": "CURR_VERSION",
- "currState": "CURR_STATE",
- "distributionId": "DID",
- "modifierName": "MODIFIER_NAME",
- "modifierUid": "MODIFIER_UID",
- "resourceName": "RESOURCE_NAME",
- "resourceType": "RESOURCE_TYPE",
- "topicName": "TOPIC_NAME"
-} \ No newline at end of file
diff --git a/asdctool/src/main/resources/es-resources/types/distributionstatusevent.txt b/asdctool/src/main/resources/es-resources/types/distributionstatusevent.txt
deleted file mode 100644
index 8fed9dd0c0..0000000000
--- a/asdctool/src/main/resources/es-resources/types/distributionstatusevent.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "action": "ACTION",
- "timestamp": "TIMESTAMP",
- "requestId": "REQUEST_ID",
- "serviceInstanceId": "SERVICE_INSTANCE_ID",
- "desc": "DESC",
- "status": "STATUS",
- "resourceUrl": "RESOURCE_URL",
- "consumerId": "CONSUMER_ID",
- "distributionId": "DID",
- "topicName": "TOPIC_NAME"
-} \ No newline at end of file
diff --git a/asdctool/src/main/resources/es-resources/types/resourceadminevent.txt b/asdctool/src/main/resources/es-resources/types/resourceadminevent.txt
deleted file mode 100644
index 4631aa3367..0000000000
--- a/asdctool/src/main/resources/es-resources/types/resourceadminevent.txt
+++ /dev/null
@@ -1,21 +0,0 @@
-{
- "action": "ACTION",
- "timestamp": "TIMESTAMP",
- "requestId": "REQUEST_ID",
- "serviceInstanceId": "SERVICE_INSTANCE_ID",
- "desc": "DESC",
- "status": "STATUS",
- "currVersion": "CURR_VERSION",
- "currState": "CURR_STATE",
- "distributionId": "DID",
- "modifierName": "MODIFIER_NAME",
- "modifierUid": "MODIFIER_UID",
- "prevVersion": "PREV_VERSION",
- "prevState": "PREV_STATE",
- "resourceName": "RESOURCE_NAME",
- "resourceType": "RESOURCE_TYPE",
- "dPrevStatus": "DPREV_STATUS",
- "dCurrStatus": "DCURR_STATUS",
- "comment": "COMMENT",
- "artifactName": "ARTIFACT_NAME"
-} \ No newline at end of file
diff --git a/asdctool/src/main/resources/es-resources/types/useraccessevent.txt b/asdctool/src/main/resources/es-resources/types/useraccessevent.txt
deleted file mode 100644
index ebd27b55e3..0000000000
--- a/asdctool/src/main/resources/es-resources/types/useraccessevent.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "action": "ACTION",
- "timestamp": "TIMESTAMP",
- "requestId": "REQUEST_ID",
- "serviceInstanceId": "SERVICE_INSTANCE_ID",
- "desc": "DESC",
- "status": "STATUS",
- "userUid": "USER_UID",
- "userName": "USER_NAME"
-} \ No newline at end of file
diff --git a/asdctool/src/main/resources/es-resources/types/useradminevent.txt b/asdctool/src/main/resources/es-resources/types/useradminevent.txt
deleted file mode 100644
index 15e0d9bdca..0000000000
--- a/asdctool/src/main/resources/es-resources/types/useradminevent.txt
+++ /dev/null
@@ -1,20 +0,0 @@
-{
- "action": "ACTION",
- "timestamp": "TIMESTAMP",
- "requestId": "REQUEST_ID",
- "serviceInstanceId": "SERVICE_INSTANCE_ID",
- "desc": "DESC",
- "status": "STATUS",
- "modifierName": "MODIFIER_NAME",
- "modifierUid": "MODIFIER_UID",
- "userUid": "USER_UID",
- "userName": "USER_NAME",
- "userEmail": "USER_EMAIL",
- "userRole": "USER_ROLE",
- "userBeforeName": "USER_BEFORE_NAME",
- "userBeforeEmail": "USER_BEFORE_EMAIL",
- "userBeforeRole": "USER_BEFORE_ROLE",
- "userAfterName": "USER_AFTER_NAME",
- "userAfterEmail": "USER_AFTER_EMAIL",
- "userAfterRole": "USER_AFTER_ROLE"
-} \ No newline at end of file
diff --git a/asdctool/src/main/resources/scripts/esToCassandraMigration.sh b/asdctool/src/main/resources/scripts/esToCassandraMigration.sh
deleted file mode 100644
index 383904c661..0000000000
--- a/asdctool/src/main/resources/scripts/esToCassandraMigration.sh
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/bin/bash
-
-CURRENT_DIR=`pwd`
-BASEDIR=$(dirname $0)
-
-if [ ${BASEDIR:0:1} = "/" ]
-then
- FULL_PATH=$BASEDIR
-else
- FULL_PATH=$CURRENT_DIR/$BASEDIR
-fi
-
-source ${FULL_PATH}/baseOperation.sh
-
-mainClass="org.openecomp.sdc.asdctool.main.EsToCassandraDataMigrationMenu"
-
-command="java $JVM_LOG_FILE -cp $JARS $mainClass es-to-cassndra-migration $@"
-echo $command
-
-$command
-result=$?
-
-echo "***********************************"
-echo "***** $result *********************"
-echo "***********************************"
-
-exit $result
-
-
diff --git a/asdctool/src/main/resources/scripts/esToCassandraMigrationExportOnly.sh b/asdctool/src/main/resources/scripts/esToCassandraMigrationExportOnly.sh
deleted file mode 100644
index 2c8e346f30..0000000000
--- a/asdctool/src/main/resources/scripts/esToCassandraMigrationExportOnly.sh
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/bin/bash
-
-CURRENT_DIR=`pwd`
-BASEDIR=$(dirname $0)
-
-if [ ${BASEDIR:0:1} = "/" ]
-then
- FULL_PATH=$BASEDIR
-else
- FULL_PATH=$CURRENT_DIR/$BASEDIR
-fi
-
-source ${FULL_PATH}/baseOperation.sh
-
-mainClass="org.openecomp.sdc.asdctool.main.EsToCassandraDataMigrationMenu"
-
-command="java $JVM_LOG_FILE -cp $JARS $mainClass es-to-cassndra-migration-export-only $@"
-echo $command
-
-$command
-result=$?
-
-echo "***********************************"
-echo "***** $result *********************"
-echo "***********************************"
-
-exit $result
-
-
diff --git a/asdctool/src/main/resources/scripts/esToCassandraMigrationImportOnly.sh b/asdctool/src/main/resources/scripts/esToCassandraMigrationImportOnly.sh
deleted file mode 100644
index 9ce3ca8aae..0000000000
--- a/asdctool/src/main/resources/scripts/esToCassandraMigrationImportOnly.sh
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/bin/bash
-
-CURRENT_DIR=`pwd`
-BASEDIR=$(dirname $0)
-
-if [ ${BASEDIR:0:1} = "/" ]
-then
- FULL_PATH=$BASEDIR
-else
- FULL_PATH=$CURRENT_DIR/$BASEDIR
-fi
-
-source ${FULL_PATH}/baseOperation.sh
-
-mainClass="org.openecomp.sdc.asdctool.main.EsToCassandraDataMigrationMenu"
-
-command="java $JVM_LOG_FILE -cp $JARS $mainClass es-to-cassndra-migration-import-only $@"
-echo $command
-
-$command
-result=$?
-
-echo "***********************************"
-echo "***** $result *********************"
-echo "***********************************"
-
-exit $result
-
-
diff --git a/asdctool/src/main/resources/scripts/getConsumers.sh b/asdctool/src/main/resources/scripts/getConsumers.sh
deleted file mode 100644
index d02aac629d..0000000000
--- a/asdctool/src/main/resources/scripts/getConsumers.sh
+++ /dev/null
@@ -1,37 +0,0 @@
-#!/bin/bash
-
-##############################
-# Get list of SDC consumers
-##############################
-
-
-CURRENT_DIR=`pwd`
-BASEDIR=$(dirname $0)
-
-if [ ${BASEDIR:0:1} = "/" ]
-then
- FULL_PATH=$BASEDIR
-else
- FULL_PATH=$CURRENT_DIR/$BASEDIR
-fi
-
-source ${FULL_PATH}/baseOperation.sh
-
-mainClass="org.openecomp.sdc.asdctool.main.GetConsumersMenu"
-
-command="java $JVM_LOG_FILE -Xmx1024M -cp $JARS $mainClass $@"
-echo $command
-
-$command
-result=$?
-
-
-
-echo "***********************************"
-echo "***** $result *********************"
-echo "***********************************"
-
-exit $result
-
-
-
diff --git a/asdctool/src/main/resources/scripts/python/user/exportUsers.py b/asdctool/src/main/resources/scripts/python/user/exportUsers.py
index 9e695ad8fd..ed7515cc3e 100644
--- a/asdctool/src/main/resources/scripts/python/user/exportUsers.py
+++ b/asdctool/src/main/resources/scripts/python/user/exportUsers.py
@@ -40,7 +40,8 @@ def getUsers(scheme, beHost, bePort, adminUser):
c.setopt(pycurl.HTTPHEADER, ['Content-Type: application/json', 'Accept: application/json', adminHeader])
if scheme == 'https':
- c.setopt(c.SSL_VERIFYPEER, 0)
+ c.setopt(pycurl.SSL_VERIFYPEER, 0)
+ c.setopt(pycurl.SSL_VERIFYHOST, 0)
res = c.perform()
#print(res)
diff --git a/asdctool/src/main/resources/scripts/python/user/importUsers.py b/asdctool/src/main/resources/scripts/python/user/importUsers.py
index 984b75bd4c..82ddec5139 100644
--- a/asdctool/src/main/resources/scripts/python/user/importUsers.py
+++ b/asdctool/src/main/resources/scripts/python/user/importUsers.py
@@ -70,7 +70,8 @@ def getUser(scheme, beHost, bePort, user):
c.setopt(c.WRITEFUNCTION, lambda x: None)
if scheme == 'https':
- c.setopt(c.SSL_VERIFYPEER, 0)
+ c.setopt(pycurl.SSL_VERIFYPEER, 0)
+ c.setopt(pycurl.SSL_VERIFYHOST, 0)
res = c.perform()
@@ -111,7 +112,8 @@ def createUser(scheme, beHost, bePort, user, adminUser):
c.setopt(c.WRITEFUNCTION, lambda x: None)
if scheme == 'https':
- c.setopt(c.SSL_VERIFYPEER, 0)
+ c.setopt(pycurl.SSL_VERIFYPEER, 0)
+ c.setopt(pycurl.SSL_VERIFYHOST, 0)
#print("before perform")
res = c.perform()
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/UtilsTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/UtilsTest.java
index 6193e7e27c..017126e86b 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/UtilsTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/UtilsTest.java
@@ -20,9 +20,9 @@
package org.openecomp.sdc.asdctool;
-import org.janusgraph.core.JanusGraph;
import org.apache.commons.configuration.Configuration;
import org.apache.tinkerpop.gremlin.structure.Element;
+import org.janusgraph.core.JanusGraph;
import org.junit.Assert;
import org.junit.Test;
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/cli/CLIToolTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/cli/CLIToolTest.java
index 6c15b61a4e..9a5a8b3d9e 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/cli/CLIToolTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/cli/CLIToolTest.java
@@ -21,17 +21,17 @@
package org.openecomp.sdc.asdctool.cli;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-
import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.Option;
import org.apache.commons.cli.OptionGroup;
import org.apache.commons.cli.Options;
import org.junit.Test;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertTrue;
+
public class CLIToolTest {
private static final String OPT = "t";
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/cli/SpringCLIToolTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/cli/SpringCLIToolTest.java
deleted file mode 100644
index c91a694918..0000000000
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/cli/SpringCLIToolTest.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP SDC
- * ================================================================================
- * Copyright (C) 2019 Samsung. 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.openecomp.sdc.asdctool.cli;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertTrue;
-
-import org.junit.Test;
-import org.springframework.context.annotation.Configuration;
-
-public class SpringCLIToolTest {
-
- private static final String DIR_NAME = "test-dir";
-
- private SpringCLITool impl = new SpringCLIToolImplTest();
-
- @Test
- public void testInit() {
- // when
- final CLIToolData init = impl.init(new String[]{"-c", DIR_NAME});
-
- // then
- assertEquals(DIR_NAME, init.getCommandLine().getOptionValue("c"));
- assertTrue(init.getSpringApplicationContext().containsBean("config"));
- }
-
- private static class SpringCLIToolImplTest extends SpringCLITool {
- @Override
- protected Class<?> getSpringConfigurationClass() {
- return Config.class;
- }
-
- @Override
- protected String commandName() {
- return "run";
- }
- }
-}
-
-@Configuration
-class Config {
-}
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/ArtifactUUIDFixConfigurationTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/ArtifactUUIDFixConfigurationTest.java
index 1ee1c4a700..bc1c87d398 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/ArtifactUUIDFixConfigurationTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/ArtifactUUIDFixConfigurationTest.java
@@ -20,8 +20,6 @@
package org.openecomp.sdc.asdctool.configuration;
-import static org.mockito.Mockito.mock;
-
import org.junit.Test;
import org.openecomp.sdc.asdctool.impl.ArtifactUuidFix;
import org.openecomp.sdc.be.components.distribution.engine.ServiceDistributionArtifactsBuilder;
@@ -30,7 +28,8 @@ import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
import org.openecomp.sdc.be.tosca.CsarUtils;
import org.openecomp.sdc.be.tosca.ToscaExportHandler;
-import org.springframework.beans.factory.config.PropertiesFactoryBean;
+
+import static org.mockito.Mockito.mock;
public class ArtifactUUIDFixConfigurationTest {
@@ -38,6 +37,9 @@ public class ArtifactUUIDFixConfigurationTest {
return new ArtifactUUIDFixConfiguration();
}
+ private static ToscaExportHandler toscaExportHandler;
+ private static CsarUtils csarUtils;
+
@Test
public void testArtifactUuidFix() throws Exception {
ArtifactUUIDFixConfiguration testSubject;
@@ -47,9 +49,7 @@ public class ArtifactUUIDFixConfigurationTest {
testSubject = createTestSubject();
JanusGraphDao janusGraphDao = mock(JanusGraphDao.class);
ToscaOperationFacade toscaOperationFacade = mock(ToscaOperationFacade.class);
- ToscaExportHandler toscaExportHandler = mock(ToscaExportHandler.class);
ArtifactCassandraDao artifactCassandraDao = mock(ArtifactCassandraDao.class);
- CsarUtils csarUtils = mock(CsarUtils.class);
result = testSubject.artifactUuidFix(janusGraphDao, toscaOperationFacade,
toscaExportHandler, artifactCassandraDao, csarUtils);
@@ -64,13 +64,4 @@ public class ArtifactUUIDFixConfigurationTest {
testSubject = createTestSubject();
}
- @Test
- public void testMapper() throws Exception {
- ArtifactUUIDFixConfiguration testSubject;
- PropertiesFactoryBean result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.mapper();
- }
}
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/GetConsumersConfigurationTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/GetConsumersConfigurationTest.java
deleted file mode 100644
index cbc9d37ca1..0000000000
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/GetConsumersConfigurationTest.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.asdctool.configuration;
-
-import org.junit.Test;
-import org.openecomp.sdc.be.dao.janusgraph.JanusGraphGenericDao;
-import org.openecomp.sdc.be.model.operations.impl.ConsumerOperation;
-
-public class GetConsumersConfigurationTest {
-
- private GetConsumersConfiguration createTestSubject() {
- return new GetConsumersConfiguration();
- }
-
- @Test
- public void testConsumerOperation() throws Exception {
- GetConsumersConfiguration testSubject;
- JanusGraphGenericDao janusGraphGenericDao = null;
- ConsumerOperation result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.consumerOperation(janusGraphGenericDao);
- }
-}
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ESCatalogDAOMockTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ESCatalogDAOMockTest.java
deleted file mode 100644
index 42713d7248..0000000000
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ESCatalogDAOMockTest.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.asdctool.configuration.mocks.es;
-
-import fj.data.Either;
-import org.junit.Test;
-import org.openecomp.sdc.be.dao.api.ResourceUploadStatus;
-import org.openecomp.sdc.be.resources.data.ESArtifactData;
-
-import java.util.List;
-
-public class ESCatalogDAOMockTest {
-
- private ESCatalogDAOMock createTestSubject() {
- return new ESCatalogDAOMock();
- }
-
- @Test
- public void testAddToIndicesMap() throws Exception {
- ESCatalogDAOMock testSubject;
- String typeName = "";
- String indexName = "";
-
- // default test
- testSubject = createTestSubject();
- testSubject.addToIndicesMap(typeName, indexName);
- }
-
- @Test
- public void testWriteArtifact() throws Exception {
- ESCatalogDAOMock testSubject;
- ESArtifactData artifactData = null;
-
- // default test
- testSubject = createTestSubject();
- testSubject.writeArtifact(artifactData);
- }
-
- @Test
- public void testGetArtifact() throws Exception {
- ESCatalogDAOMock testSubject;
- String id = "";
- Either<ESArtifactData, ResourceUploadStatus> result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getArtifact(id);
- }
-
- @Test
- public void testGetArtifacts() throws Exception {
- ESCatalogDAOMock testSubject;
- String[] ids = new String[] { "" };
- Either<List<ESArtifactData>, ResourceUploadStatus> result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.getArtifacts(ids);
- }
-
- @Test
- public void testDeleteArtifact() throws Exception {
- ESCatalogDAOMock testSubject;
- String id = "";
-
- // default test
- testSubject = createTestSubject();
- testSubject.deleteArtifact(id);
- }
-
- @Test
- public void testDeleteAllArtifacts() throws Exception {
- ESCatalogDAOMock testSubject;
-
- // default test
- testSubject = createTestSubject();
- testSubject.deleteAllArtifacts();
- }
-}
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ElasticSearchClientMockTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ElasticSearchClientMockTest.java
deleted file mode 100644
index 6c589fc482..0000000000
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ElasticSearchClientMockTest.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.asdctool.configuration.mocks.es;
-
-import org.junit.Test;
-
-public class ElasticSearchClientMockTest {
-
- private ElasticSearchClientMock createTestSubject() {
- return new ElasticSearchClientMock();
- }
-
- @Test
- public void testInitialize() throws Exception {
- ElasticSearchClientMock testSubject;
-
- // default test
- testSubject = createTestSubject();
- testSubject.initialize();
- }
-
- @Test
- public void testSetClusterName() throws Exception {
- ElasticSearchClientMock testSubject;
- String clusterName = "";
-
- // default test
- testSubject = createTestSubject();
- testSubject.setClusterName(clusterName);
- }
-
- @Test
- public void testSetLocal() throws Exception {
- ElasticSearchClientMock testSubject;
- String strIsLocal = "";
-
- // default test
- testSubject = createTestSubject();
- testSubject.setLocal(strIsLocal);
- }
-
- @Test
- public void testSetTransportClient() throws Exception {
- ElasticSearchClientMock testSubject;
- String strIsTransportclient = "";
-
- // default test
- testSubject = createTestSubject();
- testSubject.setTransportClient(strIsTransportclient);
- }
-}
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ElasticSearchMocksConfigurationTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ElasticSearchMocksConfigurationTest.java
deleted file mode 100644
index 868e1e270a..0000000000
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/configuration/mocks/es/ElasticSearchMocksConfigurationTest.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.asdctool.configuration.mocks.es;
-
-import org.junit.Test;
-import org.openecomp.sdc.be.dao.api.ICatalogDAO;
-import org.openecomp.sdc.be.dao.api.IEsHealthCheckDao;
-import org.openecomp.sdc.be.dao.es.ElasticSearchClient;
-
-public class ElasticSearchMocksConfigurationTest {
-
- private ElasticSearchMocksConfiguration createTestSubject() {
- return new ElasticSearchMocksConfiguration();
- }
-
- @Test
- public void testElasticSearchClientMock() throws Exception {
- ElasticSearchMocksConfiguration testSubject;
- ElasticSearchClient result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.elasticSearchClientMock();
- }
-
- @Test
- public void testEsCatalogDAOMock() throws Exception {
- ElasticSearchMocksConfiguration testSubject;
- ICatalogDAO result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.esCatalogDAOMock();
- }
-
- @Test
- public void testEsHealthCheckDaoMock() throws Exception {
- ElasticSearchMocksConfiguration testSubject;
- IEsHealthCheckDao result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.esHealthCheckDaoMock();
- }
-}
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ArtifactUuidFixTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ArtifactUuidFixTest.java
index 0ea4484ba4..8d599e587a 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ArtifactUuidFixTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ArtifactUuidFixTest.java
@@ -20,8 +20,8 @@
package org.openecomp.sdc.asdctool.impl;
-import org.janusgraph.core.JanusGraphVertex;
import fj.data.Either;
+import org.janusgraph.core.JanusGraphVertex;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.ArgumentMatchers;
@@ -40,16 +40,26 @@ import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum;
-import org.openecomp.sdc.be.model.*;
+import org.openecomp.sdc.be.model.ArtifactDefinition;
+import org.openecomp.sdc.be.model.Component;
+import org.openecomp.sdc.be.model.ComponentInstance;
+import org.openecomp.sdc.be.model.ComponentParametersView;
+import org.openecomp.sdc.be.model.DistributionStatusEnum;
+import org.openecomp.sdc.be.model.GroupDefinition;
+import org.openecomp.sdc.be.model.GroupInstance;
+import org.openecomp.sdc.be.model.LifecycleStateEnum;
+import org.openecomp.sdc.be.model.Resource;
+import org.openecomp.sdc.be.model.Service;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
-import org.openecomp.sdc.be.resources.data.ESArtifactData;
+import org.openecomp.sdc.be.resources.data.DAOArtifactData;
import org.openecomp.sdc.common.api.ArtifactTypeEnum;
import org.openecomp.sdc.common.api.Constants;
+import java.nio.ByteBuffer;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import java.util.ArrayList;
import static org.junit.Assert.assertEquals;
import static org.mockito.ArgumentMatchers.any;
@@ -185,11 +195,13 @@ public class ArtifactUuidFixTest {
.getByCriteria(VertexTypeEnum.TOPOLOGY_TEMPLATE, hasProps, hasNotProps, JsonParseFlagEnum.ParseAll)).thenReturn(Either.left(list));
when(toscaOperationFacade.getToscaElement(ArgumentMatchers.eq(graphVertex.getUniqueId()),any(ComponentParametersView.class)))
.thenReturn(Either.left(service));
- byte[] payload = "value".getBytes();
- ESArtifactData esArtifactData =new ESArtifactData();
- esArtifactData.setDataAsArray(payload);
- Either<ESArtifactData, CassandraOperationStatus> artifactfromESres = Either.left(esArtifactData);
+ DAOArtifactData artifactData = new DAOArtifactData();
+ byte[] data = "value".getBytes();
+ ByteBuffer bufferData = ByteBuffer.wrap(data);
+ artifactData.setData(bufferData);
+
+ Either<DAOArtifactData, CassandraOperationStatus> artifactfromESres = Either.left(artifactData);
when(artifactCassandraDao.getArtifact(anyString())).thenReturn(artifactfromESres);
result = test.doFix(fixComponent, runMode);
assertEquals(false, result);
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ComponentInstanceRowTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ComponentInstanceRowTest.java
index 8b8f9893f6..184bc332d3 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ComponentInstanceRowTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ComponentInstanceRowTest.java
@@ -19,11 +19,11 @@
*/
package org.openecomp.sdc.asdctool.impl;
+import org.junit.Test;
+
import static com.google.code.beanmatchers.BeanMatchers.hasValidGettersAndSetters;
import static org.junit.Assert.assertThat;
-import org.junit.Test;
-
public class ComponentInstanceRowTest {
@Test
public void shouldHaveValidGettersAndSetters() {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ComponentRowTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ComponentRowTest.java
index e5c139c698..fb78a4e294 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ComponentRowTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ComponentRowTest.java
@@ -19,11 +19,11 @@
*/
package org.openecomp.sdc.asdctool.impl;
+import org.junit.Test;
+
import static com.google.code.beanmatchers.BeanMatchers.hasValidGettersAndSetters;
import static org.junit.Assert.assertThat;
-import org.junit.Test;
-
public class ComponentRowTest {
@Test
public void shouldHaveValidGettersAndSetters() {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/DataMigrationTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/DataMigrationTest.java
deleted file mode 100644
index 3472721dc6..0000000000
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/DataMigrationTest.java
+++ /dev/null
@@ -1,371 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-/*
-
- * Copyright (c) 2018 AT&T Intellectual Property.
-
- *
-
- * 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.
-
- */
-package org.openecomp.sdc.asdctool.impl;
-
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.junit.MockitoJUnitRunner;
-import org.openecomp.sdc.be.dao.cassandra.ArtifactCassandraDao;
-import org.openecomp.sdc.be.dao.cassandra.AuditCassandraDao;
-import org.openecomp.sdc.be.dao.cassandra.schema.Table;
-import org.openecomp.sdc.be.resources.data.auditing.*;
-import org.openecomp.sdc.common.datastructure.AuditingFieldsKey;
-
-import java.io.IOException;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.HashMap;
-
-import static org.assertj.core.api.Assertions.assertThat;
-import static org.mockito.Mockito.mock;
-import static org.openecomp.sdc.common.datastructure.AuditingFieldsKey.*;
-
-@RunWith(MockitoJUnitRunner.class)
-public class DataMigrationTest {
- private final static String DESCRIPTION = "OK";
- private final static String STATUS = "200";
- private final static String SERVICE_INSTANCE_ID = "SERVICE_INSTANCE_ID";
- private final static String MODIFIER = "MODIFIER";
- private final static String REQUEST_ID = "REQUEST_ID";
- private final static String USER = "USER";
- private final static String USER_BEFORE = "USER_BEFORE";
- private final static String USER_AFTER = "USER_AFTER";
- private final static String ARTIFACT_UUID = "ARTIFACT_UUID";
-
- private final static String PREV_STATE = "PREV_STATE";
- private final static String CURR_STATE = "CURR_STATE";
- private final static String PREV_VERSION = "PREV_VERSION";
- private final static String CURR_VERSION = "CURR_VERSION";
- private final static String DPREV_STATUS = "DPREV_STATUS";
- private final static String DCURR_STATUS = "CURR_STATUS";
- private final static String INVARIANT_UUID = "INVARIANT_UUID";
- private final static String ARTIFACT_DATA = "ARTIFACT_DATA";
- private final static String COMMENT = "COMMENT";
- private final static String DISTRIBUTION_ID = "DISTRIBUTION_ID";
- private final static String TOSCA_NODE_TYPE = "TOSCA_NODE_TYPE";
- private final static String CONSUMER_ID = "CONSUMER_ID";
- private final static String RESOURCE_URL = "RESOURCE_URL";
- private final static String ENV_ID = "ENV_ID";
- private final static String VNF_WORKLOAD_CONTEXT = "VNF_WORKLOAD_CONTEXT";
- private final static String TENANT = "TENANT";
- private final static String RESOURCE_NAME = "RESOURCE_NAME";
- private final static String RESOURCE_TYPE = "RESOURCE_TYPE";
- private final static String AUTH_URL = "AUTH_URL";
- private final static String AUTH_RELM = "AUTH_RELM";
- private final static String TOPIC_NAME = "TOPIC_NAME";
-
- private final static String dateFormatPattern = "yyyy-MM-dd HH:mm:ss.SSS z";
-
- private static SimpleDateFormat simpleDateFormat = new SimpleDateFormat(dateFormatPattern);
-
- private static ArtifactCassandraDao artifactCassandraDao = mock(ArtifactCassandraDao.class);
-
- private static AuditCassandraDao auditCassandraDaoMock = mock(AuditCassandraDao.class);
-
- private static DataMigration dataMigration = new DataMigration(auditCassandraDaoMock, artifactCassandraDao);
-
- private final static String ES_STRING = "{\"" + AuditingFieldsKey.AUDIT_ACTION + "\":\"%s\", \"" + AuditingFieldsKey.AUDIT_RESOURCE_NAME + "\":\"" + RESOURCE_NAME + "\", \"" + AuditingFieldsKey.AUDIT_RESOURCE_TOSCA_NODE_TYPE + "\":\"" + TOSCA_NODE_TYPE +
- "\", \"" + AuditingFieldsKey.AUDIT_RESOURCE_PREV_VERSION + "\":\"" + PREV_VERSION + "\", \"" + AuditingFieldsKey.AUDIT_RESOURCE_PREV_STATE + "\":\"" + PREV_STATE +
- "\", \"" + AuditingFieldsKey.AUDIT_RESOURCE_TYPE + "\":\"" + RESOURCE_TYPE + "\", \"" + AuditingFieldsKey.AUDIT_SERVICE_INSTANCE_ID + "\":\"" + SERVICE_INSTANCE_ID +
- "\", \"" + AuditingFieldsKey.AUDIT_INVARIANT_UUID + "\":\"" + INVARIANT_UUID + "\", \"" + AuditingFieldsKey.AUDIT_RESOURCE_CURR_VERSION + "\":\"" + CURR_VERSION +
- "\", \"" + AuditingFieldsKey.AUDIT_RESOURCE_CURR_STATE + "\":\"" + CURR_STATE + "\", \"" + AuditingFieldsKey.AUDIT_MODIFIER_UID + "\":\"" + MODIFIER +
- "\", \"" + AuditingFieldsKey.AUDIT_DESC + "\":\"" + DESCRIPTION + "\", \"" + AuditingFieldsKey.AUDIT_STATUS + "\":\"" + STATUS +
- "\", \"" + AuditingFieldsKey.AUDIT_REQUEST_ID + "\":\"" + REQUEST_ID + "\", \"" + AuditingFieldsKey.AUDIT_CURR_ARTIFACT_UUID + "\":\"" + ARTIFACT_UUID +
- "\", \"" + AuditingFieldsKey.AUDIT_PREV_ARTIFACT_UUID + "\":\"" + ARTIFACT_UUID + "\", \"" + AuditingFieldsKey.AUDIT_ARTIFACT_DATA + "\":\"" + ARTIFACT_DATA +
- "\", \"" + AuditingFieldsKey.AUDIT_TIMESTAMP + "\":\"%s\"}";
-
-
- private String timestampStr;
-
- private HashMap<AuditingFieldsKey, String> dataMap = new HashMap<>();
-
- @Before
- public void setUp() {
- dataMap.put(AUDIT_DESC, DESCRIPTION);
- dataMap.put(AUDIT_STATUS, STATUS);
- dataMap.put(AUDIT_REQUEST_ID, REQUEST_ID);
- dataMap.put(AUDIT_SERVICE_INSTANCE_ID, SERVICE_INSTANCE_ID);
- dataMap.put(AUDIT_MODIFIER_UID, MODIFIER);
- dataMap.put(AUDIT_USER_BEFORE, USER_BEFORE);
- dataMap.put(AUDIT_USER_UID, USER);
- dataMap.put(AUDIT_USER_AFTER, USER_AFTER);
- dataMap.put(AUDIT_AUTH_URL, AUTH_URL);
- dataMap.put(AUDIT_AUTH_REALM, AUTH_RELM);
- dataMap.put(AUDIT_PREV_ARTIFACT_UUID, ARTIFACT_UUID);
- dataMap.put(AUDIT_CURR_ARTIFACT_UUID, ARTIFACT_UUID);
- dataMap.put(AUDIT_RESOURCE_PREV_STATE, PREV_STATE);
- dataMap.put(AUDIT_RESOURCE_PREV_VERSION, PREV_VERSION);
- dataMap.put(AUDIT_RESOURCE_CURR_STATE, CURR_STATE);
- dataMap.put(AUDIT_RESOURCE_CURR_VERSION, CURR_VERSION);
- dataMap.put(AUDIT_RESOURCE_DPREV_STATUS, DPREV_STATUS);
- dataMap.put(AUDIT_RESOURCE_DCURR_STATUS, DCURR_STATUS);
- dataMap.put(AUDIT_INVARIANT_UUID, INVARIANT_UUID);
- dataMap.put(AUDIT_ARTIFACT_DATA, ARTIFACT_DATA);
- dataMap.put(AUDIT_RESOURCE_COMMENT, COMMENT);
- dataMap.put(AUDIT_DISTRIBUTION_ID, DISTRIBUTION_ID);
- dataMap.put(AUDIT_RESOURCE_TOSCA_NODE_TYPE, TOSCA_NODE_TYPE);
- dataMap.put(AUDIT_DISTRIBUTION_CONSUMER_ID, CONSUMER_ID);
- dataMap.put(AUDIT_RESOURCE_URL, RESOURCE_URL);
- dataMap.put(AUDIT_DISTRIBUTION_ENVIRONMENT_ID, ENV_ID);
- dataMap.put(AUDIT_DISTRIBUTION_VNF_WORKLOAD_CONTEXT, VNF_WORKLOAD_CONTEXT);
- dataMap.put(AUDIT_DISTRIBUTION_TENANT, TENANT);
- dataMap.put(AUDIT_RESOURCE_NAME, RESOURCE_NAME);
- dataMap.put(AUDIT_RESOURCE_TYPE, RESOURCE_TYPE);
- timestampStr = simpleDateFormat.format(new Date());
- dataMap.put(AUDIT_TIMESTAMP, timestampStr);
- dataMap.put(AUDIT_DISTRIBUTION_TOPIC_NAME, TOPIC_NAME);
-
- }
-
- @Test
- public void createUserAdminEvent() {
- dataMap.put(AUDIT_ACTION, AuditingActionEnum.ADD_USER.getName());
- AuditingGenericEvent event = dataMigration.createAuditEvent(dataMap, Table.USER_ADMIN_EVENT);
- assertThat(AuditingActionEnum.ADD_USER.getName()).isEqualTo(event.getAction());
- verifyCommonData(event, true);
- verifyUserAdminEvent((UserAdminEvent) event);
- }
-
- @Test
- public void createResourceAdminEvent() {
- dataMap.put(AUDIT_ACTION, AuditingActionEnum.UPDATE_RESOURCE_METADATA.getName());
- AuditingGenericEvent event = dataMigration.createAuditEvent(dataMap, Table.RESOURCE_ADMIN_EVENT);
- assertThat(AuditingActionEnum.UPDATE_RESOURCE_METADATA.getName()).isEqualTo(event.getAction());
- verifyCommonData(event, true);
- verifyResourceAdminEvent((ResourceAdminEvent)event);
- }
-
- @Test
- public void createDistributionNotificationEvent() {
- dataMap.put(AUDIT_ACTION, AuditingActionEnum.DISTRIBUTION_NOTIFY.getName());
- AuditingGenericEvent event = dataMigration.createAuditEvent(dataMap, Table.DISTRIBUTION_NOTIFICATION_EVENT);
- assertThat(AuditingActionEnum.DISTRIBUTION_NOTIFY.getName()).isEqualTo(event.getAction());
- verifyCommonData(event, true);
- verifyDistributionNotificationEvent((DistributionNotificationEvent)event);
- }
-
- @Test
- public void createEventWhenSomeFieldValuesNotSet() {
- dataMap.clear();
- dataMap.put(AUDIT_ACTION, AuditingActionEnum.AUTH_REQUEST.getName());
- AuditingGenericEvent event = dataMigration.createAuditEvent(dataMap, Table.AUTH_EVENT);
- assertThat(AuditingActionEnum.AUTH_REQUEST.getName()).isEqualTo(event.getAction());
- assertThat(event.getStatus()).isNull();
- assertThat(event.getDesc()).isNull();
- assertThat(event.getRequestId()).isNull();
- }
-
- @Test
- public void createAuthEvent() {
- dataMap.put(AUDIT_ACTION, AuditingActionEnum.AUTH_REQUEST.getName());
- AuditingGenericEvent event = dataMigration.createAuditEvent(dataMap, Table.AUTH_EVENT);
- assertThat(AuditingActionEnum.AUTH_REQUEST.getName()).isEqualTo(event.getAction());
- verifyCommonData(event, false);
- verifyAuthEvent((AuthEvent) event);
- }
-
- @Test
- public void createImportResourceEventFromEsObject() throws IOException{
- AuditingGenericEvent event = dataMigration.createAuditRecordForCassandra(String.format(ES_STRING, AuditingActionEnum.IMPORT_RESOURCE.getName(), timestampStr), Table.RESOURCE_ADMIN_EVENT);
- assertThat(AuditingActionEnum.IMPORT_RESOURCE.getName()).isEqualTo(event.getAction());
- verifyCommonData(event, true);
- verifyResourceAdminEvent((ResourceAdminEvent)event);
- }
-
- @Test
- public void createGetUserListEventFromEsObject() throws IOException{
- AuditingGenericEvent event = dataMigration.createAuditRecordForCassandra(String.format(ES_STRING, AuditingActionEnum.GET_USERS_LIST.getName(), timestampStr),
- Table.GET_USERS_LIST_EVENT);
- assertThat(AuditingActionEnum.GET_USERS_LIST.getName()).isEqualTo(event.getAction());
- verifyCommonData(event, false);
- assertThat(((GetUsersListEvent)event).getModifier()).isEqualTo(MODIFIER);
- }
-
- @Test
- public void createEventFromEsFailedWhenActionDoesNotExist() throws IOException {
- dataMigration.createAuditRecordForCassandra(String.format(ES_STRING, AuditingActionEnum.IMPORT_RESOURCE.getName(), timestampStr),
- Table.CONSUMER_EVENT);
- }
-
- @Test(expected = NullPointerException.class)
- public void createRecordWhenJsonIsEmpty() throws IOException{
- dataMigration.createAuditRecordForCassandra("{}",
- Table.CONSUMER_EVENT);
- }
-
- @Test
- public void createEventFromUEBCluster() throws IOException
- {
- AuditingGenericEvent event = dataMigration.createAuditRecordForCassandra(String.format(ES_STRING, AuditingActionEnum.IMPORT_RESOURCE.getName(), timestampStr),
- Table.DISTRIBUTION_GET_UEB_CLUSTER_EVENT);
- assertThat(AuditingActionEnum.GET_UEB_CLUSTER.getName()).isEqualTo(event.getAction());
- verifyCommonData(event, true);
- }
-
- @Test
- public void createEventFromDistEngine() throws IOException
- {
- AuditingGenericEvent event = dataMigration.createAuditRecordForCassandra(String.format(ES_STRING, AuditingActionEnum.IMPORT_RESOURCE.getName(), timestampStr),
- Table.DISTRIBUTION_ENGINE_EVENT);
- assertThat(AuditingActionEnum.IMPORT_RESOURCE.getName()).isEqualTo(event.getAction());
- verifyCommonData(event, true);
- }
-
- @Test
- public void createEventFromDistStatus() throws IOException
- {
- AuditingGenericEvent event = dataMigration.createAuditRecordForCassandra(String.format(ES_STRING, AuditingActionEnum.IMPORT_RESOURCE.getName(), timestampStr),
- Table.DISTRIBUTION_STATUS_EVENT);
- assertThat(AuditingActionEnum.DISTRIBUTION_STATUS.getName()).isEqualTo(event.getAction());
- verifyCommonData(event, true);
- }
-
- @Test
- public void createEventFromCategory() throws IOException
- {
- AuditingGenericEvent event = dataMigration.createAuditRecordForCassandra(String.format(ES_STRING, AuditingActionEnum.IMPORT_RESOURCE.getName(), timestampStr),
- Table.CATEGORY_EVENT);
- assertThat(AuditingActionEnum.IMPORT_RESOURCE.getName()).isEqualTo(event.getAction());
- verifyCommonData(event, true);
- }
-
- @Test
- public void createFromCategoryHierarchy() throws IOException
- {
- AuditingGenericEvent event = dataMigration.createAuditRecordForCassandra(String.format(ES_STRING, AuditingActionEnum.IMPORT_RESOURCE.getName(), timestampStr),
- Table.GET_CATEGORY_HIERARCHY_EVENT);
- assertThat(AuditingActionEnum.GET_CATEGORY_HIERARCHY.getName()).isEqualTo(event.getAction());
- verifyCommonData(event, false);
- }
-
- @Test
- public void createEventFromUserAccess() throws IOException
- {
- AuditingGenericEvent event = dataMigration.createAuditRecordForCassandra(String.format(ES_STRING, AuditingActionEnum.IMPORT_RESOURCE.getName(), timestampStr),
- Table.USER_ACCESS_EVENT);
- assertThat(AuditingActionEnum.USER_ACCESS.getName()).isEqualTo(event.getAction());
- verifyCommonData(event, true);
- }
-
- @Test
- public void createEventFromDistDwnld() throws IOException
- {
- AuditingGenericEvent event = dataMigration.createAuditRecordForCassandra(String.format(ES_STRING, AuditingActionEnum.IMPORT_RESOURCE.getName(), timestampStr),
- Table.DISTRIBUTION_DOWNLOAD_EVENT);
- assertThat(AuditingActionEnum.DISTRIBUTION_ARTIFACT_DOWNLOAD.getName()).isEqualTo(event.getAction());
- verifyCommonData(event, true);
- }
-
- @Test
- public void createEventFromDistDeploy() throws IOException
- {
- AuditingGenericEvent event = dataMigration.createAuditRecordForCassandra(String.format(ES_STRING, AuditingActionEnum.IMPORT_RESOURCE.getName(), timestampStr),
- Table.DISTRIBUTION_DEPLOY_EVENT);
- assertThat(AuditingActionEnum.DISTRIBUTION_DEPLOY.getName()).isEqualTo(event.getAction());
- verifyCommonData(event, true);
- }
-
- private void verifyCommonData(AuditingGenericEvent event, boolean isServiceInstanceProvided) {
- assertThat(STATUS).isEqualTo(event.getStatus());
- if (isServiceInstanceProvided) {
- assertThat(SERVICE_INSTANCE_ID).isEqualTo(event.getServiceInstanceId());
- }
- else {
- assertThat(event.getServiceInstanceId()).isNull();
- }
- assertThat(DESCRIPTION).isEqualTo(event.getDesc());
- assertThat(REQUEST_ID).isEqualTo(event.getRequestId());
- }
-
- private void verifyUserAdminEvent(UserAdminEvent event) {
- assertThat(USER_AFTER).isEqualTo(event.getUserAfter());
- assertThat(USER_BEFORE).isEqualTo(event.getUserBefore());
- verifyTimestamp(event.getTimestamp1());
- }
-
- private void verifyAuthEvent(AuthEvent event) {
- assertThat(USER).isEqualTo(event.getUser());
- assertThat(AUTH_URL).isEqualTo(event.getUrl());
- assertThat(event.getAuthStatus()).isNull();
- assertThat(AUTH_RELM).isEqualTo(event.getRealm());
- }
-
- private void verifyTimestamp(Date date) {
- assertThat(timestampStr).isEqualTo(simpleDateFormat.format(date));
- }
-
- private void verifyResourceAdminEvent(ResourceAdminEvent event) {
- assertThat(CURR_STATE).isEqualTo(event.getCurrState());
- assertThat(CURR_VERSION).isEqualTo(event.getCurrVersion());
- assertThat(ARTIFACT_UUID).isEqualTo(event.getCurrArtifactUUID());
- assertThat(PREV_STATE).isEqualTo(event.getPrevState());
- assertThat(PREV_VERSION).isEqualTo(event.getPrevVersion());
- assertThat(ARTIFACT_UUID).isEqualTo(event.getPrevArtifactUUID());
- assertThat(INVARIANT_UUID).isEqualTo(event.getInvariantUUID());
- assertThat(ARTIFACT_DATA).isEqualTo(event.getArtifactData());
- assertThat(RESOURCE_NAME).isEqualTo(event.getResourceName());
- assertThat(RESOURCE_TYPE).isEqualTo(event.getResourceType());
- verifyTimestamp(event.getTimestamp1());
- assertThat(TOSCA_NODE_TYPE).isEqualTo( event.getToscaNodeType());
- }
-
- private void verifyDistributionNotificationEvent(DistributionNotificationEvent event) {
- assertThat(CURR_STATE).isEqualTo(event.getCurrState());
- assertThat(CURR_VERSION).isEqualTo(event.getCurrVersion());
- assertThat(TOPIC_NAME).isEqualTo(event.getTopicName());
- assertThat(DISTRIBUTION_ID).isEqualTo(event.getDid());
- assertThat(ENV_ID).isEqualTo(event.getEnvId());
- assertThat(VNF_WORKLOAD_CONTEXT).isEqualTo(event.getVnfWorkloadContext());
- assertThat(TENANT).isEqualTo(event.getTenant());
- verifyTimestamp(event.getTimestamp1());
- }
-
-}
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/EsToCassandraDataMigrationConfigTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/EsToCassandraDataMigrationConfigTest.java
deleted file mode 100644
index f1f161b2db..0000000000
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/EsToCassandraDataMigrationConfigTest.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.asdctool.impl;
-
-import static org.mockito.Mockito.mock;
-
-import org.junit.Test;
-import org.openecomp.sdc.be.dao.cassandra.ArtifactCassandraDao;
-import org.openecomp.sdc.be.dao.cassandra.AuditCassandraDao;
-import org.openecomp.sdc.be.dao.cassandra.CassandraClient;
-import org.openecomp.sdc.be.dao.cassandra.SdcSchemaFilesCassandraDao;
-
-import static org.mockito.Mockito.mock;
-
-public class EsToCassandraDataMigrationConfigTest {
-
- private EsToCassandraDataMigrationConfig createTestSubject() {
- return new EsToCassandraDataMigrationConfig();
- }
-
- @Test
- public void testDataMigration() throws Exception {
- EsToCassandraDataMigrationConfig testSubject;
- DataMigration result;
- AuditCassandraDao auditCassandraDaoMock = mock(AuditCassandraDao.class);
- ArtifactCassandraDao artifactCassandraDaoMock = mock(ArtifactCassandraDao.class);
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.dataMigration(auditCassandraDaoMock, artifactCassandraDaoMock);
- }
-
- @Test
- public void testArtifactCassandraDao() throws Exception {
- EsToCassandraDataMigrationConfig testSubject;
- ArtifactCassandraDao result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.artifactCassandraDao(mock(CassandraClient.class));
- }
-
- @Test
- public void testAuditCassandraDao() throws Exception {
- EsToCassandraDataMigrationConfig testSubject;
- AuditCassandraDao result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.auditCassandraDao(mock(CassandraClient.class));
- }
-
- @Test
- public void testCassandraClient() throws Exception {
- EsToCassandraDataMigrationConfig testSubject;
- CassandraClient result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.cassandraClient();
- }
-
- @Test
- public void testSdcSchemaFilesCassandraDao() throws Exception {
- EsToCassandraDataMigrationConfig testSubject;
- SdcSchemaFilesCassandraDao result;
-
- // default test
- testSubject = createTestSubject();
- result = testSubject.sdcSchemaFilesCassandraDao(mock(CassandraClient.class));
- }
-}
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/GraphJsonValidatorTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/GraphJsonValidatorTest.java
index 14b288b8f5..221d74cbe6 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/GraphJsonValidatorTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/GraphJsonValidatorTest.java
@@ -20,13 +20,13 @@
package org.openecomp.sdc.asdctool.impl;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-
import org.junit.Test;
import java.nio.file.NoSuchFileException;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
public class GraphJsonValidatorTest {
private GraphJsonValidator createTestSubject() {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/GraphMLConverterTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/GraphMLConverterTest.java
index a758526e48..87eb40d10b 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/GraphMLConverterTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/GraphMLConverterTest.java
@@ -20,9 +20,9 @@
package org.openecomp.sdc.asdctool.impl;
-import org.janusgraph.core.JanusGraph;
import org.apache.commons.lang3.tuple.ImmutablePair;
import org.apache.tinkerpop.gremlin.structure.Element;
+import org.janusgraph.core.JanusGraph;
import org.junit.Test;
import java.util.List;
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ProductLogicTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ProductLogicTest.java
index 41381ed055..f0845fe8f4 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ProductLogicTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/ProductLogicTest.java
@@ -20,9 +20,10 @@
package org.openecomp.sdc.asdctool.impl;
-import static org.junit.Assert.assertFalse;
import org.junit.Test;
+import static org.junit.Assert.assertFalse;
+
public class ProductLogicTest {
private ProductLogic createTestSubject() {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/VrfObjectFixHandlerTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/VrfObjectFixHandlerTest.java
index 8dbb194c70..9e6b2e424e 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/VrfObjectFixHandlerTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/VrfObjectFixHandlerTest.java
@@ -26,9 +26,9 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mockito;
import org.mockito.junit.MockitoJUnitRunner;
+import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
-import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.ArgumentMatchers.anyMap;
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/internal/tool/CsarGeneratorTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/internal/tool/CsarGeneratorTest.java
index 3be90e83b2..c297c23218 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/internal/tool/CsarGeneratorTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/internal/tool/CsarGeneratorTest.java
@@ -17,22 +17,7 @@
package org.openecomp.sdc.asdctool.impl.internal.tool;
-import static org.junit.Assert.assertEquals;
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Mockito.when;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.File;
-import java.io.PrintStream;
-import java.util.ArrayList;
-import java.util.EnumMap;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.Scanner;
-
+import fj.data.Either;
import org.junit.After;
import org.junit.Before;
import org.junit.BeforeClass;
@@ -55,8 +40,6 @@ import org.openecomp.sdc.be.model.ArtifactDefinition;
import org.openecomp.sdc.be.model.Component;
import org.openecomp.sdc.be.model.LifecycleStateEnum;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
-
-import fj.data.Either;
import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
import org.openecomp.sdc.be.tosca.CsarUtils;
import org.openecomp.sdc.be.tosca.ToscaExportHandler;
@@ -66,6 +49,22 @@ import org.openecomp.sdc.common.api.ConfigurationSource;
import org.openecomp.sdc.common.impl.ExternalConfiguration;
import org.openecomp.sdc.common.impl.FSConfigurationSource;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.PrintStream;
+import java.util.ArrayList;
+import java.util.EnumMap;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Scanner;
+
+import static org.junit.Assert.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.Mockito.when;
+
@RunWith(MockitoJUnitRunner.class)
public class CsarGeneratorTest {
@@ -319,6 +318,8 @@ public class CsarGeneratorTest {
.replace("\t\t\n", "\n")
.replace("\t\n", "\n")
.replace("\t\t", "\t")
+ .replace("\t\r", "")
+ .replace("\r", "")
.split("\n", -1);
}
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/internal/tool/DeleteComponentHandlerTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/internal/tool/DeleteComponentHandlerTest.java
index b7e8eae560..b9cf317e70 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/internal/tool/DeleteComponentHandlerTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/internal/tool/DeleteComponentHandlerTest.java
@@ -29,8 +29,8 @@
*/
package org.openecomp.sdc.asdctool.impl.internal.tool;
-import org.janusgraph.core.JanusGraphVertex;
import fj.data.Either;
+import org.janusgraph.core.JanusGraphVertex;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.ArgumentMatchers;
@@ -44,6 +44,7 @@ import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
import org.openecomp.sdc.be.model.jsonjanusgraph.datamodel.TopologyTemplate;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.TopologyTemplateOperation;
+
import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.util.HashMap;
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/ArtifactToolBLTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/ArtifactToolBLTest.java
index da3c858170..ee41d626b2 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/ArtifactToolBLTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/ArtifactToolBLTest.java
@@ -20,16 +20,16 @@
package org.openecomp.sdc.asdctool.impl.validator;
-import static org.mockito.Mockito.mock;
-
-import java.util.ArrayList;
import org.junit.Test;
import org.openecomp.sdc.asdctool.impl.validator.executers.NodeToscaArtifactsValidatorExecuter;
-
-import java.util.LinkedList;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
+import java.util.ArrayList;
+import java.util.LinkedList;
+
+import static org.mockito.Mockito.mock;
+
public class ArtifactToolBLTest {
private ArtifactToolBL createTestSubject() {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/ValidationToolBLTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/ValidationToolBLTest.java
index 57c4d9c02e..f7f8307638 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/ValidationToolBLTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/ValidationToolBLTest.java
@@ -20,15 +20,14 @@
package org.openecomp.sdc.asdctool.impl.validator;
-import static org.mockito.Mockito.mock;
-
-import java.util.ArrayList;
import org.junit.Test;
import org.openecomp.sdc.asdctool.impl.validator.executers.ServiceValidatorExecuter;
+import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
+import java.util.ArrayList;
import java.util.LinkedList;
-import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
-import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
+
+import static org.mockito.Mockito.mock;
public class ValidationToolBLTest {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/config/ValidationToolConfigurationTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/config/ValidationToolConfigurationTest.java
index 201d307cea..31f6424e28 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/config/ValidationToolConfigurationTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/config/ValidationToolConfigurationTest.java
@@ -20,13 +20,14 @@
package org.openecomp.sdc.asdctool.impl.validator.config;
-import static org.mockito.Mockito.mock;
-
-import java.util.ArrayList;
import org.junit.Test;
import org.openecomp.sdc.asdctool.impl.validator.ArtifactToolBL;
import org.openecomp.sdc.asdctool.impl.validator.ValidationToolBL;
-import org.openecomp.sdc.asdctool.impl.validator.executers.*;
+import org.openecomp.sdc.asdctool.impl.validator.executers.NodeToscaArtifactsValidatorExecuter;
+import org.openecomp.sdc.asdctool.impl.validator.executers.ServiceToscaArtifactsValidatorExecutor;
+import org.openecomp.sdc.asdctool.impl.validator.executers.ServiceValidatorExecuter;
+import org.openecomp.sdc.asdctool.impl.validator.executers.VFToscaArtifactValidatorExecutor;
+import org.openecomp.sdc.asdctool.impl.validator.executers.VfValidatorExecuter;
import org.openecomp.sdc.asdctool.impl.validator.tasks.artifacts.ArtifactValidationUtils;
import org.openecomp.sdc.asdctool.impl.validator.tasks.artifacts.ServiceArtifactValidationTask;
import org.openecomp.sdc.asdctool.impl.validator.tasks.artifacts.VfArtifactValidationTask;
@@ -35,10 +36,15 @@ import org.openecomp.sdc.be.dao.JanusGraphClientStrategy;
import org.openecomp.sdc.be.dao.cassandra.ArtifactCassandraDao;
import org.openecomp.sdc.be.dao.cassandra.CassandraClient;
import org.openecomp.sdc.be.dao.impl.HealingPipelineDao;
-import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.dao.janusgraph.JanusGraphClient;
+import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.model.DerivedNodeTypeResolver;
-import org.openecomp.sdc.be.model.jsonjanusgraph.operations.*;
+import org.openecomp.sdc.be.model.jsonjanusgraph.operations.GroupsOperation;
+import org.openecomp.sdc.be.model.jsonjanusgraph.operations.NodeTypeOperation;
+import org.openecomp.sdc.be.model.jsonjanusgraph.operations.TopologyTemplateOperation;
+import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
+
+import java.util.ArrayList;
import static org.mockito.Mockito.mock;
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/ArtifactValidatorExecuterTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/ArtifactValidatorExecuterTest.java
index a54463bc52..176a0ca79c 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/ArtifactValidatorExecuterTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/ArtifactValidatorExecuterTest.java
@@ -20,21 +20,21 @@
package org.openecomp.sdc.asdctool.impl.validator.executers;
-import static org.mockito.Mockito.mock;
-
import org.junit.Test;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
import org.openecomp.sdc.be.model.Component;
import org.openecomp.sdc.be.model.Resource;
+import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
+import org.testng.Assert;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
-import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
-import org.testng.Assert;
+
+import static org.mockito.Mockito.mock;
public class ArtifactValidatorExecuterTest {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/NodeToscaArtifactsValidatorExecuterTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/NodeToscaArtifactsValidatorExecuterTest.java
index a5f816c25c..e84b89af71 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/NodeToscaArtifactsValidatorExecuterTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/NodeToscaArtifactsValidatorExecuterTest.java
@@ -20,12 +20,12 @@
package org.openecomp.sdc.asdctool.impl.validator.executers;
-import static org.mockito.Mockito.mock;
-
import org.junit.Test;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
+import static org.mockito.Mockito.mock;
+
public class NodeToscaArtifactsValidatorExecuterTest {
private NodeToscaArtifactsValidatorExecuter createTestSubject() {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceToscaArtifactsValidatorExecutorTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceToscaArtifactsValidatorExecutorTest.java
index 9c0571cbb8..51f1cc63da 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceToscaArtifactsValidatorExecutorTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceToscaArtifactsValidatorExecutorTest.java
@@ -20,12 +20,12 @@
package org.openecomp.sdc.asdctool.impl.validator.executers;
-import static org.mockito.Mockito.mock;
-
import org.junit.Test;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
+import static org.mockito.Mockito.mock;
+
public class ServiceToscaArtifactsValidatorExecutorTest {
private ServiceToscaArtifactsValidatorExecutor createTestSubject() {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceValidatorExecuterTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceValidatorExecuterTest.java
index 6b243b359e..16e36369e6 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceValidatorExecuterTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/ServiceValidatorExecuterTest.java
@@ -20,11 +20,11 @@
package org.openecomp.sdc.asdctool.impl.validator.executers;
-import static org.mockito.Mockito.mock;
-
import org.junit.Test;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
+import static org.mockito.Mockito.mock;
+
public class ServiceValidatorExecuterTest {
private ServiceValidatorExecuter createTestSubject() {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/TopologyTemplateValidatorExecuterTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/TopologyTemplateValidatorExecuterTest.java
index 41c04c37ec..6e3c15d58d 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/TopologyTemplateValidatorExecuterTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/TopologyTemplateValidatorExecuterTest.java
@@ -20,12 +20,12 @@
package org.openecomp.sdc.asdctool.impl.validator.executers;
-import static org.mockito.Mockito.mock;
-
import org.junit.Test;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.datatypes.enums.ComponentTypeEnum;
+import static org.mockito.Mockito.mock;
+
public class TopologyTemplateValidatorExecuterTest {
private TopologyTemplateValidatorExecuter createTestSubject() {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/VFToscaArtifactValidatorExecutorTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/VFToscaArtifactValidatorExecutorTest.java
index 1dfd353087..bf9436336d 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/VFToscaArtifactValidatorExecutorTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/VFToscaArtifactValidatorExecutorTest.java
@@ -20,12 +20,12 @@
package org.openecomp.sdc.asdctool.impl.validator.executers;
-import static org.mockito.Mockito.mock;
-
import org.junit.Test;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
+import static org.mockito.Mockito.mock;
+
public class VFToscaArtifactValidatorExecutorTest {
private VFToscaArtifactValidatorExecutor createTestSubject() {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/VfValidatorExecuterTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/VfValidatorExecuterTest.java
index 688f4ca108..457c9b0d19 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/VfValidatorExecuterTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/executers/VfValidatorExecuterTest.java
@@ -20,14 +20,15 @@
package org.openecomp.sdc.asdctool.impl.validator.executers;
-import static org.mockito.Mockito.mock;
-
-import java.util.ArrayList;
-import java.util.List;
import org.junit.Test;
import org.openecomp.sdc.asdctool.impl.validator.tasks.VfValidationTask;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
+import java.util.ArrayList;
+import java.util.List;
+
+import static org.mockito.Mockito.mock;
+
public class VfValidatorExecuterTest {
private VfValidatorExecuter createTestSubject() {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/ArtifactValidationUtilsTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/ArtifactValidationUtilsTest.java
index 50e5f87305..b5ce1abca0 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/ArtifactValidationUtilsTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/ArtifactValidationUtilsTest.java
@@ -21,22 +21,7 @@
package org.openecomp.sdc.asdctool.impl.validator.tasks.artifacts;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
-
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.eq;
-import static org.mockito.Mockito.when;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Objects;
-import java.util.stream.IntStream;
-
+import fj.data.Either;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
@@ -44,26 +29,37 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
-
import org.mockito.junit.MockitoJUnitRunner;
import org.openecomp.sdc.asdctool.impl.validator.config.ValidationConfigManager;
import org.openecomp.sdc.asdctool.impl.validator.utils.ReportManager;
import org.openecomp.sdc.asdctool.impl.validator.utils.ReportManagerHelper;
import org.openecomp.sdc.be.dao.cassandra.ArtifactCassandraDao;
import org.openecomp.sdc.be.dao.cassandra.CassandraOperationStatus;
-
import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
import org.openecomp.sdc.be.datatypes.elements.ArtifactDataDefinition;
import org.openecomp.sdc.be.datatypes.elements.MapArtifactDataDefinition;
import org.openecomp.sdc.be.model.jsonjanusgraph.datamodel.TopologyTemplate;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.TopologyTemplateOperation;
import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
-
-import fj.data.Either;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
import org.powermock.modules.junit4.PowerMockRunnerDelegate;
+import java.io.File;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Objects;
+import java.util.stream.IntStream;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.when;
+
@RunWith(PowerMockRunner.class)
@PowerMockRunnerDelegate(MockitoJUnitRunner.class)
@PrepareForTest({ReportManager.class})
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/ServiceArtifactValidationTaskTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/ServiceArtifactValidationTaskTest.java
index d55f42131a..0aab99237b 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/ServiceArtifactValidationTaskTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/ServiceArtifactValidationTaskTest.java
@@ -20,11 +20,10 @@
package org.openecomp.sdc.asdctool.impl.validator.tasks.artifacts;
-import static org.mockito.Mockito.mock;
-
import org.junit.Test;
import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
-import org.testng.Assert;
+
+import static org.mockito.Mockito.mock;
public class ServiceArtifactValidationTaskTest {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/VfArtifactValidationTaskTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/VfArtifactValidationTaskTest.java
index a02f80a785..0dba9569ac 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/VfArtifactValidationTaskTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/tasks/artifacts/VfArtifactValidationTaskTest.java
@@ -20,12 +20,12 @@
package org.openecomp.sdc.asdctool.impl.validator.tasks.artifacts;
-import static org.mockito.Mockito.mock;
-
import org.junit.Test;
import org.openecomp.sdc.asdctool.impl.validator.utils.VertexResult;
import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
+import static org.mockito.Mockito.mock;
+
public class VfArtifactValidationTaskTest {
private VfArtifactValidationTask createTestSubject() {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/utils/ReportManagerHelper.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/utils/ReportManagerHelper.java
index 9bcffbbf24..c832c47df4 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/utils/ReportManagerHelper.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/utils/ReportManagerHelper.java
@@ -20,6 +20,8 @@
package org.openecomp.sdc.asdctool.impl.validator.utils;
+import org.openecomp.sdc.asdctool.impl.validator.config.ValidationConfigManager;
+
import java.io.BufferedReader;
import java.io.IOException;
import java.nio.file.Files;
@@ -27,8 +29,6 @@ import java.nio.file.Paths;
import java.util.List;
import java.util.stream.Collectors;
-import org.openecomp.sdc.asdctool.impl.validator.config.ValidationConfigManager;
-
public class ReportManagerHelper {
private ReportManagerHelper() {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/utils/ReportManagerTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/utils/ReportManagerTest.java
index c3cc3069bf..4926c1dee1 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/utils/ReportManagerTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/impl/validator/utils/ReportManagerTest.java
@@ -21,17 +21,6 @@
package org.openecomp.sdc.asdctool.impl.validator.utils;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.mockito.Mockito.when;
-
-import java.io.File;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Objects;
-import java.util.SortedSet;
-import java.util.TreeSet;
-
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@@ -44,6 +33,17 @@ import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
import org.powermock.modules.junit4.PowerMockRunnerDelegate;
+import java.io.File;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Objects;
+import java.util.SortedSet;
+import java.util.TreeSet;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.mockito.Mockito.when;
+
@RunWith(PowerMockRunner.class)
@PowerMockRunnerDelegate(MockitoJUnitRunner.class)
@PrepareForTest({ReportManager.class})
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/main/ExportImportMenuTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/main/ExportImportMenuTest.java
deleted file mode 100644
index 497e116a57..0000000000
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/main/ExportImportMenuTest.java
+++ /dev/null
@@ -1,272 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * 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.openecomp.sdc.asdctool.main;
-
-import static org.junit.Assert.assertEquals;
-
-import java.nio.file.NoSuchFileException;
-import java.security.Permission;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.contrib.java.lang.system.ExpectedSystemExit;
-import org.junit.contrib.java.lang.system.SystemOutRule;
-
-public class ExportImportMenuTest{
-
- private static final String EXPORT_USAGE = "Usage: export <janusgraph.properties> <output directory>\n";
- private static final String EXPORT_AS_GRAPH_ML_USAGE = "Usage: export-as-graph-ml <janusgraph.properties> <output directory>\n";
- private static final String IMPORT_USAGE = "Usage: import <janusgraph.properties> <graph file location>\n";
- private static final String EXPORT_USERS_USAGE = "Usage: exportusers <janusgraph.properties> <output directory>\n";
- private static final String EXPORT_WITH_REPORT_USAGE = "Usage: export-as-graph-ml-with-data-report <janusgraph.properties> <output directory>\n";
- private static final String DATA_REPORT_USAGE = "Usage: get-data-report-from-graph-ml <full path of .graphml file>\n";
- private static final String VALIDATE_JSON_USAGE = "Usage: validate-json <export graph path>\n";
- private static final String FIND_PROBLEM_USAGE = "Usage: findproblem <janusgraph.properties> <graph file location>\n";
- private static final String USAGE = DATA_REPORT_USAGE + EXPORT_USAGE + EXPORT_AS_GRAPH_ML_USAGE + EXPORT_USERS_USAGE
- + EXPORT_WITH_REPORT_USAGE + FIND_PROBLEM_USAGE + IMPORT_USAGE + VALIDATE_JSON_USAGE;
- private static final String PARAM_3 = "param3";
- private static final String PARAM_2 = "param2";
- private static final String EXPORT = "export";
- private static final String EXPORT_AS_GRAPH_ML = "export-as-graph-ml";
- private static final String NONEXISTENT = "nonexistent";
- private static final String IMPORT = "import";
- private static final String EXPORT_USERS = "exportusers";
- private static final String DATA_REPORT = "get-data-report-from-graph-ml";
- private static final String FIND_PROBLEM = "findproblem";
- private static final String VALIDATE_JSON = "validate-json";
- private static final String EXPORT_WITH_REPORT = "export-as-graph-ml-with-data-report";
-
- @Rule
- public final SystemOutRule systemOutRule = new SystemOutRule().enableLog();
-
- @Rule
- public final ExpectedSystemExit exit = ExpectedSystemExit.none();
-
- @Test
- public void testOfMainWithInvalidLengthOfArgs() throws Exception {
- String [] args = {};
- exit.expectSystemExitWithStatus(1);
- ExportImportMenu.main(args);
- }
-
- @Test
- public void testOutputOfMainWithInvalidLengthOfArgs() {
- String [] args = {};
- callMainWithoutSystemExit(args);
- String log = systemOutRule.getLog();
- assertEquals(log, USAGE);
- }
-
- @Test
- public void testOfMainWithDefaultOperation() throws Exception {
- String [] args = {NONEXISTENT};
- exit.expectSystemExitWithStatus(1);
- ExportImportMenu.main(args);
- }
-
- @Test
- public void testOutputOfOfMainWithDefaultOperation() {
- String [] args = {NONEXISTENT};
- callMainWithoutSystemExit(args);
- String log = systemOutRule.getLog();
- assertEquals(log, USAGE);
- }
-
- @Test
- public void testOfMainWithExportOperationAndInvalidNoArgs() throws Exception {
- String [] args = {EXPORT};
- exit.expectSystemExitWithStatus(1);
- ExportImportMenu.main(args);
- }
-
- @Test
- public void testOutputOfMainWithExportOperationAndInvalidNoArgs(){
- String [] args = {EXPORT};
- callMainWithoutSystemExit(args);
- String log = systemOutRule.getLog();
- assertEquals(log, EXPORT_USAGE);
- }
-
- @Test
- public void testOfMainWithExportOperationAndValidNoArgs() throws Exception {
- String [] args = {EXPORT, PARAM_2, PARAM_3};
- exit.expectSystemExitWithStatus(2);
- ExportImportMenu.main(args);
- }
-
- @Test
- public void testOutputOfMainWithExportUsersOperationAndInvalidNoArgs(){
- String [] args = {EXPORT_USERS};
- callMainWithoutSystemExit(args);
- String log = systemOutRule.getLog();
- assertEquals(log, EXPORT_USERS_USAGE);
- }
-
- @Test
- public void testOfMainWithExportUsersOperationAndValidNoArgs() throws Exception {
- String [] args = {EXPORT_USERS, PARAM_2, PARAM_3};
- exit.expectSystemExitWithStatus(2);
- ExportImportMenu.main(args);
- }
-
- @Test
- public void testOutputOfMainWithImportOperationAndInvalidNoArgs(){
- String [] args = {IMPORT};
- callMainWithoutSystemExit(args);
- String log = systemOutRule.getLog();
- assertEquals(log, IMPORT_USAGE);
- }
-
- @Test
- public void testOfMainWithImportOperationAndValidNoArgs() throws Exception {
- String [] args = {IMPORT, PARAM_2, PARAM_3};
- exit.expectSystemExitWithStatus(2);
- ExportImportMenu.main(args);
- }
-
- @Test
- public void testOutputOfMainWithDataReportOperationAndInvalidNoArgs(){
- String [] args = {DATA_REPORT};
- callMainWithoutSystemExit(args);
- String log = systemOutRule.getLog();
- assertEquals(log, DATA_REPORT_USAGE);
- }
-
- @Test
- public void testOfMainWithDataReportOperationAndValidNoArgs() throws Exception {
- String [] args = {DATA_REPORT, PARAM_2};
- exit.expectSystemExitWithStatus(2);
- ExportImportMenu.main(args);
- }
-
- @Test
- public void testOutputOfMainWithExportAsGraphMLOperationAndInvalidNoArgs(){
- String [] args = {EXPORT_AS_GRAPH_ML};
- callMainWithoutSystemExit(args);
- String log = systemOutRule.getLog();
- assertEquals(log, EXPORT_AS_GRAPH_ML_USAGE);
- }
-
- @Test
- public void testMainWithExportAsGraphMLOperationAndInvalidNoArgs() throws Exception {
- String [] args = {EXPORT_AS_GRAPH_ML};
- exit.expectSystemExitWithStatus(1);
- ExportImportMenu.main(args);
- }
-
- @Test
- public void testOfMainWithExportAsGraphMLOperationAndValidNoArgs() throws Exception {
- String [] args = {EXPORT_AS_GRAPH_ML, PARAM_2, PARAM_3};
- exit.expectSystemExitWithStatus(2);
- ExportImportMenu.main(args);
- }
-
- @Test
- public void testOutputOfMainWithFindProblemOperationAndInvalidNoArgs(){
- String [] args = {FIND_PROBLEM};
- callMainWithoutSystemExit(args);
- String log = systemOutRule.getLog();
- assertEquals(log, FIND_PROBLEM_USAGE);
- }
-
- @Test
- public void testMainWithFindProblemOperationAndInvalidNoArgs() throws Exception {
- String [] args = {FIND_PROBLEM};
- exit.expectSystemExitWithStatus(1);
- ExportImportMenu.main(args);
- }
-
- @Test
- public void testOfMainWithFindProblemOperationAndValidNoArgs() throws Exception {
- String [] args = {FIND_PROBLEM, PARAM_2, PARAM_3};
- exit.expectSystemExitWithStatus(2);
- ExportImportMenu.main(args);
- }
-
- @Test
- public void testOutputOfMainWithExportWithReportOperationAndInvalidNoArgs(){
- String [] args = {EXPORT_WITH_REPORT};
- callMainWithoutSystemExit(args);
- String log = systemOutRule.getLog();
- assertEquals(log, EXPORT_WITH_REPORT_USAGE);
- }
-
- @Test
- public void testMainWithExportWithReportOperationAndInvalidNoArgs() throws Exception {
- String [] args = {EXPORT_WITH_REPORT};
- exit.expectSystemExitWithStatus(1);
- ExportImportMenu.main(args);
- }
-
- @Test
- public void testOfMainWithExportWithReportOperationAndValidNoArgs() throws Exception {
- String [] args = {EXPORT_WITH_REPORT, PARAM_2, PARAM_3};
- exit.expectSystemExitWithStatus(2);
- ExportImportMenu.main(args);
- }
-
- @Test
- public void testOutputOfMainWithValidateJsonOperationAndInvalidNoArgs(){
- String [] args = {VALIDATE_JSON};
- callMainWithoutSystemExit(args);
- String log = systemOutRule.getLog();
- assertEquals(log, VALIDATE_JSON_USAGE);
- }
-
- @Test
- public void testMainWithValidateJsonOperationAndInvalidNoArgs() throws Exception {
- String [] args = {VALIDATE_JSON};
- exit.expectSystemExitWithStatus(1);
- ExportImportMenu.main(args);
- }
-
- @Test(expected = NoSuchFileException.class)
- public void testOfMainWithValidateJsonOperationAndValidNoArgs() throws Exception {
- String [] args = {VALIDATE_JSON, PARAM_2, PARAM_3};
- ExportImportMenu.main(args);
- }
-
- private void callMainWithoutSystemExit(String[] params) {
-
- class NoExitException extends RuntimeException {}
-
- SecurityManager securityManager = System.getSecurityManager();
- System.setSecurityManager(new SecurityManager(){
-
- @Override
- public void checkPermission(Permission permission) {
- }
-
- @Override
- public void checkPermission(Permission permission, Object o) {
- }
-
- @Override
- public void checkExit(int status) {
- super.checkExit(status);
- throw new NoExitException();
- }
- });
- try {
- ExportImportMenu.main(params);
- }catch (Exception ignore){}
- System.setSecurityManager(securityManager);
- }
-
-} \ No newline at end of file
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/config/MigrationSpringConfigTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/config/MigrationSpringConfigTest.java
index ac5fa6eda3..3669fa970d 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/config/MigrationSpringConfigTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/config/MigrationSpringConfigTest.java
@@ -26,9 +26,7 @@ import org.openecomp.sdc.asdctool.migration.dao.MigrationTasksDao;
import org.openecomp.sdc.asdctool.migration.resolver.MigrationResolver;
import org.openecomp.sdc.asdctool.migration.resolver.SpringBeansMigrationResolver;
import org.openecomp.sdc.asdctool.migration.service.SdcRepoService;
-import org.openecomp.sdc.be.components.distribution.engine.ServiceDistributionArtifactsBuilder;
import org.openecomp.sdc.be.dao.cassandra.CassandraClient;
-import org.springframework.beans.factory.config.PropertiesFactoryBean;
import static org.mockito.Mockito.mock;
@@ -82,13 +80,5 @@ public class MigrationSpringConfigTest {
result = testSubject.migrationTasksDao(mock(CassandraClient.class));
}
- @Test
- public void testMapper() throws Exception {
- MigrationSpringConfig testSubject;
- PropertiesFactoryBean result;
- // default test
- testSubject = createTestSubject();
- result = testSubject.mapper();
- }
}
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/core/SdcMigrationToolTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/core/SdcMigrationToolTest.java
index 2de6fc82f7..a9172a331b 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/core/SdcMigrationToolTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/core/SdcMigrationToolTest.java
@@ -35,7 +35,9 @@ import org.testng.annotations.Test;
import java.util.Arrays;
import java.util.Collections;
-import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
public class SdcMigrationToolTest {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/scanner/ClassScanner.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/scanner/ClassScanner.java
index 231d4dae95..81583033a6 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/scanner/ClassScanner.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/scanner/ClassScanner.java
@@ -26,7 +26,11 @@ import org.openecomp.sdc.asdctool.migration.core.MigrationException;
import java.io.File;
import java.lang.reflect.Modifier;
import java.net.URL;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.Optional;
/**
* scan and instantiate classes of given type in the class path
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/service/SdcRepoServiceTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/service/SdcRepoServiceTest.java
index 5e6bab2a4e..ddcbb8bdc2 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/service/SdcRepoServiceTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/service/SdcRepoServiceTest.java
@@ -51,18 +51,11 @@ public class SdcRepoServiceTest {
@Test
public void testGetLatestVersion_noMinorVersionForCurrentVersion() {
- when(migrationTasksDaoMock.getLatestMinorVersion(DBVersion.CURRENT_VERSION.getMajor())).thenReturn(null);
+ when(migrationTasksDaoMock.getLatestMajorVersion()).thenReturn(DBVersion.DEFAULT_VERSION.getMajor());
+ when(migrationTasksDaoMock.getLatestMinorVersion(migrationTasksDaoMock.getLatestMajorVersion())).thenReturn(BigInteger.valueOf(0));
DBVersion latestDBVersion = testInstance.getLatestDBVersion();
- assertEquals(latestDBVersion.getMajor(), DBVersion.CURRENT_VERSION.getMajor());
- assertEquals(latestDBVersion.getMinor(), BigInteger.valueOf(Integer.MIN_VALUE));
- }
-
- @Test
- public void testGetLatestVersion() {
- when(migrationTasksDaoMock.getLatestMinorVersion(DBVersion.CURRENT_VERSION.getMajor())).thenReturn(BigInteger.TEN);
- DBVersion latestDBVersion = testInstance.getLatestDBVersion();
- assertEquals(latestDBVersion.getMajor(), DBVersion.CURRENT_VERSION.getMajor());
- assertEquals(latestDBVersion.getMinor(), BigInteger.TEN);
+ assertEquals(latestDBVersion.getMajor(), DBVersion.DEFAULT_VERSION.getMajor());
+ assertEquals(latestDBVersion.getMinor(), BigInteger.valueOf(0));
}
@Test
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/task/MigrationTasksTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/task/MigrationTasksTest.java
index e45e8989fd..138abf3c83 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/task/MigrationTasksTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/task/MigrationTasksTest.java
@@ -59,13 +59,13 @@ public class MigrationTasksTest {
@Test
public void testNoTaskWithVersionGreaterThanCurrentVersion() throws Exception {
- Set<Migration> migrationsWithVersionsGreaterThanCurrent = migrations.stream().filter(mig -> mig.getVersion().compareTo(DBVersion.CURRENT_VERSION) > 0)
+ Set<Migration> migrationsWithVersionsGreaterThanCurrent = migrations.stream().filter(mig -> mig.getVersion().compareTo(DBVersion.DEFAULT_VERSION) > 0)
.collect(Collectors.toSet());
if (!migrationsWithVersionsGreaterThanCurrent.isEmpty()) {
- Assert.fail(String.format("migrations tasks %s have version which is greater than DBVersion.CURRENT_VERSION %s. did you forget to update current version?",
+ Assert.fail(String.format("migrations tasks %s have version which is greater than DBVersion.DEFAULT_VERSION %s. did you forget to update current version?",
getMigrationsNameAsString(migrationsWithVersionsGreaterThanCurrent),
- DBVersion.CURRENT_VERSION.toString()));
+ DBVersion.DEFAULT_VERSION.toString()));
}
}
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/handlers/XlsOutputHandlerTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/handlers/XlsOutputHandlerTest.java
index 8e1b482344..45212c3c6b 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/handlers/XlsOutputHandlerTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/handlers/XlsOutputHandlerTest.java
@@ -33,7 +33,9 @@ import java.io.IOException;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
@RunWith(MockitoJUnitRunner.class)
public class XlsOutputHandlerTest {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1710/UpgradeMigration1710Test.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1710/UpgradeMigration1710Test.java
index 64e06ac5fb..8763a1bf68 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1710/UpgradeMigration1710Test.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1710/UpgradeMigration1710Test.java
@@ -51,11 +51,17 @@ import org.openecomp.sdc.be.datatypes.enums.JsonPresentationFields;
import org.openecomp.sdc.be.datatypes.enums.NodeTypeEnum;
import org.openecomp.sdc.be.datatypes.enums.OriginTypeEnum;
import org.openecomp.sdc.be.impl.ComponentsUtils;
-import org.openecomp.sdc.be.model.*;
+import org.openecomp.sdc.be.model.Component;
+import org.openecomp.sdc.be.model.ComponentInstance;
+import org.openecomp.sdc.be.model.ComponentParametersView;
+import org.openecomp.sdc.be.model.LifecycleStateEnum;
+import org.openecomp.sdc.be.model.Resource;
+import org.openecomp.sdc.be.model.Service;
+import org.openecomp.sdc.be.model.User;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
-import org.openecomp.sdc.be.model.operations.api.IUserAdminOperation;
import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
import org.openecomp.sdc.be.model.operations.impl.CsarOperation;
+import org.openecomp.sdc.be.model.operations.impl.UserAdminOperation;
import org.openecomp.sdc.common.api.ConfigurationSource;
import org.openecomp.sdc.common.http.client.api.HttpRequestHandler;
import org.openecomp.sdc.exception.ResponseFormat;
@@ -71,7 +77,10 @@ import static org.junit.Assert.assertEquals;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.ArgumentMatchers.eq;
-import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
@RunWith(MockitoJUnitRunner.class)
public class UpgradeMigration1710Test {
@@ -89,7 +98,7 @@ public class UpgradeMigration1710Test {
@InjectMocks
private UpgradeMigration1710 migration = new UpgradeMigration1710();
@Mock
- private IUserAdminOperation userAdminOperation;
+ private UserAdminOperation userAdminOperation;
@Mock
private ToscaOperationFacade toscaOperationFacade;
@Mock
@@ -117,6 +126,7 @@ public class UpgradeMigration1710Test {
private static ConfigurationManager configurationManager;
private static List<String> resources = Stream.of("org.openecomp.resource.cp.extCP").collect(Collectors.toList());
private static Map<String, List<String>> resourcesForUpgrade;
+ private static Configuration.EnvironmentContext environmentContext = new Configuration.EnvironmentContext();
private Resource resource;
private Service service;
@@ -148,6 +158,8 @@ public class UpgradeMigration1710Test {
configurationManager.getConfiguration().setMaxDeleteComponents(5);
configurationManager.getConfiguration().setEnableAutoHealing(true);
configurationManager.getConfiguration().setToscaConformanceLevel("5.0");
+ environmentContext.setDefaultValue("General_Revenue-Bearing");
+ configurationManager.getConfiguration().setEnvironmentContext(environmentContext);
HashMap<String, List<String>> resourcesForUpgrade = new HashMap();
resourcesForUpgrade.put("5.0", Lists.newArrayList("port"));
configurationManager.getConfiguration().setResourcesForUpgrade(resourcesForUpgrade);
@@ -169,8 +181,6 @@ public class UpgradeMigration1710Test {
when(responseFormat.getFormattedMessage())
.thenReturn("");
- when(componentUtils.getResponseFormat(any(ActionStatus.class), any()))
- .thenReturn(responseFormat);
when(componentUtils.convertFromStorageResponse(any(), any())).thenCallRealMethod();
mockChangeComponentState();
}
@@ -525,7 +535,7 @@ public class UpgradeMigration1710Test {
when(janusGraphDao.getByCriteria(any(), any(), any(), any()))
.thenReturn(Either.left(components));
- when(janusGraphDao.getParentVertecies(any(GraphVertex.class), any(EdgeLabelEnum.class), any(JsonParseFlagEnum.class)))
+ when(janusGraphDao.getParentVertices(any(GraphVertex.class), any(EdgeLabelEnum.class), any(JsonParseFlagEnum.class)))
//1th node to upgrade
.thenReturn(Either.left(components))
//parent of the 1th node - stop recursion
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1802/SdcCatalogMigrationTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1802/SdcCatalogMigrationTest.java
index e07da1f102..2223d2847d 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1802/SdcCatalogMigrationTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1802/SdcCatalogMigrationTest.java
@@ -23,8 +23,8 @@ package org.openecomp.sdc.asdctool.migration.tasks.mig1802;
import org.junit.Test;
import org.openecomp.sdc.asdctool.migration.core.DBVersion;
import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult;
-import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.dao.janusgraph.JanusGraphClient;
+import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.TopologyTemplateOperation;
public class SdcCatalogMigrationTest {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ForwardPathMigrationTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ForwardPathMigrationTest.java
index d657625479..071a30fea2 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ForwardPathMigrationTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ForwardPathMigrationTest.java
@@ -20,8 +20,6 @@
package org.openecomp.sdc.asdctool.migration.tasks.mig1806;
-import static org.junit.Assert.assertThat;
-import java.math.BigInteger;
import org.hamcrest.core.Is;
import org.hamcrest.core.IsNull;
import org.junit.Before;
@@ -32,6 +30,10 @@ import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.model.jsonjanusgraph.operations.ToscaOperationFacade;
import org.openecomp.sdc.be.model.operations.impl.UserAdminOperation;
+import java.math.BigInteger;
+
+import static org.junit.Assert.assertThat;
+
public class ForwardPathMigrationTest {
ForwardPathMigration forwardPathMigration = null;
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ResourceLifecycleMigrationTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ResourceLifecycleMigrationTest.java
index 820ea05392..d11f70c4bb 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ResourceLifecycleMigrationTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/ResourceLifecycleMigrationTest.java
@@ -20,8 +20,6 @@
package org.openecomp.sdc.asdctool.migration.tasks.mig1806;
-import static org.junit.Assert.assertThat;
-import java.math.BigInteger;
import org.hamcrest.core.Is;
import org.hamcrest.core.IsNull;
import org.junit.Before;
@@ -34,6 +32,10 @@ import org.openecomp.sdc.be.components.lifecycle.LifecycleBusinessLogic;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
import org.openecomp.sdc.be.model.operations.impl.UserAdminOperation;
+import java.math.BigInteger;
+
+import static org.junit.Assert.assertThat;
+
@RunWith(MockitoJUnitRunner.class)
public class ResourceLifecycleMigrationTest {
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/SDCInstancesMigrationTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/SDCInstancesMigrationTest.java
index e40c4146f6..4721b1eb02 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/SDCInstancesMigrationTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/SDCInstancesMigrationTest.java
@@ -52,6 +52,8 @@ public class SDCInstancesMigrationTest{
private JanusGraphDao janusGraphDao;
@Mock
private NodeTemplateOperation nodeTemplateOperation;
+ @Mock
+ GraphVertex topologyTemplateVertex;
@Test
@@ -79,10 +81,13 @@ public class SDCInstancesMigrationTest{
vertexOrig.setJson(jsonComposition);
vertexOrig.setType(ComponentTypeEnum.SERVICE);
list.add(vertexOrig);
-
+
+
+ when(janusGraphDao.getVertexById(any())).thenReturn(Either.left(vertexOrig));
when(janusGraphDao.getByCriteria(any(), any(), any(), any() )).thenReturn(Either.left(list));
when(nodeTemplateOperation.createInstanceEdge(vertexOrig, instance)).thenReturn(StorageOperationStatus.OK);
-
+ when(janusGraphDao.commit()).thenReturn(JanusGraphOperationStatus.OK);
+
MigrationResult migrate = instancesMigration.migrate();
MigrationStatus migrationStatus = migrate.getMigrationStatus();
assertEquals(MigrationStatus.COMPLETED, migrationStatus);
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/SdcArchiveMigrationTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/SdcArchiveMigrationTest.java
index 51bbf705ad..03695367b0 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/SdcArchiveMigrationTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1806/SdcArchiveMigrationTest.java
@@ -20,8 +20,6 @@
package org.openecomp.sdc.asdctool.migration.tasks.mig1806;
-import static org.junit.Assert.assertThat;
-import java.math.BigInteger;
import org.hamcrest.core.Is;
import org.hamcrest.core.IsNull;
import org.junit.Before;
@@ -32,6 +30,10 @@ import org.mockito.junit.MockitoJUnitRunner;
import org.openecomp.sdc.asdctool.migration.core.DBVersion;
import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
+import java.math.BigInteger;
+
+import static org.junit.Assert.assertThat;
+
@RunWith(MockitoJUnitRunner.class)
public class SdcArchiveMigrationTest {
@Mock
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcGroupsMigrationTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcGroupsMigrationTest.java
new file mode 100644
index 0000000000..328c5f3459
--- /dev/null
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcGroupsMigrationTest.java
@@ -0,0 +1,231 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2020 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=========================================================
+ */
+
+package org.openecomp.sdc.asdctool.migration.tasks.mig1902;
+
+import fj.data.Either;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnitRunner;
+import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult;
+import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
+import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
+import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
+import org.openecomp.sdc.be.dao.jsongraph.types.EdgeLabelEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.JsonParseFlagEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
+import org.openecomp.sdc.be.datatypes.elements.GroupDataDefinition;
+import org.openecomp.sdc.be.datatypes.elements.PropertyDataDefinition;
+import org.openecomp.sdc.be.model.GroupTypeDefinition;
+import org.openecomp.sdc.be.model.PropertyDefinition;
+import org.openecomp.sdc.be.model.operations.api.StorageOperationStatus;
+import org.openecomp.sdc.be.model.operations.impl.GroupTypeOperation;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import static org.junit.Assert.assertEquals;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyMap;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+@RunWith(MockitoJUnitRunner.class)
+public class SdcGroupsMigrationTest {
+
+ @Mock
+ private JanusGraphDao janusGraphDao;
+ @Mock
+ private GroupTypeOperation groupTypeOperation;
+ @Mock
+ private GraphVertex topologyTemplateVertex;
+ @Mock
+ private GraphVertex groupsVertex;
+
+ @InjectMocks
+ private SdcGroupsMigration groupsMigration;
+
+ @Before
+ public void setUp() {
+ groupsMigration = new SdcGroupsMigration(janusGraphDao, groupTypeOperation);
+ when(janusGraphDao.getVertexById(any())).thenReturn(Either.left(topologyTemplateVertex));
+ }
+
+ @Test
+ public void handleOneContainerWhenErrorHappened() {
+ when(janusGraphDao.getChildVertex(any(GraphVertex.class), eq(EdgeLabelEnum.GROUPS), eq(JsonParseFlagEnum.ParseAll)))
+ .thenReturn(Either.right(JanusGraphOperationStatus.MATCH_NOT_FOUND));
+ StorageOperationStatus status = groupsMigration.handleOneContainer(topologyTemplateVertex);
+ assertEquals(StorageOperationStatus.MATCH_NOT_FOUND, status);
+ }
+
+ @Test
+ public void handleOneContainerWhenNoGroups() {
+ when(janusGraphDao.getChildVertex(any(GraphVertex.class), eq(EdgeLabelEnum.GROUPS), eq(JsonParseFlagEnum.ParseAll)))
+ .thenReturn(Either.right(JanusGraphOperationStatus.NOT_FOUND));
+ StorageOperationStatus status = groupsMigration.handleOneContainer(topologyTemplateVertex);
+ assertEquals(StorageOperationStatus.OK, status);
+ }
+
+ @Test
+ public void handleOneContainerWhenGroupsShouldNotBeUpdated() {
+ when(janusGraphDao.getChildVertex(any(GraphVertex.class), eq(EdgeLabelEnum.GROUPS), eq(JsonParseFlagEnum.ParseAll)))
+ .thenReturn(Either.left(groupsVertex));
+
+ doReturn(buildGroupInstancesMap(new String[] {"org.openecomp.groups.heat.HeatStack", "org.openecomp.groups.VfModule"}, new String[]{}))
+ .when(groupsVertex).getJson();
+ StorageOperationStatus status = groupsMigration.handleOneContainer(topologyTemplateVertex);
+ assertEquals(StorageOperationStatus.OK, status);
+ verify(janusGraphDao, times(0)).commit();
+
+ }
+
+ @Test
+ public void handleOneContainerWhenGroupsShouldBeUpdated() {
+ mockLatestGroupMapCreating();
+ mockUpgradeHappyFlow();
+ StorageOperationStatus status = groupsMigration.handleOneContainer(topologyTemplateVertex);
+ assertEquals(StorageOperationStatus.OK, status);
+ verify(janusGraphDao, times(1)).commit();
+ verify(janusGraphDao, times(0)).rollback();
+ }
+
+ private void mockUpgradeHappyFlow() {
+ when(janusGraphDao.getChildVertex(any(GraphVertex.class), eq(EdgeLabelEnum.GROUPS), eq(JsonParseFlagEnum.ParseAll)))
+ .thenReturn(Either.left(groupsVertex));
+ when(janusGraphDao.updateVertex(any(GraphVertex.class))).thenReturn(Either.left(groupsVertex));
+ when(janusGraphDao.commit()).thenReturn(JanusGraphOperationStatus.OK);
+ doReturn(buildGroupInstancesMap(new String[] {"org.openecomp.groups.NetworkCollection", "org.openecomp.groups.VfcInstanceGroup"},
+ new String[] {"old1", "old2"}))
+ .when(groupsVertex).getJson();
+ }
+
+ @Test
+ public void handleOneContainerWhenGroupsAlreadyUpdated() {
+ mockLatestGroupMapCreating();
+ when(janusGraphDao.getChildVertex(any(GraphVertex.class), eq(EdgeLabelEnum.GROUPS), eq(JsonParseFlagEnum.ParseAll)))
+ .thenReturn(Either.left(groupsVertex));
+ doReturn(buildGroupInstancesMap(new String[] {"org.openecomp.groups.NetworkCollection"},
+ new String[] {"a", "b", "c", "d"}))
+ .when(groupsVertex).getJson();
+ StorageOperationStatus status = groupsMigration.handleOneContainer(topologyTemplateVertex);
+ assertEquals(StorageOperationStatus.OK, status);
+ verify(janusGraphDao, times(0)).commit();
+ verify(janusGraphDao, times(1)).rollback();
+ }
+
+ @Test
+ public void handleOneContainerWhenExceptionIsThrown() {
+ when(janusGraphDao.getChildVertex(any(GraphVertex.class), eq(EdgeLabelEnum.GROUPS), eq(JsonParseFlagEnum.ParseAll)))
+ .thenThrow(new RuntimeException());
+ StorageOperationStatus status = groupsMigration.handleOneContainer(topologyTemplateVertex);
+ assertEquals(StorageOperationStatus.GENERAL_ERROR, status);
+ verify(janusGraphDao, times(0)).commit();
+ verify(janusGraphDao, times(1)).rollback();
+
+ }
+
+ // A temp remark for this test - following Commit hash: 08595ad21b0c409c69e3902232f5575963199e3e [ASDC-641] – Migration workaround for deployment artifact timeout. Reviewer: Lior.
+// @Test
+// public void migrateWhenExceptionIsThrown() {
+// List<GraphVertex> vertexList = new ArrayList<>();
+// vertexList.add(topologyTemplateVertex);
+// mockLatestGroupMapCreating();
+// when(janusGraphDao.getByCriteria(eq(VertexTypeEnum.TOPOLOGY_TEMPLATE), eq(null), anyMap(), eq(JsonParseFlagEnum.ParseAll)))
+// .thenReturn(Either.left(vertexList));
+// when(janusGraphDao.getChildVertex(any(GraphVertex.class), eq(EdgeLabelEnum.GROUPS), eq(JsonParseFlagEnum.ParseAll)))
+// .thenThrow(new RuntimeException());
+// assertEquals(MigrationResult.MigrationStatus.FAILED, groupsMigration.migrate().getMigrationStatus());
+// verify(janusGraphDao, times(0)).commit();
+// verify(janusGraphDao, times(1)).rollback();
+//
+// }
+
+ @Test
+ public void migrateWhenGroupsShouldBeUpdated() {
+ List<GraphVertex> vertexList = new ArrayList<>();
+ vertexList.add(topologyTemplateVertex);
+ mockLatestGroupMapCreating();
+ when(janusGraphDao.getByCriteria(eq(VertexTypeEnum.TOPOLOGY_TEMPLATE), eq(null), anyMap(), eq(JsonParseFlagEnum.ParseAll)))
+ .thenReturn(Either.left(vertexList));
+ mockUpgradeHappyFlow();
+
+ assertEquals(MigrationResult.MigrationStatus.COMPLETED, groupsMigration.migrate().getMigrationStatus());
+ verify(janusGraphDao, times(1)).commit();
+ verify(janusGraphDao, times(0)).rollback();
+ }
+
+
+ private Map<String, GroupDataDefinition> buildGroupInstancesMap(String[] groupTypes, String [] propertyNames) {
+ Map<String, GroupDataDefinition> groupsMap = new HashMap<>();
+ for (String type: groupTypes) {
+ GroupDataDefinition gr = new GroupDataDefinition();
+ gr.setType(type);
+
+ gr.setProperties(createInstanceProperties(propertyNames));
+ groupsMap.put(gr.getType(), gr);
+ }
+ return groupsMap;
+ }
+
+ private void mockLatestGroupMapCreating() {
+ doReturn(Either.left(createTypeDefinition(new String[] {"a", "b", "c", "d"})))
+ .when(groupTypeOperation).getLatestGroupTypeByType(eq(SdcGroupsMigration.GroupsForUpgrade.NW_COLLECTION_GROUP_NAME.getToscaType()), eq(false));
+ doReturn(Either.left(createTypeDefinition(new String[] {"l", "m", "n", "o", "p"})))
+ .when(groupTypeOperation).getLatestGroupTypeByType(eq(SdcGroupsMigration.GroupsForUpgrade.VFC_INSTANCE_GROUP_NAME.getToscaType()), eq(false));
+ groupsMigration.loadLatestGroupTypeDefinitions();
+
+ }
+
+ private GroupTypeDefinition createTypeDefinition(String[] propertyNames) {
+ GroupTypeDefinition typeDefinition = new GroupTypeDefinition();
+ typeDefinition.setProperties(createTypeProperties(propertyNames));
+ return typeDefinition;
+ }
+
+ private List<PropertyDefinition> createTypeProperties(String[] propertyNames) {
+ List<PropertyDefinition> propertyDefinitionList = new ArrayList<>();
+ for (String name: propertyNames) {
+ PropertyDefinition propertyDefinition = new PropertyDefinition();
+ propertyDefinition.setName(name);
+ propertyDefinitionList.add(propertyDefinition);
+ }
+ return propertyDefinitionList;
+ }
+
+ private List<PropertyDataDefinition> createInstanceProperties(String[] propertyNames) {
+ List<PropertyDataDefinition> propertyDefinitionList = new ArrayList<>();
+ for (String name: propertyNames) {
+ PropertyDefinition propertyDefinition = new PropertyDefinition();
+ propertyDefinition.setName(name);
+ propertyDefinitionList.add(propertyDefinition);
+ }
+ return propertyDefinitionList;
+ }
+
+}
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcResourceIconMigrationTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcResourceIconMigrationTest.java
new file mode 100644
index 0000000000..172b8a63f2
--- /dev/null
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/migration/tasks/mig1902/SdcResourceIconMigrationTest.java
@@ -0,0 +1,213 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2020 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=========================================================
+ */
+
+package org.openecomp.sdc.asdctool.migration.tasks.mig1902;
+
+import fj.data.Either;
+import org.assertj.core.util.Lists;
+import org.assertj.core.util.Maps;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.InjectMocks;
+import org.mockito.Mock;
+import org.mockito.junit.MockitoJUnitRunner;
+import org.openecomp.sdc.asdctool.migration.core.task.MigrationResult;
+import org.openecomp.sdc.be.dao.janusgraph.JanusGraphOperationStatus;
+import org.openecomp.sdc.be.dao.jsongraph.GraphVertex;
+import org.openecomp.sdc.be.dao.jsongraph.JanusGraphDao;
+import org.openecomp.sdc.be.dao.jsongraph.types.JsonParseFlagEnum;
+import org.openecomp.sdc.be.dao.jsongraph.types.VertexTypeEnum;
+import org.openecomp.sdc.be.datatypes.elements.ComponentInstanceDataDefinition;
+import org.openecomp.sdc.be.datatypes.elements.CompositionDataDefinition;
+import org.openecomp.sdc.be.datatypes.enums.GraphPropertyEnum;
+import org.openecomp.sdc.be.datatypes.enums.ResourceTypeEnum;
+import org.openecomp.sdc.be.model.jsonjanusgraph.enums.JsonConstantKeysEnum;
+
+import java.util.HashMap;
+import java.util.List;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+import static org.mockito.ArgumentMatchers.anyMap;
+import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Mockito.any;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.times;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+
+@RunWith(MockitoJUnitRunner.class)
+public class SdcResourceIconMigrationTest {
+ @Mock
+ private JanusGraphDao janusGraphDao;
+
+ @Mock
+ private GraphVertex graphVertex;
+
+ @Mock
+ private GraphVertex topologyTemplateVertex;
+
+ @Mock
+ private CompositionDataDefinition compositionDataDefinition;
+
+ @Mock
+ private ComponentInstanceDataDefinition componentInstanceDataDefinition;
+
+ @InjectMocks
+ private SdcResourceIconMigration iconMigration;
+
+ @Before
+ public void setUp() {
+ iconMigration = new SdcResourceIconMigration(janusGraphDao);
+ when(janusGraphDao.getVertexById(any())).thenReturn(Either.left(topologyTemplateVertex));
+ when(janusGraphDao.commit()).thenReturn(JanusGraphOperationStatus.OK);
+ }
+
+
+ @Test
+ public void migrationFailedWhenNoNodeTypeDefined() {
+ when(janusGraphDao.getByCriteria(eq(VertexTypeEnum.NODE_TYPE), anyMap(), anyMap(), eq(JsonParseFlagEnum.ParseAll)))
+ .thenReturn(Either.left(Lists.emptyList()));
+ assertEquals(MigrationResult.MigrationStatus.FAILED, iconMigration.migrate().getMigrationStatus());
+ }
+
+ @Test
+ public void resourceIsNotUpdatedIfNotVL() {
+ //iconMigration.handleOneContainer(graphVertex);
+ mockInstancesNotFoundFlow();
+
+ iconMigration.updateNodeTypeIconAndStoreInMap(ResourceTypeEnum.VL);
+ assertFalse(iconMigration.updateIconInsideInstance(componentInstanceDataDefinition));
+ }
+
+
+
+ @Test
+ public void resourceIsUpdatedIfCP() {
+ //iconMigration.handleOneContainer(graphVertex);
+ mockInstancesFoundFlow();
+ when(janusGraphDao.updateVertex(any(GraphVertex.class))).thenReturn(Either.left(graphVertex));
+ iconMigration.updateNodeTypeIconAndStoreInMap(ResourceTypeEnum.CP);
+ assertTrue(iconMigration.updateIconInsideInstance(componentInstanceDataDefinition));
+ }
+
+ @Test
+ public void migrateWhenIconsAreUpdated() {
+ mockInstancesFoundFlow();
+ when(janusGraphDao.getByCriteria(eq(VertexTypeEnum.TOPOLOGY_TEMPLATE), eq(null), anyMap(), eq(JsonParseFlagEnum.ParseAll)))
+ .thenReturn(Either.left(Lists.newArrayList(topologyTemplateVertex)));
+ when(compositionDataDefinition.getComponentInstances()).thenReturn(Maps.newHashMap("a", componentInstanceDataDefinition));
+ doReturn(Maps.newHashMap(JsonConstantKeysEnum.COMPOSITION.getValue(), compositionDataDefinition)).when(topologyTemplateVertex).getJson();
+ when(janusGraphDao.updateVertex(any(GraphVertex.class))).thenReturn(Either.left(graphVertex));
+
+ assertEquals(MigrationResult.MigrationStatus.COMPLETED, iconMigration.migrate().getMigrationStatus());
+ verify(janusGraphDao, times(3)).commit();
+ }
+
+ @Test
+ public void migrateWhenIconsNotUpdated() {
+ mockInstancesNotFoundFlow();
+ when(janusGraphDao.getByCriteria(eq(VertexTypeEnum.TOPOLOGY_TEMPLATE), eq(null), anyMap(), eq(JsonParseFlagEnum.ParseAll)))
+ .thenReturn(Either.left(Lists.newArrayList(topologyTemplateVertex)));
+ when(compositionDataDefinition.getComponentInstances()).thenReturn(Maps.newHashMap("a", componentInstanceDataDefinition));
+ doReturn(Maps.newHashMap(JsonConstantKeysEnum.COMPOSITION.getValue(), compositionDataDefinition)).when(topologyTemplateVertex).getJson();
+
+ assertEquals(MigrationResult.MigrationStatus.COMPLETED, iconMigration.migrate().getMigrationStatus());
+ verify(janusGraphDao, times(2)).commit();
+ }
+
+ @Test
+ public void migrateWhenNoInstancesFound() {
+ mockInstancesNotFoundFlow();
+ when(janusGraphDao.getByCriteria(eq(VertexTypeEnum.TOPOLOGY_TEMPLATE), eq(null), anyMap(), eq(JsonParseFlagEnum.ParseAll)))
+ .thenReturn(Either.left(Lists.newArrayList(topologyTemplateVertex)));
+
+ assertEquals(MigrationResult.MigrationStatus.COMPLETED, iconMigration.migrate().getMigrationStatus());
+ verify(janusGraphDao, times(2)).commit();
+ }
+
+ // A temp remark for this test - following Commit hash: 08595ad21b0c409c69e3902232f5575963199e3e [ASDC-641] – Migration workaround for deployment artifact timeout. Reviewer: Lior.
+// @Test
+// public void migrationFailedWhenInstanceVertexUpdateFailed() {
+// mockInstancesFoundFlow();
+// when(janusGraphDao.getByCriteria(eq(VertexTypeEnum.TOPOLOGY_TEMPLATE), eq(null), anyMap(), eq(JsonParseFlagEnum.ParseAll)))
+// .thenReturn(Either.left(Lists.newArrayList(topologyTemplateVertex)));
+// when(compositionDataDefinition.getComponentInstances()).thenReturn(Maps.newHashMap("a", componentInstanceDataDefinition));
+// doReturn(Maps.newHashMap(JsonConstantKeysEnum.COMPOSITION.getValue(), compositionDataDefinition)).when(topologyTemplateVertex).getJson();
+// when(janusGraphDao.updateVertex(any(GraphVertex.class))).thenReturn(Either.left(graphVertex))
+// .thenReturn(Either.left(graphVertex))
+// .thenReturn(Either.right(JanusGraphOperationStatus.GENERAL_ERROR));
+//
+// assertEquals(MigrationResult.MigrationStatus.FAILED, iconMigration.migrate().getMigrationStatus());
+// verify(janusGraphDao, times(2)).commit();
+// }
+
+ @Test
+ public void migrationCompletedWhenVertexJsonIsEmpty() {
+ mockInstancesFoundFlow();
+ when(janusGraphDao.getByCriteria(eq(VertexTypeEnum.TOPOLOGY_TEMPLATE), eq(null), anyMap(), eq(JsonParseFlagEnum.ParseAll)))
+ .thenReturn(Either.left(Lists.newArrayList(topologyTemplateVertex)));
+ doReturn(new HashMap<>()).when(topologyTemplateVertex).getJson();
+ when(janusGraphDao.updateVertex(any(GraphVertex.class))).thenReturn(Either.left(graphVertex));
+
+ assertEquals(MigrationResult.MigrationStatus.COMPLETED, iconMigration.migrate().getMigrationStatus());
+ verify(janusGraphDao, times(2)).commit();
+ }
+
+ @Test
+ public void migrationCompletedWhenVertexJsonIsNull() {
+ mockInstancesFoundFlow();
+ when(janusGraphDao.getByCriteria(eq(VertexTypeEnum.TOPOLOGY_TEMPLATE), eq(null), anyMap(), eq(JsonParseFlagEnum.ParseAll)))
+ .thenReturn(Either.left(Lists.newArrayList(topologyTemplateVertex)));
+ doReturn(null).when(topologyTemplateVertex).getJson();
+ when(janusGraphDao.updateVertex(any(GraphVertex.class))).thenReturn(Either.left(graphVertex));
+
+ assertEquals(MigrationResult.MigrationStatus.COMPLETED, iconMigration.migrate().getMigrationStatus());
+ verify(janusGraphDao, times(2)).commit();
+ }
+
+ @Test
+ public void migrationFailedWhenTypeUpdateFailed() {
+ mockInstancesFoundFlow();
+ when(janusGraphDao.updateVertex(any(GraphVertex.class))).thenReturn(Either.right(JanusGraphOperationStatus.GENERAL_ERROR));
+ assertEquals(MigrationResult.MigrationStatus.FAILED, iconMigration.migrate().getMigrationStatus());
+ verify(janusGraphDao, times(0)).commit();
+ }
+
+ private void mockInstancesNotFoundFlow() {
+ List<GraphVertex> nodeTypeVertexList = Lists.newArrayList(graphVertex);
+ when(graphVertex.getMetadataProperty(GraphPropertyEnum.NAME)).thenReturn("vl1");
+ when(componentInstanceDataDefinition.getComponentName()).thenReturn("other");
+ when(janusGraphDao.getByCriteria(eq(VertexTypeEnum.NODE_TYPE), anyMap(), anyMap(), eq(JsonParseFlagEnum.ParseAll)))
+ .thenReturn(Either.left(nodeTypeVertexList));
+ when(janusGraphDao.updateVertex(any(GraphVertex.class))).thenReturn(Either.left(graphVertex));
+ }
+
+ private void mockInstancesFoundFlow() {
+ when(graphVertex.getMetadataProperty(GraphPropertyEnum.NAME)).thenReturn(String.valueOf("cp1"));
+ when(componentInstanceDataDefinition.getComponentName()).thenReturn("cp1");
+ when(janusGraphDao.getByCriteria(eq(VertexTypeEnum.NODE_TYPE), anyMap(), anyMap(), eq(JsonParseFlagEnum.ParseAll)))
+ .thenReturn(Either.left(Lists.newArrayList(graphVertex)));
+ }
+
+
+}
diff --git a/asdctool/src/test/java/org/openecomp/sdc/asdctool/utils/ReportWriterTest.java b/asdctool/src/test/java/org/openecomp/sdc/asdctool/utils/ReportWriterTest.java
index 95e50b723e..f8e2c5ca5d 100644
--- a/asdctool/src/test/java/org/openecomp/sdc/asdctool/utils/ReportWriterTest.java
+++ b/asdctool/src/test/java/org/openecomp/sdc/asdctool/utils/ReportWriterTest.java
@@ -34,6 +34,7 @@ import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.junit.MockitoJUnitRunner;
+
import java.io.IOException;
@RunWith(MockitoJUnitRunner.class)