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();
+ }
}
/**