You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@beehive.apache.org by "Drew Varner (JIRA)" <ji...@apache.org> on 2006/12/12 04:33:21 UTC
[jira] Updated: (BEEHIVE-1019) Allow multiple JDBC Controls to
share the same database connection
[ http://issues.apache.org/jira/browse/BEEHIVE-1019?page=all ]
Drew Varner updated BEEHIVE-1019:
---------------------------------
Attachment: PATCH.txt
Patch Notes:
This patch adds a setConnection(Connection conn) method to JDBC Controls.
This method is useful for:
1) Easy unit testing setup (no need to create JNDI context just to test)..
2) Putting multiple JDBC Controls in a single database transaction
3) Integrating JDBC Controls with third party Connection factories
4) Sharing connections between JDBCControls, DAOs and plain JDBC calls
This patch changes the way JDBC Controls behave:
1) They no longer get a Connection at the onAcquire() lifecycle method
2) Connections are obtained lazily at invoke()
3) Connections are not closed if they were set by setConnection()
4) Controls can function without declaring a connection source in annotations
The following files are added/modified in this patch:
M system-controls/test/ant/junitCore.xml
A system-controls/test/jdbc/controls/org/apache/beehive/controls/system/jdbc/test/setconnection
A system-controls/test/jdbc/controls/org/apache/beehive/controls/system/jdbc/test/setconnection/NoConnectionAnnotationCtrl.jcx
A system-controls/test/jdbc/junitTests/org/apache/beehive/controls/system/jdbc/units/setconnection
A system-controls/test/jdbc/junitTests/org/apache/beehive/controls/system/jdbc/units/setconnection/DBSetConnectionTest.java
A system-controls/test/jdbc/junitTests/org/apache/beehive/controls/system/jdbc/units/setconnection/JdbcTypesTest.java
A system-controls/test/jdbc/junitTests/org/apache/beehive/controls/system/jdbc/units/setconnection/SetConnectionTest.java
A system-controls/test/jdbc/junitTests/org/apache/beehive/controls/system/jdbc/units/setconnection/TxResultsTest.java
M system-controls/src/jdbc/org/apache/beehive/controls/system/jdbc/JdbcControl.java
M system-controls/src/jdbc/org/apache/beehive/controls/system/jdbc/JdbcControlImpl.java
What you might not like about this patch:
1) I removed .jcx references in the JDBC Control Javadoc, I don't think they have to be called .jcx.
2) The following test suites extend other test suites. I thought it was an easy way to test functionality. I just call setConnection() in the setUp() method
system-controls/test/jdbc/junitTests/org/apache/beehive/controls/system/jdbc/units/setconnection/DBSetConnectionTest.java
system-controls/test/jdbc/junitTests/org/apache/beehive/controls/system/jdbc/units/setconnection/JdbcTypesTest.java
system-controls/test/jdbc/junitTests/org/apache/beehive/controls/system/jdbc/units/setconnection/TxResultsTest.java
The following Ant target passed:
ant clean deploy systemcontrols.drt
On OS X, Java 1.5.0_06
> Allow multiple JDBC Controls to share the same database connection
> ------------------------------------------------------------------
>
> Key: BEEHIVE-1019
> URL: http://issues.apache.org/jira/browse/BEEHIVE-1019
> Project: Beehive
> Issue Type: Improvement
> Components: System Controls
> Affects Versions: 1.0
> Reporter: Chad Schoettger
> Attachments: PATCH.txt
>
>
> Allow multiple JDBC controls to share a single database connection. One benefit of this improvment would be that multiple jdbc controls could participate in a transaction.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira