Subversion Repositories SmartDukaan

Rev

Rev 23738 | Rev 23898 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 23738 Rev 23755
Line 1... Line 1...
1
package com.smartdukaan.cron.config;
1
package com.smartdukaan.cron.config;
2
 
2
 
3
import java.io.IOException;
-
 
4
import java.util.Properties;
3
import java.util.Properties;
5
 
4
 
6
import javax.sql.DataSource;
5
import javax.sql.DataSource;
7
 
6
 
-
 
7
import org.apache.logging.log4j.LogManager;
-
 
8
import org.apache.logging.log4j.Logger;
8
import org.hibernate.SessionFactory;
9
import org.hibernate.SessionFactory;
9
import org.springframework.beans.factory.annotation.Autowired;
10
import org.springframework.beans.factory.annotation.Autowired;
10
import org.springframework.beans.factory.annotation.Value;
11
import org.springframework.beans.factory.annotation.Value;
11
import org.springframework.context.annotation.Bean;
12
import org.springframework.context.annotation.Bean;
-
 
13
import org.springframework.context.annotation.ComponentScan;
12
import org.springframework.context.annotation.Configuration;
14
import org.springframework.context.annotation.Configuration;
13
import org.springframework.context.annotation.PropertySource;
15
import org.springframework.context.annotation.PropertySource;
14
import org.springframework.jdbc.datasource.DriverManagerDataSource;
16
import org.springframework.jdbc.datasource.DriverManagerDataSource;
15
import org.springframework.orm.hibernate5.HibernateTransactionManager;
17
import org.springframework.orm.hibernate5.HibernateTransactionManager;
16
import org.springframework.orm.hibernate5.LocalSessionFactoryBuilder;
18
import org.springframework.orm.hibernate5.LocalSessionFactoryBuilder;
Line 18... Line 20...
18
 
20
 
19
import com.spice.profitmandi.dao.repository.dtr.Mongo;
21
import com.spice.profitmandi.dao.repository.dtr.Mongo;
20
 
22
 
21
@Configuration
23
@Configuration
22
@EnableTransactionManagement
24
@EnableTransactionManagement
-
 
25
@ComponentScan("com.spice.profitmandi.*")
23
@PropertySource("classpath:META-INF/env.properties")
26
@PropertySource("classpath:META-INF/env.properties")
24
public class DBConfig {
27
public class DBConfig {
25
 
28
 
26
	private static final Object HIBERNATE_DIALECT = "hibernate.dialect";
29
	private static final Logger LOGGER=LogManager.getLogger(DBConfig.class);
27
 
30
 
-
 
31
	
-
 
32
	private static final String HIBERNATE_DIALECT = "hibernate.dialect";
-
 
33
 
28
	private static final Object HIBERNATE_SHOW_SQL = "hibernate.show_sql";
34
	private static final String HIBERNATE_SHOW_SQL = "hibernate.show_sql";
29
 
35
 
30
	private static final Object HIBERNATE_FORMAT_SQL = "hibernate.format_sql";
36
	private static final String HIBERNATE_FORMAT_SQL = "hibernate.format_sql";
31
 
37
 
32
	private static final Object HIBERNATE_JDBC_BATCH_SIZE = "hibernate.jdbc.batch_size";
38
	private static final String HIBERNATE_JDBC_BATCH_SIZE = "hibernate.jdbc.batch_size";
33
 
39
 
34
	private static final Object HIBERNATE_C3P0_MIN_SIZE = "hibernate.c3p0.min_size";
40
	private static final String HIBERNATE_C3P0_MIN_SIZE = "hibernate.c3p0.min_size";
35
 
41
 
36
	private static final Object HIBERNATE_C3P0_MAX_SIZE = "hibernate.c3p0.max_size";
42
	private static final String HIBERNATE_C3P0_MAX_SIZE = "hibernate.c3p0.max_size";
37
 
43
 
38
	private static final Object HIBERNATE_C3P0_TIMEOUT = "hibernate.c3p0.timeout";
44
	private static final String HIBERNATE_C3P0_TIMEOUT = "hibernate.c3p0.timeout";
39
 
45
 
40
	private static final Object HIBERNATE_C3P0_MAX_STATEMENTS = "hibernate.c3p0.max_statements";
46
	private static final String HIBERNATE_C3P0_MAX_STATEMENTS = "hibernate.c3p0.max_statements";
41
 
47
 
42
	private static final Object HIBERNATE_C3P0_IDLE_TEST_PERIOD = "hibernate.c3p0.idle_test_period";
48
	private static final String HIBERNATE_C3P0_IDLE_TEST_PERIOD = "hibernate.c3p0.idle_test_period";
43
 
49
 
44
	@Value("${hibernate.driver.class}")
50
	@Value("${hibernate.driver.class}")
45
	private String hibernateDriverClass;
51
	private String hibernateDriverClass;
46
 
52
 
47
	@Value("${hibernate.url}")
53
	@Value("${hibernate.url}")
Line 91... Line 97...
91
		DriverManagerDataSource dataSource = new DriverManagerDataSource();
97
		DriverManagerDataSource dataSource = new DriverManagerDataSource();
92
		dataSource.setDriverClassName(hibernateDriverClass);
98
		dataSource.setDriverClassName(hibernateDriverClass);
93
		dataSource.setUrl(hibernateUrl);
99
		dataSource.setUrl(hibernateUrl);
94
		dataSource.setUsername(hibernateUserName);
100
		dataSource.setUsername(hibernateUserName);
95
		dataSource.setPassword(hibernatePassword);
101
		dataSource.setPassword(hibernatePassword);
96
		
-
 
-
 
102
		LOGGER.info("DataSource returned {}", dataSource);
97
		return dataSource;
103
		return dataSource;
98
	}
104
	}
99
 
105
 
100
	@Bean
106
	@Bean
101
	public Properties getHibernateProperties() {
107
	public Properties getHibernateProperties() {
Line 118... Line 124...
118
		LocalSessionFactoryBuilder sessionBuilder = new LocalSessionFactoryBuilder(dataSource);
124
		LocalSessionFactoryBuilder sessionBuilder = new LocalSessionFactoryBuilder(dataSource);
119
		sessionBuilder.addProperties(getHibernateProperties());
125
		sessionBuilder.addProperties(getHibernateProperties());
120
		sessionBuilder.scanPackages("com.spice.profitmandi.dao.*");
126
		sessionBuilder.scanPackages("com.spice.profitmandi.dao.*");
121
		return sessionBuilder.buildSessionFactory();
127
		return sessionBuilder.buildSessionFactory();
122
	}
128
	}
123
 
-
 
124
	@Autowired
129
	@Autowired
125
	@Bean(name = "transactionManager")
130
	@Bean(name = "transactionManager")
126
	public HibernateTransactionManager getTransactionManager(SessionFactory sessionFactory) {
131
	public HibernateTransactionManager getTransactionManager(SessionFactory sessionFactory) {
127
		HibernateTransactionManager transactionManager = new HibernateTransactionManager(sessionFactory);
132
		HibernateTransactionManager transactionManager = new HibernateTransactionManager(sessionFactory);
128
		return transactionManager;
133
		return transactionManager;