You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by bh...@apache.org on 2007/04/30 13:38:00 UTC
svn commit: r533704 - in
/incubator/qpid/branches/M2/java/management/eclipse-plugin: bin/qpidmc.bat
bin/qpidmc.sh
src/main/java/org/apache/qpid/management/ui/ApplicationRegistry.java
src/main/java/org/apache/qpid/management/ui/jmx/JMXServerRegistry.java
Author: bhupendrab
Date: Mon Apr 30 04:37:59 2007
New Revision: 533704
URL: http://svn.apache.org/viewvc?view=rev&rev=533704
Log:
Added time-out for secure server connection.
Modified:
incubator/qpid/branches/M2/java/management/eclipse-plugin/bin/qpidmc.bat
incubator/qpid/branches/M2/java/management/eclipse-plugin/bin/qpidmc.sh
incubator/qpid/branches/M2/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ApplicationRegistry.java
incubator/qpid/branches/M2/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXServerRegistry.java
Modified: incubator/qpid/branches/M2/java/management/eclipse-plugin/bin/qpidmc.bat
URL: http://svn.apache.org/viewvc/incubator/qpid/branches/M2/java/management/eclipse-plugin/bin/qpidmc.bat?view=diff&rev=533704&r1=533703&r2=533704
==============================================================================
--- incubator/qpid/branches/M2/java/management/eclipse-plugin/bin/qpidmc.bat (original)
+++ incubator/qpid/branches/M2/java/management/eclipse-plugin/bin/qpidmc.bat Mon Apr 30 04:37:59 2007
@@ -52,4 +52,4 @@
rem Slurp the command line arguments. This loop allows for an unlimited number
rem of agruments (up to the command line limit, anyway).
-"%JAVA_HOME%\bin\java" -Xms40m -Xmx256m -Declipse.consoleLog=false -Dsecurity=PLAIN -jar %QPIDMC_HOME%\eclipse\startup.jar org.eclipse.core.launcher.Main -launcher %QPIDMC_HOME%\eclipse\eclipse -name "Qpid Management Console" -showsplash 600 -configuration "file:%QPIDMC_HOME%\configuration" -os win32 -ws win32 -arch x86
+"%JAVA_HOME%\bin\java" -Xms40m -Xmx256m -Declipse.consoleLog=false -jar %QPIDMC_HOME%\eclipse\startup.jar org.eclipse.core.launcher.Main -launcher %QPIDMC_HOME%\eclipse\eclipse -name "Qpid Management Console" -showsplash 600 -configuration "file:%QPIDMC_HOME%\configuration" -os win32 -ws win32 -arch x86
Modified: incubator/qpid/branches/M2/java/management/eclipse-plugin/bin/qpidmc.sh
URL: http://svn.apache.org/viewvc/incubator/qpid/branches/M2/java/management/eclipse-plugin/bin/qpidmc.sh?view=diff&rev=533704&r1=533703&r2=533704
==============================================================================
--- incubator/qpid/branches/M2/java/management/eclipse-plugin/bin/qpidmc.sh (original)
+++ incubator/qpid/branches/M2/java/management/eclipse-plugin/bin/qpidmc.sh Mon Apr 30 04:37:59 2007
@@ -61,4 +61,4 @@
os="linux"
fi
-"$JAVA_HOME/bin/java" -Xms40m -Xmx256m -Declipse.consoleLog=false -Dsecurity=PLAIN -jar $QPIDMC_HOME/eclipse/startup.jar org.eclipse.core.launcher.Main -launcher $QPIDMC_HOME/eclipse/eclipse -name "Qpid Management Console" -showsplash 600 -configuration "file:$QPIDMC_HOME/configuration" -os $os -ws $ws -arch $arch
+"$JAVA_HOME/bin/java" -Xms40m -Xmx256m -Declipse.consoleLog=false -jar $QPIDMC_HOME/eclipse/startup.jar org.eclipse.core.launcher.Main -launcher $QPIDMC_HOME/eclipse/eclipse -name "Qpid Management Console" -showsplash 600 -configuration "file:$QPIDMC_HOME/configuration" -os $os -ws $ws -arch $arch
Modified: incubator/qpid/branches/M2/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ApplicationRegistry.java
URL: http://svn.apache.org/viewvc/incubator/qpid/branches/M2/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ApplicationRegistry.java?view=diff&rev=533704&r1=533703&r2=533704
==============================================================================
--- incubator/qpid/branches/M2/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ApplicationRegistry.java (original)
+++ incubator/qpid/branches/M2/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/ApplicationRegistry.java Mon Apr 30 04:37:59 2007
@@ -44,6 +44,7 @@
public static final boolean debug = Boolean.getBoolean("eclipse.consoleLog");
public static final String securityMechanism = System.getProperty("security", null);
public static final String connectorClass = System.getProperty("jmxconnector");
+ public static final long timeout = Long.parseLong(System.getProperty("timeout", "5000"));
static
{
Modified: incubator/qpid/branches/M2/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXServerRegistry.java
URL: http://svn.apache.org/viewvc/incubator/qpid/branches/M2/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXServerRegistry.java?view=diff&rev=533704&r1=533703&r2=533704
==============================================================================
--- incubator/qpid/branches/M2/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXServerRegistry.java (original)
+++ incubator/qpid/branches/M2/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/jmx/JMXServerRegistry.java Mon Apr 30 04:37:59 2007
@@ -59,6 +59,7 @@
public class JMXServerRegistry extends ServerRegistry
{
+ private boolean _connected = false;
private ObjectName _serverObjectName = null;
private Map<String, Object> _env = null;
private JMXServiceURL _jmxUrl = null;
@@ -98,23 +99,12 @@
super(server);
String securityMechanism = ApplicationRegistry.getSecurityMechanism();
String connectorClassName = ApplicationRegistry.getJMXConnectorClass();
-
- boolean saslPluginAvailable = false;
if ((securityMechanism != null) && (connectorClassName != null))
{
- try
- {
- createSASLConnector(securityMechanism, connectorClassName);
- saslPluginAvailable = true;
- }
- catch (Exception ex)
- {
- MBeanUtility.printStackTrace(ex);
- }
+ createSASLConnector(securityMechanism, connectorClassName);
}
-
- if (!saslPluginAvailable)
+ else
{
_jmxUrl = new JMXServiceURL(server.getUrl());
_jmxc = JMXConnectorFactory.connect(_jmxUrl, null);
@@ -179,9 +169,34 @@
Object theObject = cons.newInstance(args);
_jmxc = (JMXConnector)theObject;
- _jmxc.connect();
+
+ Thread connectorThread = new Thread(new ConnectorThread());
+ connectorThread.start();
+ long timeNow = System.currentTimeMillis();
+ connectorThread.join(ApplicationRegistry.timeout);
+
+ if (!_connected && (System.currentTimeMillis() - timeNow >= ApplicationRegistry.timeout))
+ {
+ throw new Exception("Qpid server connection timed out");
+ }
}
+ private class ConnectorThread implements Runnable
+ {
+ public void run()
+ {
+ try
+ {
+ _connected = false;
+ _jmxc.connect();
+ _connected = true;
+ }
+ catch (Exception ex)
+ {
+ MBeanUtility.printStackTrace(ex);
+ }
+ }
+ }
/**
* removes all listeners from the mbean server. This is required when user
* disconnects the Qpid server connection