Author: kfujino
Date: Tue Apr 11 08:29:24 2017
New Revision: 1790939

URL: http://svn.apache.org/viewvc?rev=1790939&view=rev
Log:
Add MBean for Sender component.

Added:
    
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSenderMBean.java
   (with props)
Modified:
    
tomcat/trunk/java/org/apache/catalina/tribes/transport/ReplicationTransmitter.java
    
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSender.java

Modified: 
tomcat/trunk/java/org/apache/catalina/tribes/transport/ReplicationTransmitter.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/ReplicationTransmitter.java?rev=1790939&r1=1790938&r2=1790939&view=diff
==============================================================================
--- 
tomcat/trunk/java/org/apache/catalina/tribes/transport/ReplicationTransmitter.java
 (original)
+++ 
tomcat/trunk/java/org/apache/catalina/tribes/transport/ReplicationTransmitter.java
 Tue Apr 11 08:29:24 2017
@@ -16,11 +16,14 @@
  */
 package org.apache.catalina.tribes.transport;
 
+import javax.management.ObjectName;
+
 import org.apache.catalina.tribes.Channel;
 import org.apache.catalina.tribes.ChannelException;
 import org.apache.catalina.tribes.ChannelMessage;
 import org.apache.catalina.tribes.ChannelSender;
 import org.apache.catalina.tribes.Member;
+import org.apache.catalina.tribes.jmx.JmxRegistry;
 import org.apache.catalina.tribes.transport.nio.PooledParallelSender;
 
 /**
@@ -32,6 +35,11 @@ public class ReplicationTransmitter impl
 
     private Channel channel;
 
+    /**
+     * the ObjectName of this Sender.
+     */
+    private ObjectName oname = null;
+
     public ReplicationTransmitter() {
     }
 
@@ -66,6 +74,9 @@ public class ReplicationTransmitter impl
     @Override
     public void start() throws java.io.IOException {
         getTransport().connect();
+        // register jmx
+        JmxRegistry jmxRegistry = JmxRegistry.getRegistry(channel);
+        if (jmxRegistry != null) this.oname = 
jmxRegistry.registerJmx(",component=Sender", transport);
     }
 
     /**
@@ -76,6 +87,10 @@ public class ReplicationTransmitter impl
     @Override
     public synchronized void stop() {
         getTransport().disconnect();
+        if (oname != null) {
+            JmxRegistry.getRegistry(channel).unregisterJmx(oname);
+            oname = null;
+        }
         channel = null;
     }
 

Modified: 
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSender.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSender.java?rev=1790939&r1=1790938&r2=1790939&view=diff
==============================================================================
--- 
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSender.java
 (original)
+++ 
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSender.java
 Tue Apr 11 08:29:24 2017
@@ -26,7 +26,7 @@ import org.apache.catalina.tribes.transp
 import org.apache.catalina.tribes.transport.PooledSender;
 import org.apache.catalina.tribes.util.StringManager;
 
-public class PooledParallelSender extends PooledSender {
+public class PooledParallelSender extends PooledSender implements 
PooledParallelSenderMBean {
     protected static final StringManager sm = 
StringManager.getManager(PooledParallelSender.class);
 
     @Override

Added: 
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSenderMBean.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSenderMBean.java?rev=1790939&view=auto
==============================================================================
--- 
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSenderMBean.java
 (added)
+++ 
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSenderMBean.java
 Tue Apr 11 08:29:24 2017
@@ -0,0 +1,68 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.catalina.tribes.transport.nio;
+
+public interface PooledParallelSenderMBean {
+
+    // Transport Attributes
+    public int getRxBufSize();
+
+    public int getTxBufSize();
+
+    public int getUdpRxBufSize();
+
+    public int getUdpTxBufSize();
+
+    public boolean getDirectBuffer();
+
+    public int getKeepAliveCount();
+
+    public long getKeepAliveTime();
+
+    public long getTimeout();
+
+    public int getMaxRetryAttempts();
+
+    public boolean getOoBInline();
+
+    public boolean getSoKeepAlive();
+
+    public boolean getSoLingerOn();
+
+    public int getSoLingerTime();
+
+    public boolean getSoReuseAddress();
+
+    public int getSoTrafficClass();
+
+    public boolean getTcpNoDelay();
+
+    public boolean getThrowOnFailedAck();
+
+    // PooledSender Attributes
+    public int getPoolSize();
+
+    public long getMaxWait();
+
+    // Operation
+    public boolean isConnected();
+
+    public int getInPoolSize();
+
+    public int getInUsePoolSize();
+
+}
\ No newline at end of file

Propchange: 
tomcat/trunk/java/org/apache/catalina/tribes/transport/nio/PooledParallelSenderMBean.java
------------------------------------------------------------------------------
    svn:eol-style = native



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to