<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:osgi="http://www.springframework.org/schema/osgi"
	xmlns:context="http://www.springframework.org/schema/context"
	xsi:schemaLocation="http://www.springframework.org/schema/context
          http://www.springframework.org/schema/context/spring-context-3.0.xsd
		http://www.springframework.org/schema/beans
		http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
		http://www.springframework.org/schema/osgi
		http://www.springframework.org/schema/osgi/spring-osgi.xsd">

	<context:annotation-config />
	
	<bean id="smrdbms-props" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
		<property name="systemPropertiesModeName" value="SYSTEM_PROPERTIES_MODE_OVERRIDE" />
		<property name="locations">
			<list>
				<value>file:hub\db\rdbms.properties</value>
			</list>
		</property>
		<property name="ignoreUnresolvablePlaceholders" value="false" />
	</bean>

	<bean id="hubSMRDBMSManager" class="com.hub.platform.smrdbms.impl.SMRdbmsProfileImpl"
		init-method="init" destroy-method="stop">
		<property name="testSQL" value="${testsql}"></property>
		<property name="jdbcTemplate" ref="jdbcTemplate"></property>
		<property name="hubServiceManager" ref="hubServiceManager"></property>
		<property name="hubLogging" ref="hubLoggingManager"></property>
		<property name="transactionManager" ref="transactionManager"></property>
		<property name="defaultTransactionDefinition" ref="defaultTransactionDefinition"></property>
		<property name="iSMRdbmsProfile1" ref="hubSMRDBMSManager1"></property>
	</bean>
	
	<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">
		<property name="driverClassName" value="${driverClassName}" />
		<property name="url" value="${url}" />
		<property name="username" value="${username}" />
		<property name="password" value="${password}" />
		<property name="minIdle" value="2" />
		<property name="validationQuery" value="select 1" />
	</bean>

   <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
		<property name="dataSource" ref="dataSource"></property>
	</bean>
	
	<bean id="defaultTransactionDefinition" class="org.springframework.transaction.support.DefaultTransactionDefinition"></bean>
	
	<bean id="jdbcTemplate"  class="org.springframework.jdbc.core.JdbcTemplate">
		<property name="dataSource" ref="dataSource"/>
	</bean>
	

	<!-- Another JDBC template -->
	<bean id="hubSMRDBMSManager1" class="com.hub.platform.smrdbms.impl.SMRdbmsProfileImpl"
		init-method="init" destroy-method="stop">
		<property name="testSQL" value="${testsql1}"></property>
		<property name="jdbcTemplate" ref="jdbcTemplate1"></property>
		<property name="hubServiceManager" ref="hubServiceManager"></property>
		<property name="hubLogging" ref="hubLoggingManager"></property>
		<property name="transactionManager" ref="transactionManager1"></property>
		<property name="defaultTransactionDefinition" ref="defaultTransactionDefinition1"></property>
	</bean>
	
	<bean id="dataSource1" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">
		<property name="driverClassName" value="${driverClassName1}" />
		<property name="url" value="${url1}" />
		<property name="username" value="${username1}" />
		<property name="password" value="${password1}" />
		<property name="minIdle" value="2" />
		<property name="validationQuery" value="select 1" />
	</bean>

   <bean id="transactionManager1" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
		<property name="dataSource" ref="dataSource1"></property>
	</bean>
	
	<bean id="defaultTransactionDefinition1" class="org.springframework.transaction.support.DefaultTransactionDefinition"></bean>
	
	<bean id="jdbcTemplate1"  class="org.springframework.jdbc.core.JdbcTemplate">
		<property name="dataSource" ref="dataSource1"/>
	</bean>
    
	<osgi:reference id="hubLoggingManager"
		interface="com.hub.platform.logging.api.HubLogging" />

	<osgi:reference id="hubServiceManager"
		interface="com.hub.platform.services.api.HubServices" />

    <osgi:service ref="hubSMRDBMSManager" interface="com.hub.platform.smrdbms.api.ISMRdbmsProfile"/>

</beans>
