You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by bu...@apache.org on 2003/07/09 14:30:12 UTC
DO NOT REPLY [Bug 21433] New: -
StorageBeanBase should use a resource name when calling StatementUtils functions
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=21433>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=21433
StorageBeanBase should use a resource name when calling StatementUtils functions
Summary: StorageBeanBase should use a resource name when calling
StatementUtils functions
Product: Commons
Version: unspecified
Platform: Other
OS/Version: Other
Status: NEW
Severity: Enhancement
Priority: Other
Component: Sandbox
AssignedTo: commons-dev@jakarta.apache.org
ReportedBy: unicoletti@prometeo.it
Statementutils cleverly provides a way by which one can execute a query against
a different schema by providing a resource name that can be identified by the
ConnectionAdapter.
Problem is StorageBeanBase ignores this etting, thus making thhis feature
impossibile to use without redefining every method of StorageBeanBase. Following
is a patch to StorageBeanBase (fetched from CVS) that adds a getResource() call
to every StatementUtil invocation, so that subclasses can override getResource
and define their own resource name.
This is a major problem for us.
Thanks in advance,
Umberto
Index: StorageBeanBase.java
===================================================================
RCS file:
/home/cvspublic/jakarta-commons-sandbox/scaffold/src/java/org/apache/commons/scaffold/sql/StorageBeanBase.java,v
retrieving revision 1.17
diff -u -r1.17 StorageBeanBase.java
--- StorageBeanBase.java 2 Jan 2003 19:45:26 -0000 1.17
+++ StorageBeanBase.java 9 Jul 2003 12:18:11 -0000
@@ -3,7 +3,6 @@
import java.sql.SQLException;
import java.sql.Timestamp;
-
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
@@ -11,24 +10,18 @@
import java.util.Properties;
import org.apache.commons.beanutils.BeanUtils;
-
import org.apache.commons.scaffold.lang.ParameterException;
import org.apache.commons.scaffold.lang.PopulateException;
import org.apache.commons.scaffold.lang.PropertiesException;
import org.apache.commons.scaffold.lang.ResourceException;
import org.apache.commons.scaffold.lang.Tokens;
-
-import org.apache.commons.scaffold.lucene.SearchUtils;
import org.apache.commons.scaffold.lucene.Engine;
-
-import org.apache.commons.scaffold.sql.StatementUtils;
+import org.apache.commons.scaffold.lucene.SearchUtils;
import org.apache.commons.scaffold.text.ConvertUtils;
-
-import org.apache.commons.scaffold.util.ResourceUtils;
-import org.apache.commons.scaffold.util.StorageBean;
import org.apache.commons.scaffold.util.ProcessBeanBase;
import org.apache.commons.scaffold.util.ProcessResult;
import org.apache.commons.scaffold.util.ProcessResultBase;
+import org.apache.commons.scaffold.util.StorageBean;
// ------------------------------------------------------------------------ 78
@@ -106,6 +99,12 @@
*/
public class StorageBeanBase extends ProcessBeanBase implements StorageBean {
+ /**
+ * Subclass override to specify which resource to use
+ * when retrieving connection.
+ *
+ */
+ protected static String resource=null;
/**
* Convenience method to check for null, empty String.
@@ -482,7 +481,7 @@
try {
int result = StatementUtils.executeUpdate(
- null,lookup(command),getParameters(command));
+ getResource(),lookup(command),getParameters(command));
}
catch (SQLException e) {
@@ -498,7 +497,7 @@
try {
int result = StatementUtils.executeUpdate(
- null,lookupRoot(command));
+ getResource(),lookupRoot(command));
}
catch (SQLException e) {
@@ -518,7 +517,7 @@
Integer result = null;
try {
result = (Integer) StatementUtils.getColumn(
- null,
+ getResource(),
1,
lookup(command)
);
@@ -539,7 +538,7 @@
Integer result = null;
try {
result = (Integer) StatementUtils.getColumn(
- null,
+ getResource(),
1,
lookup(command),
parameter
@@ -563,7 +562,7 @@
try {
- found = StatementUtils.getElement(null,target,
+ found = StatementUtils.getElement(getResource(),target,
lookup(command),key);
}
@@ -586,7 +585,7 @@
try {
- return StatementUtils.getCollection(null,
+ return StatementUtils.getCollection(getResource(),
target,lookup(command));
}
@@ -608,7 +607,7 @@
try {
- return StatementUtils.getCollection(null,
+ return StatementUtils.getCollection(getResource(),
target,lookup(command),parameter);
}
@@ -629,7 +628,7 @@
try {
- return StatementUtils.getCollection(null,
+ return StatementUtils.getCollection(getResource(),
target,lookup(command),parameter);
}
@@ -646,7 +645,7 @@
try {
- return StatementUtils.getCollection(null,
+ return StatementUtils.getCollection(getResource(),
target,lookup(command),parameters);
}
@@ -794,7 +793,7 @@
try {
result = StatementUtils.executeUpdate(
- null,lookup(command),getParameters(command));
+ getResource(),lookup(command),getParameters(command));
}
catch (SQLException e) {
@@ -831,7 +830,7 @@
boolean found = false;
try {
- found = StatementUtils.getElement(null,this,
+ found = StatementUtils.getElement(getResource(),this,
lookup(command),getParameters(command));
}
@@ -878,7 +877,7 @@
try {
- result = StatementUtils.getCollection(null,
+ result = StatementUtils.getCollection(getResource(),
this,lookup(command),getParameters(command));
}
@@ -940,7 +939,7 @@
try {
result = StatementUtils.createKey(
- null,
+ getResource(),
1,
lookupRoot(KEYS_NEXT),
lookup(keyName),
@@ -993,7 +992,7 @@
try {
result = StatementUtils.executeUpdate(
- null,command,getParameters(token));
+ getResource(),command,getParameters(token));
}
catch (SQLException e) {
@@ -1091,7 +1090,7 @@
try {
// Mark as deleted
- result = StatementUtils.executeUpdate(null,
+ result = StatementUtils.executeUpdate(getResource(),
lookup(DELETE),getStorageKey());
}
@@ -1148,7 +1147,7 @@
try {
// Mark as recycled
- result = StatementUtils.executeUpdate(null,
+ result = StatementUtils.executeUpdate(getResource(),
lookup(RECYCLE),getStorageKey());
}
@@ -1206,7 +1205,7 @@
try {
- result = StatementUtils.executeUpdate(null,
+ result = StatementUtils.executeUpdate(getResource(),
lookup(RESTORE),getStorageKey());
}
@@ -1252,6 +1251,20 @@
return result;
} // end restore
+
+ /**
+ * @return
+ */
+ public static String getResource() {
+ return resource;
+ }
+
+ /**
+ * @param string
+ */
+ public static void setResource(String string) {
+ resource = string;
+ }
} // end StorageBeanBase
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org