038134bbfe60088e69f19092c0739c7043da6df7
[sdc.git] /
1 package org.openecomp.sdc.asdctool.impl.validator.config;
2
3 import org.openecomp.sdc.asdctool.impl.migration.v1707.MigrationTitanStrategy;
4 import org.openecomp.sdc.asdctool.impl.validator.tasks.artifacts.ArtifactValidationUtils;
5 import org.openecomp.sdc.asdctool.impl.validator.tasks.artifacts.ServiceArtifactValidationTask;
6 import org.openecomp.sdc.asdctool.impl.validator.tasks.artifacts.VfArtifactValidationTask;
7 import org.openecomp.sdc.asdctool.impl.validator.executers.ServiceValidatorExecuter;
8 import org.openecomp.sdc.asdctool.impl.validator.executers.VfValidatorExecuter;
9 import org.openecomp.sdc.asdctool.impl.validator.ValidationToolBL;
10 import org.openecomp.sdc.asdctool.impl.validator.tasks.moduleJson.ModuleJsonTask;
11 import org.openecomp.sdc.asdctool.impl.validator.utils.ReportManager;
12 import org.openecomp.sdc.be.dao.DAOTitanStrategy;
13 import org.openecomp.sdc.be.dao.TitanClientStrategy;
14 import org.openecomp.sdc.be.dao.cassandra.ArtifactCassandraDao;
15 import org.openecomp.sdc.be.dao.cassandra.CassandraClient;
16 import org.openecomp.sdc.be.dao.jsongraph.TitanDao;
17 import org.openecomp.sdc.be.dao.titan.TitanGraphClient;
18 import org.openecomp.sdc.be.model.DerivedNodeTypeResolver;
19 import org.openecomp.sdc.be.model.jsontitan.operations.*;
20 import org.openecomp.sdc.be.model.operations.api.ToscaDefinitionPathCalculator;
21 import org.openecomp.sdc.be.model.operations.impl.ToscaDefinitionPathCalculatorImpl;
22 import org.springframework.beans.factory.annotation.Qualifier;
23 import org.springframework.context.annotation.Bean;
24 import org.springframework.context.annotation.Configuration;
25
26 /**
27  * Created by chaya on 7/3/2017.
28  */
29 @Configuration
30 public class ValidationToolConfiguration {
31
32     @Bean
33     public ServiceValidatorExecuter basicServiceValidator() { return new ServiceValidatorExecuter();}
34
35     @Bean
36     public VfArtifactValidationTask vfArtifactValidationTask() { return new VfArtifactValidationTask(); }
37
38     @Bean
39     public ServiceArtifactValidationTask serviceArtifactValidationTask() { return new ServiceArtifactValidationTask();}
40
41     @Bean
42     public ModuleJsonTask moduleJsonTask() { return new ModuleJsonTask();}
43
44     @Bean
45     public ValidationToolBL validationToolBL() {
46         return new ValidationToolBL();
47     }
48
49     @Bean
50     public VfValidatorExecuter basicVfValidator() { return new VfValidatorExecuter();}
51
52     @Bean
53     public ReportManager reportManager() { return new ReportManager();}
54
55     @Bean(name = "artifact-cassandra-dao")
56     public ArtifactCassandraDao artifactCassandraDao() {
57         return new ArtifactCassandraDao();
58     }
59
60     @Bean
61     public ArtifactValidationUtils artifactValidationUtils() { return new ArtifactValidationUtils();}
62
63     @Bean(name = "groups-operation")
64     public GroupsOperation jsonGroupsOperation() {
65         return new GroupsOperation();
66     }
67
68     @Bean(name = "cassandra-client")
69     public CassandraClient cassandraClient() {
70         return new CassandraClient();
71     }
72
73     @Bean(name = "dao-titan-strategy")
74     public TitanClientStrategy daoStrategy() {
75         return new DAOTitanStrategy();
76     }
77
78     @Bean(name = "migration-titan-client", initMethod = "createGraph")
79     public TitanGraphClient titanMigrationClient(@Qualifier("dao-titan-strategy") TitanClientStrategy titanClientStrategy) {
80         return new TitanGraphClient(titanClientStrategy);
81     }
82
83     @Bean(name = "tosca-operation-facade")
84     public ToscaOperationFacade toscaOperationFacade() {
85         return new ToscaOperationFacade();
86     }
87
88     @Bean(name = "node-type-operation")
89     public NodeTypeOperation nodeTypeOperation(@Qualifier("mig-derived-resolver") DerivedNodeTypeResolver migrationDerivedNodeTypeResolver) {
90         return new NodeTypeOperation(migrationDerivedNodeTypeResolver);
91     }
92
93     @Bean(name = "topology-template-operation")
94     public TopologyTemplateOperation topologyTemplateOperation() {
95         return new TopologyTemplateOperation();
96     }
97
98     @Bean(name = "node-template-operation")
99     public NodeTemplateOperation nodeTemplateOperation() {
100         return new NodeTemplateOperation();
101     }
102
103     @Bean(name = "mig-derived-resolver")
104     public DerivedNodeTypeResolver migrationDerivedNodeTypeResolver() {
105         return new ByToscaNameDerivedNodeTypeResolver();
106     }
107
108     @Bean(name = "titan-dao")
109     public TitanDao titanDao(@Qualifier("migration-titan-client") TitanGraphClient titanGraphClient) {
110         return new TitanDao(titanGraphClient);
111     }
112
113     @Bean(name = "category-operation")
114     public CategoryOperation categoryOperation() {
115         return new CategoryOperation();
116     }
117
118     @Bean(name = "tosca-path-calculator")
119     public ToscaDefinitionPathCalculator pathCalculator() {
120         return new ToscaDefinitionPathCalculatorImpl();
121     }
122
123     @Bean(name = "artifacts-operation")
124     public ArtifactsOperations artifactsOperation() {
125         return new ArtifactsOperations();
126     }
127
128     @Bean(name = "tosca-data-operation")
129     public ToscaDataOperation toscaDataOperation() {
130         return new ToscaDataOperation();
131     }
132
133     @Bean(name = "tosca-element-lifecycle-operation")
134     public ToscaElementLifecycleOperation toscaElementLifecycleOperation() {
135         return new ToscaElementLifecycleOperation();
136     }
137 }