| 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;
|