You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by jb...@apache.org on 2010/02/05 20:05:56 UTC
svn commit: r907056 - in /incubator/aries/trunk/ariestrader-sample: ./
assemblies/ariestrader-all-equinox/src/main/resources/configuration/
assemblies/ariestrader-jdbc-equinox/
assemblies/ariestrader-jdbc-equinox/src/main/resources/configuration/
modul...
Author: jbohn
Date: Fri Feb 5 19:05:55 2010
New Revision: 907056
URL: http://svn.apache.org/viewvc?rev=907056&view=rev
Log:
remove injection of datasource, add new derby-ds bundle for equinox assemblies to define datasource, lookup datasource as an osgiservice
Added:
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/ (with props)
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/pom.xml (with props)
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/java/
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/java/org/
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/java/org/apache/
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/java/org/apache/aries/
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/java/org/apache/aries/ariestrader/
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/java/org/apache/aries/ariestrader/datasource/
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/java/org/apache/aries/ariestrader/datasource/derby/
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/java/org/apache/aries/ariestrader/datasource/derby/DerbyActivator.java (with props)
Modified:
incubator/aries/trunk/ariestrader-sample/assemblies/ariestrader-all-equinox/src/main/resources/configuration/config.ini
incubator/aries/trunk/ariestrader-sample/assemblies/ariestrader-jdbc-equinox/pom.xml
incubator/aries/trunk/ariestrader-sample/assemblies/ariestrader-jdbc-equinox/src/main/resources/configuration/config.ini
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-api/pom.xml
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-core/pom.xml
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-core/src/main/java/org/apache/aries/samples/ariestrader/core/TradeDBManagerImpl.java
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-core/src/main/resources/OSGI-INF/blueprint/blueprint.xml
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-persist-jdbc/pom.xml
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-persist-jdbc/src/main/java/org/apache/aries/samples/ariestrader/persist/jdbc/TradeJdbc.java
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-persist-jdbc/src/main/resources/OSGI-INF/blueprint/blueprint.xml
incubator/aries/trunk/ariestrader-sample/modules/ariestrader-web/src/main/java/org/apache/aries/samples/ariestrader/web/prims/PingServlet2JNDI.java
incubator/aries/trunk/ariestrader-sample/modules/pom.xml
incubator/aries/trunk/ariestrader-sample/pom.xml
Modified: incubator/aries/trunk/ariestrader-sample/assemblies/ariestrader-all-equinox/src/main/resources/configuration/config.ini
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/ariestrader-sample/assemblies/ariestrader-all-equinox/src/main/resources/configuration/config.ini?rev=907056&r1=907055&r2=907056&view=diff
==============================================================================
--- incubator/aries/trunk/ariestrader-sample/assemblies/ariestrader-all-equinox/src/main/resources/configuration/config.ini (original)
+++ incubator/aries/trunk/ariestrader-sample/assemblies/ariestrader-all-equinox/src/main/resources/configuration/config.ini Fri Feb 5 19:05:55 2010
@@ -1,3 +1,3 @@
-osgi.bundles=cm-3.2.0-v20070116.jar@start,services-3.1.200-v20070605.jar@start,pax-logging-api-1.4.jar@start,pax-logging-service-1.4.jar@start,derby-10.5.3.0_1.jar@start,pax-web-jetty-bundle-0.7.2.jar@start,pax-web-extender-war-0.7.2.jar@start,pax-web-jsp-0.7.2.jar@start,org.apache.aries.jndi-1.0.0-incubating-SNAPSHOT.jar@start,org.apache.aries.util-1.0.0-incubating-SNAPSHOT.jar@start,org.apache.aries.blueprint-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-util-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-entities-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-api-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-core-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-persist-jdbc-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-persist-jpa-am-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-web-1.0.0-incubating-SNAPSHOT.jar@start
+osgi.bundles=cm-3.2.0-v20070116.jar@start,services-3.1.200-v20070605.jar@start,pax-logging-api-1.4.jar@start,pax-logging-service-1.4.jar@start,derby-10.5.3.0_1.jar@start,pax-web-jetty-bundle-0.7.2.jar@start,pax-web-extender-war-0.7.2.jar@start,pax-web-jsp-0.7.2.jar@start,org.apache.aries.jndi-1.0.0-incubating-SNAPSHOT.jar@start,org.apache.aries.util-1.0.0-incubating-SNAPSHOT.jar@start,org.apache.aries.blueprint-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-derby-ds-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-util-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-entities-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-api-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-core-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-persist-jdbc-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-persist-jpa-am-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-web-1.0.0-incubating-SNAPSHOT.jar@start
eclipse.ignoreApp=true
org.ops4j.pax.logging.DefaultServiceLog.level=DEBUG
\ No newline at end of file
Modified: incubator/aries/trunk/ariestrader-sample/assemblies/ariestrader-jdbc-equinox/pom.xml
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/ariestrader-sample/assemblies/ariestrader-jdbc-equinox/pom.xml?rev=907056&r1=907055&r2=907056&view=diff
==============================================================================
--- incubator/aries/trunk/ariestrader-sample/assemblies/ariestrader-jdbc-equinox/pom.xml (original)
+++ incubator/aries/trunk/ariestrader-sample/assemblies/ariestrader-jdbc-equinox/pom.xml Fri Feb 5 19:05:55 2010
@@ -112,6 +112,11 @@
<dependency>
<groupId>org.apache.aries.ariestrader.modules</groupId>
+ <artifactId>ariestrader-derby-ds</artifactId>
+ <version>${pom.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.aries.ariestrader.modules</groupId>
<artifactId>ariestrader-util</artifactId>
<version>${pom.version}</version>
</dependency>
Modified: incubator/aries/trunk/ariestrader-sample/assemblies/ariestrader-jdbc-equinox/src/main/resources/configuration/config.ini
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/ariestrader-sample/assemblies/ariestrader-jdbc-equinox/src/main/resources/configuration/config.ini?rev=907056&r1=907055&r2=907056&view=diff
==============================================================================
--- incubator/aries/trunk/ariestrader-sample/assemblies/ariestrader-jdbc-equinox/src/main/resources/configuration/config.ini (original)
+++ incubator/aries/trunk/ariestrader-sample/assemblies/ariestrader-jdbc-equinox/src/main/resources/configuration/config.ini Fri Feb 5 19:05:55 2010
@@ -1,3 +1,3 @@
-osgi.bundles=cm-3.2.0-v20070116.jar@start,services-3.1.200-v20070605.jar@start,pax-logging-api-1.4.jar@start,pax-logging-service-1.4.jar@start,derby-10.5.3.0_1.jar@start,pax-web-jetty-bundle-0.7.2.jar@start,pax-web-extender-war-0.7.2.jar@start,pax-web-jsp-0.7.2.jar@start,org.apache.aries.jndi-1.0.0-incubating-SNAPSHOT.jar@start,org.apache.aries.util-1.0.0-incubating-SNAPSHOT.jar@start,org.apache.aries.blueprint-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-util-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-beans-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-api-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-core-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-persist-jdbc-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-web-1.0.0-incubating-SNAPSHOT.jar@start
+osgi.bundles=cm-3.2.0-v20070116.jar@start,services-3.1.200-v20070605.jar@start,pax-logging-api-1.4.jar@start,pax-logging-service-1.4.jar@start,derby-10.5.3.0_1.jar@start,pax-web-jetty-bundle-0.7.2.jar@start,pax-web-extender-war-0.7.2.jar@start,pax-web-jsp-0.7.2.jar@start,org.apache.aries.jndi-1.0.0-incubating-SNAPSHOT.jar@start,org.apache.aries.util-1.0.0-incubating-SNAPSHOT.jar@start,org.apache.aries.blueprint-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-derby-ds-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-util-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-beans-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-api-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-core-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-persist-jdbc-1.0.0-incubating-SNAPSHOT.jar@start,ariestrader-web-1.0.0-incubating-SNAPSHOT.jar@start
eclipse.ignoreApp=true
org.ops4j.pax.logging.DefaultServiceLog.level=DEBUG
\ No newline at end of file
Modified: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-api/pom.xml
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/ariestrader-sample/modules/ariestrader-api/pom.xml?rev=907056&r1=907055&r2=907056&view=diff
==============================================================================
--- incubator/aries/trunk/ariestrader-sample/modules/ariestrader-api/pom.xml (original)
+++ incubator/aries/trunk/ariestrader-sample/modules/ariestrader-api/pom.xml Fri Feb 5 19:05:55 2010
@@ -40,12 +40,6 @@
</dependencies>
<build>
- <resources>
- <resource>
- <directory>${basedir}/src/main/resources</directory>
- <filtering>true</filtering>
- </resource>
- </resources>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
Modified: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-core/pom.xml
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/ariestrader-sample/modules/ariestrader-core/pom.xml?rev=907056&r1=907055&r2=907056&view=diff
==============================================================================
--- incubator/aries/trunk/ariestrader-sample/modules/ariestrader-core/pom.xml (original)
+++ incubator/aries/trunk/ariestrader-sample/modules/ariestrader-core/pom.xml Fri Feb 5 19:05:55 2010
@@ -43,11 +43,6 @@
<version>${pom.version}</version>
<scope>provided</scope>
</dependency>
- <dependency>
- <groupId>org.apache.derby</groupId>
- <artifactId>derby</artifactId>
- <scope>provided</scope>
- </dependency>
</dependencies>
<build>
@@ -73,8 +68,7 @@
org.apache.aries.samples.ariestrader.persistence.api,
org.apache.aries.samples.ariestrader.util,
javax.naming,
- javax.sql,
- org.apache.derby.jdbc
+ javax.sql
</Import-Package>
<Private-Package>
org.apache.aries.samples.ariestrader.core
Modified: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-core/src/main/java/org/apache/aries/samples/ariestrader/core/TradeDBManagerImpl.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/ariestrader-sample/modules/ariestrader-core/src/main/java/org/apache/aries/samples/ariestrader/core/TradeDBManagerImpl.java?rev=907056&r1=907055&r2=907056&view=diff
==============================================================================
--- incubator/aries/trunk/ariestrader-sample/modules/ariestrader-core/src/main/java/org/apache/aries/samples/ariestrader/core/TradeDBManagerImpl.java (original)
+++ incubator/aries/trunk/ariestrader-sample/modules/ariestrader-core/src/main/java/org/apache/aries/samples/ariestrader/core/TradeDBManagerImpl.java Fri Feb 5 19:05:55 2010
@@ -23,6 +23,7 @@
import org.apache.aries.samples.ariestrader.persistence.api.RunStatsDataBean;
import org.apache.aries.samples.ariestrader.util.Log;
import org.apache.aries.samples.ariestrader.util.MDBStats;
+import org.apache.aries.samples.ariestrader.util.ServiceUtilities;
import org.apache.aries.samples.ariestrader.util.TradeConfig;
import org.apache.aries.samples.ariestrader.api.TradeDBManager;
@@ -385,8 +386,8 @@
*/
private void lookupDataSource() throws Exception {
if (dataSource == null) {
- context = new InitialContext();
- dataSource = (DataSource) context.lookup(dsName);
+// dataSource = (DataSource) ServiceUtilities.getOSGIService(DataSource.class.getName(),"(osgi.jndi.serviceName=jdbc/TradeDataSource)");
+ dataSource = (DataSource) ServiceUtilities.getOSGIService(DataSource.class.getName(),TradeConfig.OSGI_DS_NAME_FILTER);
}
}
Modified: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-core/src/main/resources/OSGI-INF/blueprint/blueprint.xml
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/ariestrader-sample/modules/ariestrader-core/src/main/resources/OSGI-INF/blueprint/blueprint.xml?rev=907056&r1=907055&r2=907056&view=diff
==============================================================================
--- incubator/aries/trunk/ariestrader-sample/modules/ariestrader-core/src/main/resources/OSGI-INF/blueprint/blueprint.xml (original)
+++ incubator/aries/trunk/ariestrader-sample/modules/ariestrader-core/src/main/resources/OSGI-INF/blueprint/blueprint.xml Fri Feb 5 19:05:55 2010
@@ -8,13 +8,8 @@
</bean>
<service id="TradeServicesManager" ref="tradeServicesManagerBean" interface="org.apache.aries.samples.ariestrader.api.TradeServicesManager"/>
-
- <bean id="datasource" class="org.apache.derby.jdbc.EmbeddedConnectionPoolDataSource">
- <property name="databaseName" value="tradeDB"/>
- </bean>
<bean id="tradeDBManagerBean" class="org.apache.aries.samples.ariestrader.core.TradeDBManagerImpl" init-method="init">
- <property name="dataSource" ref="datasource" />
</bean>
<service id="TradeDBManager" ref="tradeDBManagerBean" interface="org.apache.aries.samples.ariestrader.api.TradeDBManager">
Propchange: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Fri Feb 5 19:05:55 2010
@@ -0,0 +1,3 @@
+.classpath
+.project
+.settings
Added: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/pom.xml
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/pom.xml?rev=907056&view=auto
==============================================================================
--- incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/pom.xml (added)
+++ incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/pom.xml Fri Feb 5 19:05:55 2010
@@ -0,0 +1,76 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.apache.aries.ariestrader</groupId>
+ <artifactId>modules</artifactId>
+ <version>1.0.0-incubating-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.aries.ariestrader.modules</groupId>
+ <artifactId>ariestrader-derby-ds</artifactId>
+ <packaging>bundle</packaging>
+ <name>AriesTrader :: Modules - Derby DataSource</name>
+ <description>AriesTrader Derby DataSource</description>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.eclipse</groupId>
+ <artifactId>osgi</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.derby</groupId>
+ <artifactId>derby</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <configuration>
+ <instructions>
+ <Bundle-SymbolicName>${pom.groupId}.${pom.artifactId}</Bundle-SymbolicName>
+ <Bundle-Version>${pom.version}</Bundle-Version>
+ <Bundle-Activator>org.apache.aries.ariestrader.datasource.derby.DerbyActivator</Bundle-Activator>
+ <Export-Service>javax.sql.DataSource</Export-Service>
+
+ <Export-Package>
+ <!--org.apache.aries.samples.ariestrader.datasource.derby;version="${pom.version}"-->
+ </Export-Package>
+ <Import-Package>
+ <!--org.apache.aries.samples.ariestrader.datasource.derby,-->
+ org.osgi.framework,
+ javax.sql,
+ org.apache.derby.jdbc
+ </Import-Package>
+ <Private-Package>
+ org.apache.aries.ariestrader.datasource.derby
+ <!--org.apache.aries.samples.ariestrader.datasource.derby"-->
+ </Private-Package>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Propchange: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/pom.xml
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/pom.xml
------------------------------------------------------------------------------
svn:mime-type = text/xml
Added: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/java/org/apache/aries/ariestrader/datasource/derby/DerbyActivator.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/java/org/apache/aries/ariestrader/datasource/derby/DerbyActivator.java?rev=907056&view=auto
==============================================================================
--- incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/java/org/apache/aries/ariestrader/datasource/derby/DerbyActivator.java (added)
+++ incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/java/org/apache/aries/ariestrader/datasource/derby/DerbyActivator.java Fri Feb 5 19:05:55 2010
@@ -0,0 +1,140 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.aries.ariestrader.datasource.derby;
+
+import java.sql.Driver;
+import java.sql.DriverManager;
+import java.sql.SQLException;
+import java.util.Properties;
+
+import javax.sql.ConnectionPoolDataSource;
+import javax.sql.DataSource;
+import javax.sql.XADataSource;
+
+import org.apache.derby.jdbc.EmbeddedConnectionPoolDataSource;
+import org.apache.derby.jdbc.EmbeddedDataSource;
+import org.apache.derby.jdbc.EmbeddedDriver;
+import org.apache.derby.jdbc.EmbeddedXADataSource;
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+public class DerbyActivator implements BundleActivator {
+
+ /**
+ * Common property keys that DataSource clients should supply values for.
+ */
+ public static final String JDBC_URL = "url";
+ public static final String JDBC_USER = "user";
+ public static final String JDBC_PASSWORD = "password";
+ public static final String JDBC_DATABASE_NAME = "databaseName";
+ public static final String JDBC_DATASOURCE_NAME = "dataSourceName";
+ public static final String JDBC_DESCRIPTION = "description";
+ public static final String JDBC_NETWORK_PROTOCOL = "networkProtocol";
+ public static final String JDBC_PORT_NUMBER = "portNumber";
+ public static final String JDBC_ROLE_NAME = "roleName";
+ public static final String JDBC_SERVER_NAME = "serverName";
+
+ /**
+ * XA specific. Additional property keys that ConnectionPoolDataSource and
+ * XADataSource clients should supply values for
+ */
+ public static final String JDBC_INITIAL_POOL_SIZE = "initialPoolSize";
+ public static final String JDBC_MAX_IDLE_TIME = "maxIdleTime";
+ public static final String JDBC_MAX_POOL_SIZE = "maxPoolSize";
+ public static final String JDBC_MAX_STATEMENTS = "maxStatements";
+ public static final String JDBC_MIN_POOL_SIZE = "minPoolSize";
+ public static final String JDBC_PROPERTY_CYCLE = "propertyCycle";
+
+ /**
+ * Vendor-specific properties meant to further describe the driver. Clients
+ * may filter or test this property to determine if the driver is suitable,
+ * or the desired one.
+ */
+ public static final String JDBC_DRIVER_CLASS = "osgi.jdbc.driver.class";
+ public static final String JDBC_DRIVER_NAME = "osgi.jdbc.driver.name";
+ public static final String JDBC_DRIVER_VERSION = "osgi.jdbc.driver.version";
+ public static final String JDBC_CREATE_DATABASE = "createDatabase";
+
+ /**
+ * OSGi-specific properties
+ */
+ public static final String OSGI_JNDI_SERVICE_NAME = "osgi.jndi.serviceName";
+
+ public ConnectionPoolDataSource createConnectionPoolDataSource( Properties props) {
+ EmbeddedConnectionPoolDataSource embeddedCPDataSource = new EmbeddedConnectionPoolDataSource();
+ embeddedCPDataSource.setDataSourceName(props.getProperty(JDBC_DATASOURCE_NAME));
+ embeddedCPDataSource.setDatabaseName(props.getProperty(JDBC_DATABASE_NAME));
+ embeddedCPDataSource.setUser(props.getProperty(JDBC_USER));
+ embeddedCPDataSource.setPassword(props.getProperty(JDBC_PASSWORD));
+ embeddedCPDataSource.setCreateDatabase(props.getProperty(JDBC_CREATE_DATABASE));
+ return embeddedCPDataSource;
+ }
+
+ public DataSource createDataSource(Properties props) {
+ EmbeddedDataSource embeddedDataSource = new EmbeddedDataSource();
+ embeddedDataSource.setDataSourceName(props.getProperty(JDBC_DATASOURCE_NAME));
+ embeddedDataSource.setDatabaseName(props.getProperty(JDBC_DATABASE_NAME));
+ embeddedDataSource.setUser(props.getProperty(JDBC_USER));
+ embeddedDataSource.setPassword(props.getProperty(JDBC_PASSWORD));
+ return embeddedDataSource;
+ }
+
+ public XADataSource createXADataSource(Properties props) {
+ EmbeddedXADataSource embeddedXADataSource = new EmbeddedXADataSource();
+ embeddedXADataSource.setDataSourceName(props.getProperty(JDBC_DATASOURCE_NAME));
+ embeddedXADataSource.setDatabaseName(props.getProperty(JDBC_DATABASE_NAME));
+ embeddedXADataSource.setUser(props.getProperty(JDBC_USER));
+ embeddedXADataSource.setPassword(props.getProperty(JDBC_PASSWORD));
+ return embeddedXADataSource;
+ }
+
+ public Driver getDriver(Properties props) {
+ EmbeddedDriver embeddedDriver = new EmbeddedDriver();
+ return embeddedDriver;
+ }
+
+ public void start(BundleContext context) throws Exception {
+ new EmbeddedDriver();
+
+ // Set the needed properties for the database connection
+ Properties db_props = new Properties();
+ db_props.put(JDBC_DATASOURCE_NAME, "TradeDataSource");
+ db_props.put(JDBC_DATABASE_NAME, "tradedb");
+ db_props.put(JDBC_USER, "");
+ db_props.put(JDBC_PASSWORD, "");
+ db_props.put(JDBC_CREATE_DATABASE, "create");
+
+ ConnectionPoolDataSource dataSource = createConnectionPoolDataSource(db_props);
+
+ Properties service_props = new Properties();
+ service_props.put(OSGI_JNDI_SERVICE_NAME, "jdbc/TradeDataSource");
+
+ context.registerService(DataSource.class.getName(), dataSource, service_props);
+ }
+
+ public void stop(BundleContext context) throws Exception {
+
+ try {
+ DriverManager.getConnection("jdbc:derby:;shutdown=true");
+ }
+ catch (SQLException sqlexception) {
+ }
+ }
+
+}
Propchange: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/java/org/apache/aries/ariestrader/datasource/derby/DerbyActivator.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/java/org/apache/aries/ariestrader/datasource/derby/DerbyActivator.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-derby-ds/src/main/java/org/apache/aries/ariestrader/datasource/derby/DerbyActivator.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-persist-jdbc/pom.xml
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/ariestrader-sample/modules/ariestrader-persist-jdbc/pom.xml?rev=907056&r1=907055&r2=907056&view=diff
==============================================================================
--- incubator/aries/trunk/ariestrader-sample/modules/ariestrader-persist-jdbc/pom.xml (original)
+++ incubator/aries/trunk/ariestrader-sample/modules/ariestrader-persist-jdbc/pom.xml Fri Feb 5 19:05:55 2010
@@ -49,11 +49,6 @@
<version>${pom.version}</version>
<scope>provided</scope>
</dependency>
- <dependency>
- <groupId>org.apache.derby</groupId>
- <artifactId>derby</artifactId>
- <scope>provided</scope>
- </dependency>
</dependencies>
<build>
@@ -80,8 +75,7 @@
org.apache.aries.samples.ariestrader.persistence.api,
org.apache.aries.samples.ariestrader.util,
javax.naming,
- javax.sql,
- org.apache.derby.jdbc
+ javax.sql
</Import-Package>
<Private-Package>
org.apache.aries.samples.ariestrader.persist.jdbc
Modified: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-persist-jdbc/src/main/java/org/apache/aries/samples/ariestrader/persist/jdbc/TradeJdbc.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/ariestrader-sample/modules/ariestrader-persist-jdbc/src/main/java/org/apache/aries/samples/ariestrader/persist/jdbc/TradeJdbc.java?rev=907056&r1=907055&r2=907056&view=diff
==============================================================================
--- incubator/aries/trunk/ariestrader-sample/modules/ariestrader-persist-jdbc/src/main/java/org/apache/aries/samples/ariestrader/persist/jdbc/TradeJdbc.java (original)
+++ incubator/aries/trunk/ariestrader-sample/modules/ariestrader-persist-jdbc/src/main/java/org/apache/aries/samples/ariestrader/persist/jdbc/TradeJdbc.java Fri Feb 5 19:05:55 2010
@@ -37,6 +37,7 @@
import org.apache.aries.samples.ariestrader.persistence.api.QuoteDataBean;
import org.apache.aries.samples.ariestrader.util.FinancialUtils;
import org.apache.aries.samples.ariestrader.util.Log;
+import org.apache.aries.samples.ariestrader.util.ServiceUtilities;
import org.apache.aries.samples.ariestrader.util.TradeConfig;
import java.rmi.RemoteException;
@@ -1481,8 +1482,8 @@
*/
private void lookupDataSource() throws Exception {
if (dataSource == null) {
- context = new InitialContext();
- dataSource = (DataSource) context.lookup(dsName);
+// dataSource = (DataSource) ServiceUtilities.getOSGIService(DataSource.class.getName(),"(osgi.jndi.serviceName=jdbc/TradeDataSource)");
+ dataSource = (DataSource) ServiceUtilities.getOSGIService(DataSource.class.getName(),TradeConfig.OSGI_DS_NAME_FILTER);
}
}
Modified: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-persist-jdbc/src/main/resources/OSGI-INF/blueprint/blueprint.xml
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/ariestrader-sample/modules/ariestrader-persist-jdbc/src/main/resources/OSGI-INF/blueprint/blueprint.xml?rev=907056&r1=907055&r2=907056&view=diff
==============================================================================
--- incubator/aries/trunk/ariestrader-sample/modules/ariestrader-persist-jdbc/src/main/resources/OSGI-INF/blueprint/blueprint.xml (original)
+++ incubator/aries/trunk/ariestrader-sample/modules/ariestrader-persist-jdbc/src/main/resources/OSGI-INF/blueprint/blueprint.xml Fri Feb 5 19:05:55 2010
@@ -3,13 +3,8 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0">
- <bean id="datasource" class="org.apache.derby.jdbc.EmbeddedConnectionPoolDataSource">
- <property name="databaseName" value="tradeDB"/>
- </bean>
-
<bean id="tradeServicesBeanJDBC" class="org.apache.aries.samples.ariestrader.persist.jdbc.TradeJdbc" init-method="init">
<!--<property name="inSession" value="true"/>-->
- <property name="dataSource" ref="datasource" />
</bean>
<service id="tradeServicesJDBC" ref="tradeServicesBeanJDBC" interface="org.apache.aries.samples.ariestrader.api.TradeServices">
Modified: incubator/aries/trunk/ariestrader-sample/modules/ariestrader-web/src/main/java/org/apache/aries/samples/ariestrader/web/prims/PingServlet2JNDI.java
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/ariestrader-sample/modules/ariestrader-web/src/main/java/org/apache/aries/samples/ariestrader/web/prims/PingServlet2JNDI.java?rev=907056&r1=907055&r2=907056&view=diff
==============================================================================
--- incubator/aries/trunk/ariestrader-sample/modules/ariestrader-web/src/main/java/org/apache/aries/samples/ariestrader/web/prims/PingServlet2JNDI.java (original)
+++ incubator/aries/trunk/ariestrader-sample/modules/ariestrader-web/src/main/java/org/apache/aries/samples/ariestrader/web/prims/PingServlet2JNDI.java Fri Feb 5 19:05:55 2010
@@ -67,8 +67,7 @@
int iter = TradeConfig.getPrimIterations();
for (int ii = 0; ii < iter; ii++) {
- InitialContext context = new InitialContext();
- DataSource datasource = (DataSource) context.lookup(TradeConfig.DS_NAME);
+ DataSource dataSource = (DataSource) ServiceUtilities.getOSGIService(DataSource.class.getName(),TradeConfig.OSGI_DS_NAME_FILTER);
}
output.append(
Modified: incubator/aries/trunk/ariestrader-sample/modules/pom.xml
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/ariestrader-sample/modules/pom.xml?rev=907056&r1=907055&r2=907056&view=diff
==============================================================================
--- incubator/aries/trunk/ariestrader-sample/modules/pom.xml (original)
+++ incubator/aries/trunk/ariestrader-sample/modules/pom.xml Fri Feb 5 19:05:55 2010
@@ -37,6 +37,7 @@
<module>ariestrader-web</module>
<module>ariestrader-beans</module>
<module>ariestrader-entities</module>
+ <module>ariestrader-derby-ds</module>
<module>ariestrader-persist-jdbc</module>
<module>ariestrader-persist-jpa-am</module>
</modules>
Modified: incubator/aries/trunk/ariestrader-sample/pom.xml
URL: http://svn.apache.org/viewvc/incubator/aries/trunk/ariestrader-sample/pom.xml?rev=907056&r1=907055&r2=907056&view=diff
==============================================================================
--- incubator/aries/trunk/ariestrader-sample/pom.xml (original)
+++ incubator/aries/trunk/ariestrader-sample/pom.xml Fri Feb 5 19:05:55 2010
@@ -26,6 +26,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.aries.ariestrader</groupId>
<artifactId>ariestrader-parent</artifactId>
+ <version>1.0.0-incubating-SNAPSHOT</version>
<name>AriesTrader :: Performance Benchmark Sample</name>
<packaging>pom</packaging>
<description>Java EE 5.0 Performance Benchmark Sample Application</description>
@@ -98,6 +99,11 @@
<artifactId>commons-collections</artifactId>
<version>3.2.1</version>
</dependency>
+ <dependency>
+ <groupId>org.eclipse</groupId>
+ <artifactId>osgi</artifactId>
+ <version>3.5.0.v20090520</version>
+ </dependency>
</dependencies>
</dependencyManagement>