MAIL ESSENTIALS SENDER NOTIFICATION The following message: TO: [EMAIL PROTECTED] FROM: [EMAIL PROTECTED] DATE: Tue, 03 Jul 2001 15:56:51 -0700 Subject: [JBoss-dev] CVS update: jboss/src/main/org/jboss/jdbc XADataSourceLoaderMBean.java XADataSourceLoader.java has been quarantined by Mail Essentials for the following reason(s): Body contains word(s)/phrase(s) 'ad:' Mail essentials
User: patriot1burke Date: 01/07/03 15:56:51 Modified: src/main/org/jboss/jdbc XADataSourceLoaderMBean.java XADataSourceLoader.java Log: added support for setting transaction isolation and setting the PS cache size. Revision Changes Path 1.7 +43 -38 jboss/src/main/org/jboss/jdbc/XADataSourceLoaderMBean.java Index: XADataSourceLoaderMBean.java =================================================================== RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/jdbc/XADataSourceLoaderMBean.java,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- XADataSourceLoaderMBean.java 2001/07/02 03:29:14 1.6 +++ XADataSourceLoaderMBean.java 2001/07/03 22:56:50 1.7 @@ -13,42 +13,47 @@ public static final String OBJECT_NAME = ":service=XADataSource"; // Public -------------------------------------------------------- - public void setPoolName(String name); - public String getPoolName(); - public void setDataSourceClass(String clazz); - public String getDataSourceClass(); - public void setURL(String url); - public String getURL(); - public void setJDBCUser(String userName); - public String getJDBCUser(); - public void setPassword(String password); - public String getPassword(); - public void setProperties(String properties); - public String getProperties(); - public void setLoggingEnabled(boolean enabled); - public boolean getLoggingEnabled(); - public void setMinSize(int minSize); - public int getMinSize(); - public void setMaxSize(int maxSize); - public int getMaxSize(); - public void setBlocking(boolean blocking); - public boolean getBlocking(); - public void setBlockingTimeout(int blockingTimeout); - public int getBlockingTimeout(); - public void setGCEnabled(boolean gcEnabled); - public boolean getGCEnabled(); - public void setGCInterval(long interval); - public long getGCInterval(); - public void setGCMinIdleTime(long idleMillis); - public long getGCMinIdleTime(); - public void setIdleTimeoutEnabled(boolean enabled); - public boolean getIdleTimeoutEnabled(); - public void setIdleTimeout(long idleMillis); - public long getIdleTimeout(); - public void setMaxIdleTimeoutPercent(float percent); - public float getMaxIdleTimeoutPercent(); - public void setInvalidateOnError(boolean invalidate); - public boolean getInvalidateOnError(); - public void setTimestampUsed(boolean timestamp); - public boolean getTimestampUsed(); + public void setPoolName(String name); + public String getPoolName(); + public void setDataSourceClass(String clazz); + public String getDataSourceClass(); + public void setURL(String url); + public String getURL(); + public void setJDBCUser(String userName); + public String getJDBCUser(); + public void setPassword(String password); + public String getPassword(); + public void setProperties(String properties); + public String getProperties(); + public void setLoggingEnabled(boolean enabled); + public boolean getLoggingEnabled(); + public void setMinSize(int minSize); + public int getMinSize(); + public void setMaxSize(int maxSize); + public int getMaxSize(); + public void setBlocking(boolean blocking); + public boolean getBlocking(); + public void setBlockingTimeout(int blockingTimeout); + public int getBlockingTimeout(); + public void setGCEnabled(boolean gcEnabled); + public boolean getGCEnabled(); + public void setGCInterval(long interval); + public long getGCInterval(); + public void setGCMinIdleTime(long idleMillis); + public long getGCMinIdleTime(); + public void setIdleTimeoutEnabled(boolean enabled); + public boolean getIdleTimeoutEnabled(); + public void setIdleTimeout(long idleMillis); + public long getIdleTimeout(); + public void setMaxIdleTimeoutPercent(float percent); + public float getMaxIdleTimeoutPercent(); + public void setInvalidateOnError(boolean invalidate); + public boolean getInvalidateOnError(); + public void setTimestampUsed(boolean timestamp); + public boolean getTimestampUsed(); + public String getTransactionIsolation(); + public void setTransactionIsolation(String iso); + public int getPSCacheSize(); + public void setPSCacheSize(int size); + } 1.19 +64 -1 jboss/src/main/org/jboss/jdbc/XADataSourceLoader.java Index: XADataSourceLoader.java =================================================================== RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/jdbc/XADataSourceLoader.java,v retrieving revision 1.18 retrieving revision 1.19 diff -u -r1.18 -r1.19 --- XADataSourceLoader.java 2001/07/02 03:29:14 1.18 +++ XADataSourceLoader.java 2001/07/03 22:56:50 1.19 @@ -24,18 +24,21 @@ import org.jboss.logging.LogWriter; import org.jboss.util.ServiceMBeanSupport; import org.jboss.logging.Log; +import java.sql.Connection; /** * Service that loads a JDBC 2 std. extension-compliant connection pool. This * pool generates connections that are registered with the current Transaction * and support two-phase commit. The constructors are called by the JMX engine * based on your MLET tags. - * @version $Revision: 1.18 $ + * @version $Revision: 1.19 $ * @author <a href="mailto:[EMAIL PROTECTED]">Aaron Mulder</a> * @author <a href="mailto:[EMAIL PROTECTED]">danch (Dan Christopherson)</a> + * @author <a href="mailto:[EMAIL PROTECTED]">Bill Burke</a> * * Revision:<br> * 20010701 danch added support for timeout in blocking. + * 20010703 bill added support for transaction isolation and ps cache size. */ public class XADataSourceLoader extends ServiceMBeanSupport @@ -61,6 +64,8 @@ boolean invalidateOnError; boolean timestampUsed; int blockingTimeout; + int transactionIsolation = -1; // use default of driver + int psCacheSize = 10; XAPoolDataSource source; @@ -182,6 +187,52 @@ return blockingTimeout; } + public void setTransactionIsolation(String iso) + { + if (iso.equals("TRANSACTION_NONE")) + { + this.transactionIsolation = Connection.TRANSACTION_NONE; + } + else if (iso.equals("TRANSACTION_READ_COMMITTED")) + { + this.transactionIsolation = Connection.TRANSACTION_READ_COMMITTED; + } + else if (iso.equals("TRANSACTION_READ_UNCOMMITTED")) + { + this.transactionIsolation = Connection.TRANSACTION_READ_UNCOMMITTED; + } + else if (iso.equals("TRANSACTION_REPEATABLE_READ")) + { + this.transactionIsolation = Connection.TRANSACTION_REPEATABLE_READ; + } + else if (iso.equals("TRANSACTION_SERIALIZABLE")) + { + this.transactionIsolation = Connection.TRANSACTION_SERIALIZABLE; + } + else + { + throw new IllegalArgumentException("Setting Isolation level to unknown state: " + iso); + } + } + + public String getTransactionIsolation() { + switch (this.transactionIsolation) + { + case Connection.TRANSACTION_NONE: + return "TRANSACTION_NONE"; + case Connection.TRANSACTION_READ_COMMITTED: + return "TRANSACTION_READ_COMMITTED"; + case Connection.TRANSACTION_READ_UNCOMMITTED: + return "TRANSACTION_READ_UNCOMMITTED"; + case Connection.TRANSACTION_REPEATABLE_READ: + return "TRANSACTION_REPEATABLE_READ"; + case Connection.TRANSACTION_SERIALIZABLE: + return "TRANSACTION_SERIALIZABLE"; + default: + return "DEFAULT"; + } + } + public void setGCEnabled(boolean gcEnabled) { this.gcEnabled = gcEnabled; @@ -262,6 +313,16 @@ return timestampUsed; } + public int getPSCacheSize() + { + return psCacheSize; + } + + public void setPSCacheSize(int size) + { + psCacheSize = size; + } + // ServiceMBeanSupport implementation ---------------------------- public ObjectName getObjectName(MBeanServer server, ObjectName objectName) throws javax.management.MalformedObjectNameException @@ -320,6 +381,8 @@ getSource().setMaxIdleTimeoutPercent(maxIdleTimeoutPercent); getSource().setInvalidateOnError(invalidateOnError); getSource().setTimestampUsed(timestampUsed); + getSource().setTransactionIsolation(transactionIsolation); + getSource().setPSCacheSize(psCacheSize); // Initialize pool Context ctx = null; _______________________________________________ Jboss-development mailing list [EMAIL PROTECTED] http://lists.sourceforge.net/lists/listinfo/jboss-development
