Subversion Repositories SmartDukaan

Rev

Rev 35828 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 35828 Rev 35832
Line 53... Line 53...
53
	private static final String HIKARI_MAX_LIFETIME = "hikari.maxLifetime";
53
	private static final String HIKARI_MAX_LIFETIME = "hikari.maxLifetime";
54
	private static final String HIKARI_CONNECTION_TIMEOUT = "hikari.connectionTimeout";
54
	private static final String HIKARI_CONNECTION_TIMEOUT = "hikari.connectionTimeout";
55
 
55
 
56
	private Resource resource = AppConfig.getResource();
56
	private Resource resource = AppConfig.getResource();
57
 
57
 
58
	@Bean(name = "dataSource", destroyMethod = "close")
-
 
59
	public DataSource dataSource() {
58
	private Properties loadAllProperties() {
60
		Properties properties = new Properties();
59
		Properties properties = new Properties();
61
		try {
60
		try {
-
 
61
			Resource sharedRes = AppConfig.getSharedResource();
-
 
62
			if (sharedRes != null && sharedRes.exists()) {
-
 
63
				properties.load(sharedRes.getInputStream());
-
 
64
			}
62
			properties.load(resource.getInputStream());
65
			properties.load(resource.getInputStream());
63
		} catch (IOException e) {
66
		} catch (IOException e) {
64
			LOGGER.error("Failed to load properties", e);
67
			LOGGER.error("Failed to load properties", e);
65
		}
68
		}
-
 
69
		return properties;
-
 
70
	}
-
 
71
 
-
 
72
	@Bean(name = "dataSource", destroyMethod = "close")
-
 
73
	public DataSource dataSource() {
-
 
74
		Properties properties = loadAllProperties();
66
 
75
 
67
		HikariConfig config = new HikariConfig();
76
		HikariConfig config = new HikariConfig();
68
		config.setDriverClassName(properties.getProperty(HIBERNATE_DRIVER_CLASS));
77
		config.setDriverClassName(properties.getProperty(HIBERNATE_DRIVER_CLASS));
69
		config.setJdbcUrl(properties.getProperty(HIBERNATE_URL));
78
		config.setJdbcUrl(properties.getProperty(HIBERNATE_URL));
70
		config.setUsername(properties.getProperty(HIBERNATE_USER_NAME));
79
		config.setUsername(properties.getProperty(HIBERNATE_USER_NAME));
Line 82... Line 91...
82
	}
91
	}
83
 
92
 
84
	@Bean
93
	@Bean
85
	public Properties getHibernateProperties() {
94
	public Properties getHibernateProperties() {
86
		Properties dbProperties = new Properties();
95
		Properties dbProperties = new Properties();
87
		Properties properties = new Properties();
96
		Properties properties = loadAllProperties();
88
		try {
-
 
89
			properties.load(resource.getInputStream());
-
 
90
		} catch (IOException e) {
-
 
91
			LOGGER.error("Failed to load properties", e);
-
 
92
		}
-
 
93
		dbProperties.put(HIBERNATE_DIALECT, properties.getProperty(HIBERNATE_DIALECT));
97
		dbProperties.put(HIBERNATE_DIALECT, properties.getProperty(HIBERNATE_DIALECT));
94
		dbProperties.put(HIBERNATE_SHOW_SQL, properties.getProperty(HIBERNATE_SHOW_SQL));
98
		dbProperties.put(HIBERNATE_SHOW_SQL, properties.getProperty(HIBERNATE_SHOW_SQL));
95
		dbProperties.put(HIBERNATE_FORMAT_SQL, properties.getProperty(HIBERNATE_FORMAT_SQL));
99
		dbProperties.put(HIBERNATE_FORMAT_SQL, properties.getProperty(HIBERNATE_FORMAT_SQL));
96
		dbProperties.put(HIBERNATE_JDBC_BATCH_SIZE, properties.getProperty(HIBERNATE_JDBC_BATCH_SIZE));
100
		dbProperties.put(HIBERNATE_JDBC_BATCH_SIZE, properties.getProperty(HIBERNATE_JDBC_BATCH_SIZE));
97
		dbProperties.put(HIBERNATE_ORDER_INSERTS, properties.getProperty(HIBERNATE_ORDER_INSERTS, "true"));
101
		dbProperties.put(HIBERNATE_ORDER_INSERTS, properties.getProperty(HIBERNATE_ORDER_INSERTS, "true"));
Line 115... Line 119...
115
		return new HibernateTransactionManager(sessionFactory);
119
		return new HibernateTransactionManager(sessionFactory);
116
	}
120
	}
117
	
121
	
118
	@Bean(destroyMethod = "close")
122
	@Bean(destroyMethod = "close")
119
	public Mongo mongoClient() {
123
	public Mongo mongoClient() {
120
		Properties properties = new Properties();
124
		Properties properties = loadAllProperties();
121
		try {
-
 
122
			properties.load(resource.getInputStream());
-
 
123
		} catch (IOException e) {
-
 
124
			e.printStackTrace();
-
 
125
		}
-
 
126
		return new Mongo(properties.getProperty("mongo.host"), properties.getProperty("content.mongo.host"));
125
		return new Mongo(properties.getProperty("mongo.host"), properties.getProperty("content.mongo.host"));
127
	}
126
	}
128
 
127
 
129
	/**
128
	/**
130
	 * Cleanup method to prevent memory leaks on shutdown.
129
	 * Cleanup method to prevent memory leaks on shutdown.