[jboss-cvs] JBossAS SVN: r58215 - branches/JBoss_4_0_3_SP1_JBAS_3511/server/src/main/org/jboss/ejb/plugins/jms

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Nov 8 17:27:29 EST 2006


Author: weston.price at jboss.com
Date: 2006-11-08 17:27:28 -0500 (Wed, 08 Nov 2006)
New Revision: 58215

Modified:
   branches/JBoss_4_0_3_SP1_JBAS_3511/server/src/main/org/jboss/ejb/plugins/jms/JMSContainerInvoker.java
   branches/JBoss_4_0_3_SP1_JBAS_3511/server/src/main/org/jboss/ejb/plugins/jms/JMSContainerInvokerMBean.java
Log:
[JBAS-3511] More ASF improvements.

Modified: branches/JBoss_4_0_3_SP1_JBAS_3511/server/src/main/org/jboss/ejb/plugins/jms/JMSContainerInvoker.java
===================================================================
--- branches/JBoss_4_0_3_SP1_JBAS_3511/server/src/main/org/jboss/ejb/plugins/jms/JMSContainerInvoker.java	2006-11-08 22:27:04 UTC (rev 58214)
+++ branches/JBoss_4_0_3_SP1_JBAS_3511/server/src/main/org/jboss/ejb/plugins/jms/JMSContainerInvoker.java	2006-11-08 22:27:28 UTC (rev 58215)
@@ -164,9 +164,12 @@
    
    protected boolean destroySessionOnError = false;
    
-   //Default
-   protected String exceptionSorterClassName = "org.jboss.jms.asf.AllNonFatalJMSExceptionSorter";
+   protected String supportCodeUrl = "NoUrl";
    
+   protected boolean validateLinkedException = false;
+   
+   protected String exceptionSorterClassName = "NoSorter";
+   
    /**
     * Time to wait before retrying to reconnect a lost connection.
     */
@@ -454,6 +457,20 @@
       return total;
    }
    
+   public int getSessionDestroyedCount()
+   {
+      int destroyed = 0;
+      
+      if(pool != null)
+      {
+         StdServerSessionPool sp = (StdServerSessionPool)pool;
+         destroyed = sp.getSessionDestroyedCount();
+         
+      }      
+      return destroyed;
+   }
+      
+   
    public boolean getDestroySessionOnError()
    {
       return destroySessionOnError;
@@ -468,7 +485,7 @@
    
    public String getExceptionSorterClassName()
    {
-      return exceptionSorterClassName;
+      return this.exceptionSorterClassName;
       
    }
    
@@ -477,6 +494,26 @@
       this.exceptionSorterClassName = name;
    }
    
+   public void setSupportCodeUrl(String supportCodeUrl)
+   {
+      this.supportCodeUrl = supportCodeUrl;
+   }
+   
+   public String getSupportCodeUrl()
+   {
+      return this.supportCodeUrl;
+      
+   }
+
+   public void setValidateLinkedException(boolean vle)
+   {
+      this.validateLinkedException = vle;
+   }
+   
+   public boolean getValidateLinkedException()
+   {
+      return this.validateLinkedException;
+   }
    /**
     * @jmx:managed-attribute
     */
@@ -518,7 +555,103 @@
       deliveryActive = true;
       startService();
    }
+   
+   /**
+    * @jmx:managed-operation
+    */
+   public void refreshSupportCodes()
+   {
+      if(pool instanceof StdServerSessionPool)
+      {
+         StdServerSessionPool stdPool = (StdServerSessionPool)pool;
+         stdPool.refreshSupportCodeFile();
+         
+      }
+   }
+   /**
+    * @jmx:managed-operation
+    */  
+   public void clearCurrentSupportCode()
+   {
+      if(pool instanceof StdServerSessionPool)
+      {
+         StdServerSessionPool stdPool = (StdServerSessionPool)pool;
+         stdPool.clearCurrentSupportCodes();         
+         
+      }
+      
+   }
+   
+   /**
+    * @jmx:managed-operation
+    */
+   public void loadSupportCodeFile(String fileName)
+   {
+      if(pool instanceof StdServerSessionPool)
+      {
+         StdServerSessionPool stdPool = (StdServerSessionPool)pool;
+         stdPool.loadSupportCodeFile(fileName);
+                  
+      }
+      
+   }
+   
+   public void addSupportCodes(String fileName)
+   {
+      if(pool instanceof StdServerSessionPool)
+      {
+         StdServerSessionPool stdPool = (StdServerSessionPool)pool;
+         stdPool.addSupportCodes(fileName);         
+                  
+      }
+      
+   }
+   
+   public String isCodeInUse(int code)
+   {
+ 
+      if(pool instanceof StdServerSessionPool)
+      {
+         StdServerSessionPool stdPool = (StdServerSessionPool)pool;
+         boolean inUse = stdPool.isCodeInUse(code);         
+         return (inUse) ? "Support code " + code + " is in use" : "Support code " + code + " is not in use";         
+      }
+      
+      return "";
+      
+   }
+   public String listCurrentSupportCodes()
+   {      
+      Integer[] codes = null;
+      StringBuffer codeBuff = new StringBuffer();
+      codeBuff.append("JMS Fatal Exception Codes: \n");
+      
+      if(pool instanceof StdServerSessionPool)
+      {
+         StdServerSessionPool stdPool = (StdServerSessionPool)pool;
+         codes = stdPool.listCurrentSupportCodes();         
+                  
+      }
 
+      if(codes != null && codes.length != 0)
+      {
+         for (int i = 0; i < codes.length; i++)
+         {
+            Integer code = codes[i];
+            codeBuff.append("Fatal Code: " + code + "\n");
+            
+         }
+      
+      }else
+      {
+         codeBuff.append("No codes found.\n");
+         
+      }
+      
+      return codeBuff.toString();
+      
+   }
+   
    /**
     * @jmx:managed-operation
     */
