1 package org.openecomp.sdc.asdctool.impl.validator.config;
3 import org.openecomp.sdc.asdctool.impl.validator.tasks.artifacts.ArtifactValidationUtils;
4 import org.openecomp.sdc.asdctool.impl.validator.tasks.artifacts.ServiceArtifactValidationTask;
5 import org.openecomp.sdc.asdctool.impl.validator.tasks.artifacts.VfArtifactValidationTask;
6 import org.openecomp.sdc.asdctool.impl.validator.executers.ServiceValidatorExecuter;
7 import org.openecomp.sdc.asdctool.impl.validator.executers.VfValidatorExecuter;
8 import org.openecomp.sdc.asdctool.impl.validator.ValidationToolBL;
9 import org.openecomp.sdc.asdctool.impl.validator.tasks.moduleJson.ModuleJsonTask;
10 import org.openecomp.sdc.asdctool.impl.validator.utils.ReportManager;
11 import org.openecomp.sdc.be.dao.DAOTitanStrategy;
12 import org.openecomp.sdc.be.dao.TitanClientStrategy;
13 import org.openecomp.sdc.be.dao.cassandra.ArtifactCassandraDao;
14 import org.openecomp.sdc.be.dao.cassandra.CassandraClient;
15 import org.openecomp.sdc.be.dao.jsongraph.TitanDao;
16 import org.openecomp.sdc.be.dao.titan.TitanGraphClient;
17 import org.openecomp.sdc.be.model.DerivedNodeTypeResolver;
18 import org.openecomp.sdc.be.model.jsontitan.operations.*;
19 import org.springframework.beans.factory.annotation.Qualifier;
20 import org.springframework.context.annotation.Bean;
21 import org.springframework.context.annotation.Configuration;
24 * Created by chaya on 7/3/2017.
27 public class ValidationToolConfiguration {
30 public ServiceValidatorExecuter basicServiceValidator() { return new ServiceValidatorExecuter();}
33 public VfArtifactValidationTask vfArtifactValidationTask() { return new VfArtifactValidationTask(); }
36 public ServiceArtifactValidationTask serviceArtifactValidationTask() { return new ServiceArtifactValidationTask();}
39 public ModuleJsonTask moduleJsonTask() { return new ModuleJsonTask();}
42 public ValidationToolBL validationToolBL() {
43 return new ValidationToolBL();
47 public VfValidatorExecuter basicVfValidator() { return new VfValidatorExecuter();}
50 public ReportManager reportManager() { return new ReportManager();}
52 @Bean(name = "artifact-cassandra-dao")
53 public ArtifactCassandraDao artifactCassandraDao() {
54 return new ArtifactCassandraDao();
58 public ArtifactValidationUtils artifactValidationUtils() { return new ArtifactValidationUtils();}
60 @Bean(name = "groups-operation")
61 public GroupsOperation jsonGroupsOperation() {
62 return new GroupsOperation();
65 @Bean(name = "cassandra-client")
66 public CassandraClient cassandraClient() {
67 return new CassandraClient();
70 @Bean(name = "dao-titan-strategy")
71 public TitanClientStrategy daoStrategy() {
72 return new DAOTitanStrategy();
75 @Bean(name = "migration-titan-client", initMethod = "createGraph")
76 public TitanGraphClient titanMigrationClient(@Qualifier("dao-titan-strategy") TitanClientStrategy titanClientStrategy) {
77 return new TitanGraphClient(titanClientStrategy);
80 @Bean(name = "tosca-operation-facade")
81 public ToscaOperationFacade toscaOperationFacade() {
82 return new ToscaOperationFacade();
85 @Bean(name = "node-type-operation")
86 public NodeTypeOperation nodeTypeOperation(@Qualifier("mig-derived-resolver") DerivedNodeTypeResolver migrationDerivedNodeTypeResolver) {
87 return new NodeTypeOperation(migrationDerivedNodeTypeResolver);
90 @Bean(name = "topology-template-operation")
91 public TopologyTemplateOperation topologyTemplateOperation() {
92 return new TopologyTemplateOperation();
95 @Bean(name = "node-template-operation")
96 public NodeTemplateOperation nodeTemplateOperation() {
97 return new NodeTemplateOperation();
100 @Bean(name = "mig-derived-resolver")
101 public DerivedNodeTypeResolver migrationDerivedNodeTypeResolver() {
102 return new ByToscaNameDerivedNodeTypeResolver();
105 @Bean(name = "titan-dao")
106 public TitanDao titanDao(@Qualifier("migration-titan-client") TitanGraphClient titanGraphClient) {
107 return new TitanDao(titanGraphClient);
110 @Bean(name = "category-operation")
111 public CategoryOperation categoryOperation() {
112 return new CategoryOperation();
115 @Bean(name = "artifacts-operation")
116 public ArtifactsOperations artifactsOperation() {
117 return new ArtifactsOperations();
120 @Bean(name = "tosca-data-operation")
121 public ToscaDataOperation toscaDataOperation() {
122 return new ToscaDataOperation();
125 @Bean(name = "tosca-element-lifecycle-operation")
126 public ToscaElementLifecycleOperation toscaElementLifecycleOperation() {
127 return new ToscaElementLifecycleOperation();