Author: hiranya
Date: Fri Aug  2 23:28:09 2013
New Revision: 1509912

URL: http://svn.apache.org/r1509912
Log:
Removing the redundant MBeanRegistrar in pass thru transport - Changed the 
transport to use the registrat in Synapse commons like the nhttp transport.

Removed:
    
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/jmx/MBeanRegistrar.java
Modified:
    
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/PassThroughHttpListener.java
    
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/PassThroughHttpSender.java
    
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/jmx/ConnectionsView.java
    
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/jmx/LatencyView.java

Modified: 
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/PassThroughHttpListener.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/PassThroughHttpListener.java?rev=1509912&r1=1509911&r2=1509912&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/PassThroughHttpListener.java
 (original)
+++ 
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/PassThroughHttpListener.java
 Fri Aug  2 23:28:09 2013
@@ -45,8 +45,8 @@ import org.apache.http.nio.reactor.IORea
 import org.apache.http.nio.reactor.ListenerEndpoint;
 import org.apache.http.nio.reactor.ssl.SSLSetupHandler;
 import org.apache.http.params.HttpParams;
+import org.apache.synapse.commons.jmx.MBeanRegistrar;
 import org.apache.synapse.transport.passthru.config.SourceConfiguration;
-import org.apache.synapse.transport.passthru.jmx.MBeanRegistrar;
 import 
org.apache.synapse.transport.passthru.jmx.PassThroughTransportMetricsCollector;
 import org.apache.synapse.transport.passthru.jmx.TransportView;
 

Modified: 
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/PassThroughHttpSender.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/PassThroughHttpSender.java?rev=1509912&r1=1509911&r2=1509912&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/PassThroughHttpSender.java
 (original)
+++ 
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/PassThroughHttpSender.java
 Fri Aug  2 23:28:09 2013
@@ -50,13 +50,13 @@ import org.apache.http.nio.reactor.IORea
 import org.apache.http.nio.reactor.IOReactorExceptionHandler;
 import org.apache.http.nio.reactor.ssl.SSLSetupHandler;
 import org.apache.http.params.HttpParams;
+import org.apache.synapse.commons.jmx.MBeanRegistrar;
 import org.apache.synapse.transport.nhttp.NhttpConstants;
 import 
org.apache.synapse.transport.nhttp.util.MessageFormatterDecoratorFactory;
 import org.apache.synapse.transport.nhttp.util.NhttpUtil;
 import org.apache.synapse.transport.passthru.config.SourceConfiguration;
 import org.apache.synapse.transport.passthru.config.TargetConfiguration;
 import org.apache.synapse.transport.passthru.connections.TargetConnections;
-import org.apache.synapse.transport.passthru.jmx.MBeanRegistrar;
 import 
org.apache.synapse.transport.passthru.jmx.PassThroughTransportMetricsCollector;
 import org.apache.synapse.transport.passthru.jmx.TransportView;
 import org.apache.synapse.transport.passthru.util.PassThroughTransportUtils;

Modified: 
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/jmx/ConnectionsView.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/jmx/ConnectionsView.java?rev=1509912&r1=1509911&r2=1509912&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/jmx/ConnectionsView.java
 (original)
+++ 
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/jmx/ConnectionsView.java
 Fri Aug  2 23:28:09 2013
@@ -20,6 +20,7 @@
 package org.apache.synapse.transport.passthru.jmx;
 
 import org.apache.axis2.AxisFault;
+import org.apache.synapse.commons.jmx.MBeanRegistrar;
 
 import java.util.*;
 import java.util.concurrent.Executors;
@@ -104,13 +105,22 @@ public class ConnectionsView implements 
         scheduler.scheduleAtFixedRate(longTermCollector, 
LONG_DATA_COLLECTION_PERIOD,
                 LONG_DATA_COLLECTION_PERIOD, TimeUnit.SECONDS);
 
-        MBeanRegistrar.getInstance().registerMBean(this, 
PASS_THROUGH_CONNECTIONS, name);
+        boolean registered = false;
+        try {
+            registered = MBeanRegistrar.getInstance().registerMBean(this, 
PASS_THROUGH_CONNECTIONS, name);
+        } finally {
+            if (!registered) {
+                scheduler.shutdownNow();
+            }
+        }
 
     }
 
     public void destroy() {
         MBeanRegistrar.getInstance().unRegisterMBean(PASS_THROUGH_CONNECTIONS, 
name);
-        scheduler.shutdownNow();
+        if (!scheduler.isShutdown()) {
+            scheduler.shutdownNow();
+        }
     }
 
     private void initCounters(AtomicInteger[] counters) {
@@ -230,8 +240,8 @@ public class ConnectionsView implements 
         Integer[] array = shortTermDataQueue.toArray(new 
Integer[shortTermDataQueue.size()]);
 
         if (n > array.length) {
-            for (int i = 0; i < array.length; i++) {
-                sum += array[i];
+            for (Integer anArray : array) {
+                sum += anArray;
             }
         } else {
             for (int i = 0; i < n; i++) {
@@ -254,8 +264,8 @@ public class ConnectionsView implements 
         Integer[] array = longTermDataQueue.toArray(new 
Integer[longTermDataQueue.size()]);
 
         if (samples > array.length) {
-            for (int i = 0; i < array.length; i++) {
-                sum += array[i];
+            for (Integer anArray : array) {
+                sum += anArray;
             }
         } else {
             for (int i = 0; i < samples; i++) {

Modified: 
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/jmx/LatencyView.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/jmx/LatencyView.java?rev=1509912&r1=1509911&r2=1509912&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/jmx/LatencyView.java
 (original)
+++ 
synapse/trunk/java/modules/transports/core/nhttp/src/main/java/org/apache/synapse/transport/passthru/jmx/LatencyView.java
 Fri Aug  2 23:28:09 2013
@@ -20,6 +20,7 @@
 package org.apache.synapse.transport.passthru.jmx;
 
 import org.apache.axis2.AxisFault;
+import org.apache.synapse.commons.jmx.MBeanRegistrar;
 
 import java.util.Calendar;
 import java.util.Date;
@@ -101,13 +102,21 @@ public class LatencyView implements Late
         scheduler.scheduleAtFixedRate(new LongTermDataCollector(), 
LARGE_DATA_COLLECTION_PERIOD,
                 LARGE_DATA_COLLECTION_PERIOD, TimeUnit.SECONDS);
 
-        MBeanRegistrar.getInstance().registerMBean(this, NHTTP_LATENCY_VIEW, 
name);
-
+        boolean registered = false;
+        try {
+            registered = MBeanRegistrar.getInstance().registerMBean(this, 
NHTTP_LATENCY_VIEW, name);
+        } finally {
+            if (!registered) {
+                scheduler.shutdownNow();
+            }
+        }
     }
 
     public void destroy() {
         MBeanRegistrar.getInstance().unRegisterMBean(NHTTP_LATENCY_VIEW, name);
-        scheduler.shutdownNow();
+        if (!scheduler.isShutdown()) {
+            scheduler.shutdownNow();
+        }
     }
 
     /**


Reply via email to