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