0e6b2c7d162fe22b5ae22a90dd2cba2f2ff8b0b3
[sdc.git] /
1 package org.openecomp.sdc.asdctool.impl.validator.config;
2
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;
22
23 /**
24  * Created by chaya on 7/3/2017.
25  */
26 @Configuration
27 public class ValidationToolConfiguration {
28
29     @Bean
30     public ServiceValidatorExecuter basicServiceValidator() { return new ServiceValidatorExecuter();}
31
32     @Bean
33     public VfArtifactValidationTask vfArtifactValidationTask() { return new VfArtifactValidationTask(); }
34
35     @Bean
36     public ServiceArtifactValidationTask serviceArtifactValidationTask() { return new ServiceArtifactValidationTask();}
37
38     @Bean
39     public ModuleJsonTask moduleJsonTask() { return new ModuleJsonTask();}
40
41     @Bean
42     public ValidationToolBL validationToolBL() {
43         return new ValidationToolBL();
44     }
45
46     @Bean
47     public VfValidatorExecuter basicVfValidator() { return new VfValidatorExecuter();}
48
49     @Bean
50     public ReportManager reportManager() { return new ReportManager();}
51
52     @Bean(name = "artifact-cassandra-dao")
53     public ArtifactCassandraDao artifactCassandraDao() {
54         return new ArtifactCassandraDao();
55     }
56
57     @Bean
58     public ArtifactValidationUtils artifactValidationUtils() { return new ArtifactValidationUtils();}
59
60     @Bean(name = "groups-operation")
61     public GroupsOperation jsonGroupsOperation() {
62         return new GroupsOperation();
63     }
64
65     @Bean(name = "cassandra-client")
66     public CassandraClient cassandraClient() {
67         return new CassandraClient();
68     }
69
70     @Bean(name = "dao-titan-strategy")
71     public TitanClientStrategy daoStrategy() {
72         return new DAOTitanStrategy();
73     }
74
75     @Bean(name = "migration-titan-client", initMethod = "createGraph")
76     public TitanGraphClient titanMigrationClient(@Qualifier("dao-titan-strategy") TitanClientStrategy titanClientStrategy) {
77         return new TitanGraphClient(titanClientStrategy);
78     }
79
80     @Bean(name = "tosca-operation-facade")
81     public ToscaOperationFacade toscaOperationFacade() {
82         return new ToscaOperationFacade();
83     }
84
85     @Bean(name = "node-type-operation")
86     public NodeTypeOperation nodeTypeOperation(@Qualifier("mig-derived-resolver") DerivedNodeTypeResolver migrationDerivedNodeTypeResolver) {
87         return new NodeTypeOperation(migrationDerivedNodeTypeResolver);
88     }
89
90     @Bean(name = "topology-template-operation")
91     public TopologyTemplateOperation topologyTemplateOperation() {
92         return new TopologyTemplateOperation();
93     }
94
95     @Bean(name = "node-template-operation")
96     public NodeTemplateOperation nodeTemplateOperation() {
97         return new NodeTemplateOperation();
98     }
99
100     @Bean(name = "mig-derived-resolver")
101     public DerivedNodeTypeResolver migrationDerivedNodeTypeResolver() {
102         return new ByToscaNameDerivedNodeTypeResolver();
103     }
104
105     @Bean(name = "titan-dao")
106     public TitanDao titanDao(@Qualifier("migration-titan-client") TitanGraphClient titanGraphClient) {
107         return new TitanDao(titanGraphClient);
108     }
109
110     @Bean(name = "category-operation")
111     public CategoryOperation categoryOperation() {
112         return new CategoryOperation();
113     }
114
115     @Bean(name = "artifacts-operation")
116     public ArtifactsOperations artifactsOperation() {
117         return new ArtifactsOperations();
118     }
119
120     @Bean(name = "tosca-data-operation")
121     public ToscaDataOperation toscaDataOperation() {
122         return new ToscaDataOperation();
123     }
124
125     @Bean(name = "tosca-element-lifecycle-operation")
126     public ToscaElementLifecycleOperation toscaElementLifecycleOperation() {
127         return new ToscaElementLifecycleOperation();
128     }
129 }