re base code
[sdc.git] / asdctool / src / main / java / org / openecomp / sdc / asdctool / configuration / VrfObjectFixConfiguration.java
1 package org.openecomp.sdc.asdctool.configuration;
2
3 import org.openecomp.sdc.asdctool.impl.VrfObjectFixHandler;
4 import org.openecomp.sdc.be.dao.DAOTitanStrategy;
5 import org.openecomp.sdc.be.dao.TitanClientStrategy;
6 import org.openecomp.sdc.be.dao.jsongraph.TitanDao;
7 import org.openecomp.sdc.be.dao.titan.TitanGraphClient;
8 import org.springframework.beans.factory.annotation.Qualifier;
9 import org.springframework.context.annotation.Bean;
10 import org.springframework.context.annotation.Configuration;
11 import org.springframework.context.annotation.Primary;
12
13 @Configuration
14 public class VrfObjectFixConfiguration {
15
16     @Bean(name = "titan-dao")
17     public TitanDao titanDao(@Qualifier("titan-client") TitanGraphClient titanClient){
18         return new TitanDao(titanClient);
19     }
20
21     @Bean(name = "titan-client")
22     @Primary
23     public TitanGraphClient titanClient(@Qualifier("dao-client-strategy") TitanClientStrategy titanClientStrategy) {
24         return new TitanGraphClient(titanClientStrategy);
25     }
26
27     @Bean(name ="dao-client-strategy")
28     public TitanClientStrategy titanClientStrategy() {
29         return new DAOTitanStrategy();
30     }
31
32     @Bean
33     public VrfObjectFixHandler vrfObjectFixHandler(@Qualifier("titan-dao") TitanDao titanDao){
34         return new VrfObjectFixHandler(titanDao);
35     }
36 }