Author: rob.stryker(a)jboss.com
Date: 2007-08-21 23:36:00 -0400 (Tue, 21 Aug 2007)
New Revision: 3267
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/runtime/server/polling/JMXPoller.java
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/JBossServer.java
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/JBossServerLaunchConfiguration.java
trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/wizards/JBossRuntimeWizardFragment.java
Log:
Addition of credentialing as top level element in server creation wizard.
UI enhancement still required to modify the credentials.
JBIDE-400
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/runtime/server/polling/JMXPoller.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/runtime/server/polling/JMXPoller.java 2007-08-22
00:21:20 UTC (rev 3266)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/runtime/server/polling/JMXPoller.java 2007-08-22
03:36:00 UTC (rev 3267)
@@ -169,10 +169,18 @@
IJavaLaunchConfigurationConstants.ATTR_PROGRAM_ARGUMENTS
+ JBossServerLaunchConfiguration.PRGM_ARGS_TWIDDLE_SUFFIX,
(String) null);
- String user = ArgsUtil.getValue(twiddleArgs, "-u", "--user");
- String password = ArgsUtil.getValue(twiddleArgs, "-p",
- "--password");
-
+
+ // get user from the IServer, but override with launch configuration
+ String user = ServerConverter.getJBossServer(server).getUsername();
+ String userLaunch = ArgsUtil.getValue(twiddleArgs, "-u",
"--user");
+ user = userLaunch == null ? user : userLaunch;
+
+ // get password from the IServer, but override with launch configuration
+ String pass = ServerConverter.getJBossServer(server).getPassword();
+ String passwordLaunch = ArgsUtil.getValue(twiddleArgs, "-p",
"--password");
+ pass = passwordLaunch == null ? pass : passwordLaunch;
+
+
// get our methods
Class simplePrincipal = Thread.currentThread()
.getContextClassLoader().loadClass(
@@ -197,7 +205,7 @@
// set the credential
Method setCredentialMethod = securityAssoc.getMethod(
"setCredential", new Class[] { Object.class });
- setCredentialMethod.invoke(null, new Object[] { password });
+ setCredentialMethod.invoke(null, new Object[] { pass });
} catch (CoreException e) {
temp = e;
} catch (ClassNotFoundException e) {
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/JBossServer.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/JBossServer.java 2007-08-22
00:21:20 UTC (rev 3266)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/JBossServer.java 2007-08-22
03:36:00 UTC (rev 3267)
@@ -230,5 +230,14 @@
try {
return new URL(url);
} catch( MalformedURLException murle) { return null; }
- }
+ }
+
+
+ public String getUsername() {
+ return getAttributeHelper().getAttribute(SERVER_USERNAME, "");
+ }
+
+ public String getPassword() {
+ return getAttributeHelper().getAttribute(SERVER_PASSWORD, "");
+ }
}
\ No newline at end of file
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/JBossServerLaunchConfiguration.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/JBossServerLaunchConfiguration.java 2007-08-22
00:21:20 UTC (rev 3266)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/JBossServerLaunchConfiguration.java 2007-08-22
03:36:00 UTC (rev 3267)
@@ -48,6 +48,7 @@
import org.eclipse.wst.server.core.ServerUtil;
import org.eclipse.wst.server.core.internal.ServerType;
import org.jboss.ide.eclipse.as.core.JBossServerCorePlugin;
+import org.jboss.ide.eclipse.as.core.util.ArgsUtil;
public class JBossServerLaunchConfiguration extends
AbstractJavaLaunchConfigurationDelegate {
@@ -142,6 +143,9 @@
List classpath =
workingCopy.getAttribute(IJavaLaunchConfigurationConstants.ATTR_CLASSPATH + suffix, new
ArrayList());
workingCopy.setAttribute(IJavaLaunchConfigurationConstants.ATTR_CLASSPATH,
classpath);
+ if( STOP.equals(action) || TWIDDLE.equals(action))
+ addCredentials(workingCopy, getJBossServer(workingCopy));
+
} catch( Exception e ) {
e.printStackTrace();
}
@@ -149,6 +153,24 @@
}
+ protected static void addCredentials(ILaunchConfigurationWorkingCopy configuration,
JBossServer server) {
+ try {
+ String argsKey = IJavaLaunchConfigurationConstants.ATTR_PROGRAM_ARGUMENTS;
+ String args = configuration.getAttribute(argsKey, (String)null);
+ String user = ArgsUtil.getValue(args, "-u", "--user");
+ String pass = ArgsUtil.getValue(args, "-p", "--password");
+ if( user == null )
+ args = args + " -u " + server.getUsername();
+ if( pass == null )
+ args = args + " -p " + server.getPassword();
+
+ configuration.setAttribute(argsKey, args);
+ } catch( CoreException ce ) {
+ ce.printStackTrace();
+ }
+ }
+
+
// Have the defaults been set for this launch config yet? ever?
public static boolean defaultsBeenSet(ILaunchConfiguration workingCopy, IServer server)
{
try {
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/wizards/JBossRuntimeWizardFragment.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/wizards/JBossRuntimeWizardFragment.java 2007-08-22
00:21:20 UTC (rev 3266)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/wizards/JBossRuntimeWizardFragment.java 2007-08-22
03:36:00 UTC (rev 3267)
@@ -64,6 +64,7 @@
import org.eclipse.wst.server.ui.wizard.IWizardHandle;
import org.eclipse.wst.server.ui.wizard.WizardFragment;
import org.jboss.ide.eclipse.as.core.runtime.IJBossServerRuntime;
+import org.jboss.ide.eclipse.as.core.server.attributes.IServerStartupParameters;
import org.jboss.ide.eclipse.as.ui.JBossServerUISharedImages;
import org.jboss.ide.eclipse.as.ui.Messages;
@@ -438,7 +439,7 @@
// No errors, clear the message and update the available
// configurations
configurations.setJBossHome(homeDirText.getText());
- configurations.setDefaultConfiguration("default");
+ configurations.setDefaultConfiguration(IServerStartupParameters.DEFAULT_SERVER_NAME);
// update config variable
int index = configurations.getTable().getSelectionIndex();