@@ -532,7 +665,7 @@
       deliveryActive = false;
       stopService();
    }
-
+   
    /**
     * Sets the Optimized attribute of the JMSContainerInvoker object
     * @param optimize The new Optimized value
@@ -712,8 +845,7 @@
          
       }
 
-      
-      
+            
       try
       {
          String it =  MetaData.getElementContent
@@ -738,15 +870,48 @@
 
       try
       {
-         String exceptionSorter =  MetaData.getElementContent
-            (MetaData.getUniqueChild(element, "ExceptionSorterClassName"));
+         String url =  MetaData.getElementContent
+         (MetaData.getUniqueChild(element, "SupportCodeUrl"));
          
+         if(url != null && !url.equalsIgnoreCase(""))
+         {
+            this.supportCodeUrl = url; 
+            
+         }
+         
       }catch(Exception ignore)
       {
          
       }
       
+      try
+      {
+         String linked = MetaData.getElementContent
+         (MetaData.getUniqueChild(element, "ValidateLinkedException"));
+         validateLinkedException = Boolean.valueOf(linked).booleanValue();
+         
+      }catch(Exception ignore)
+      {
+         
+      }
       
+      try
+      {
+         
+         String sorter = MetaData.getElementContent
+         (MetaData.getUniqueChild(element, "ExceptionSorterClassName"));
+         
+         if(sorter != null && !sorter.equalsIgnoreCase(""))
+         {
+            this.exceptionSorterClassName = sorter;
+         }
+         
+      }catch(Exception ignore)
+      {
+         
+      }
+            
+      
       Element mdbConfig = MetaData.getUniqueChild(element, "MDBConfig");
 
       try
@@ -1513,7 +1678,7 @@
             context.lookup(serverSessionPoolFactoryJNDI);
          
          // the create the pool
-         pool = factory.getServerSessionPool(destination, connection, minSession, maxSession, keepAlive, isTransacted, ack, !isContainerManagedTx || isNotSupportedTx, lazyInit, recycleIdle, idleTimeout, destroySessionOnError, exceptionSorterClassName, listener);
+         pool = factory.getServerSessionPool(destination, connection, minSession, maxSession, keepAlive, isTransacted, ack, !isContainerManagedTx || isNotSupportedTx, lazyInit, recycleIdle, idleTimeout, destroySessionOnError, supportCodeUrl, exceptionSorterClassName, validateLinkedException, listener);
       }
       finally
       {

Modified: branches/JBoss_4_0_3_SP1_JBAS_3511/server/src/main/org/jboss/ejb/plugins/jms/JMSContainerInvokerMBean.java
===================================================================
--- branches/JBoss_4_0_3_SP1_JBAS_3511/server/src/main/org/jboss/ejb/plugins/jms/JMSContainerInvokerMBean.java	2006-11-08 22:27:04 UTC (rev 58214)
+++ branches/JBoss_4_0_3_SP1_JBAS_3511/server/src/main/org/jboss/ejb/plugins/jms/JMSContainerInvokerMBean.java	2006-11-08 22:27:28 UTC (rev 58215)
@@ -63,6 +63,8 @@
    
    int getSessionCreatedCount();
    
+   int getSessionDestroyedCount();
+   
    void setAlwaysReconnect(boolean alwaysReconnect);
    
    boolean getAlwaysReconnect();
@@ -75,5 +77,20 @@
    
    void setExceptionSorterClassName(String name);
    
+   String getSupportCodeUrl();
    
+   void setSupportCodeUrl(String supportCodeUrl);
+   
+   boolean getValidateLinkedException();
+   
+   void setValidateLinkedException(boolean vle);
+   
+   public void loadSupportCodeFile(String fileName);
+   public void refreshSupportCodes();
+   public String listCurrentSupportCodes();
+   public void clearCurrentSupportCode();
+   public void addSupportCodes(String fileName);
+   public String isCodeInUse(int code);
+   
+   
 }




More information about the jboss-cvs-commits mailing list