Author: rob.stryker(a)jboss.com
Date: 2009-10-26 20:04:29 -0400 (Mon, 26 Oct 2009)
New Revision: 18300
Modified:
branches/jbosstools-3.1.0.M4/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/LocalJBossServerRuntime.java
branches/jbosstools-3.1.0.M4/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/wizards/JBossRuntimeJava6WizardFragment.java
branches/jbosstools-3.1.0.M4/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/wizards/JBossRuntimeWizardFragment.java
Log:
JBIDE-5049 - committing to m4
Modified:
branches/jbosstools-3.1.0.M4/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/LocalJBossServerRuntime.java
===================================================================
---
branches/jbosstools-3.1.0.M4/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/LocalJBossServerRuntime.java 2009-10-26
23:26:52 UTC (rev 18299)
+++
branches/jbosstools-3.1.0.M4/as/plugins/org.jboss.ide.eclipse.as.core/jbosscore/org/jboss/ide/eclipse/as/core/server/internal/LocalJBossServerRuntime.java 2009-10-27
00:04:29 UTC (rev 18300)
@@ -10,7 +10,9 @@
******************************************************************************/
package org.jboss.ide.eclipse.as.core.server.internal;
+import java.util.ArrayList;
import java.util.HashMap;
+import java.util.Iterator;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.IProgressMonitor;
@@ -18,11 +20,14 @@
import org.eclipse.core.runtime.Path;
import org.eclipse.core.runtime.Platform;
import org.eclipse.core.runtime.Status;
+import org.eclipse.jdt.core.JavaCore;
import org.eclipse.jdt.launching.IVMInstall;
+import org.eclipse.jdt.launching.IVMInstall2;
import org.eclipse.jdt.launching.IVMInstallType;
import org.eclipse.jdt.launching.JavaRuntime;
import org.eclipse.osgi.util.NLS;
import org.eclipse.wst.server.core.IRuntime;
+import org.eclipse.wst.server.core.IRuntimeType;
import org.eclipse.wst.server.core.ServerCore;
import org.eclipse.wst.server.core.model.RuntimeDelegate;
import org.jboss.ide.eclipse.as.core.JBossServerCorePlugin;
@@ -73,25 +78,6 @@
return Status.OK_STATUS;
}
- public IVMInstall getVM() {
- if (getVMInstallTypeId() == null) {
- return JavaRuntime.getDefaultVMInstall();
- }
- String id = getAttribute(PROPERTY_VM_ID, (String)null);
- String type = getAttribute(PROPERTY_VM_TYPE_ID, (String)null);
-
- IVMInstallType vmInstallType = JavaRuntime.getVMInstallType(type);
- IVMInstall[] vmInstalls = vmInstallType.getVMInstalls();
-
- for (int i = 0; i < vmInstalls.length; i++) {
- if (id.equals(vmInstalls[i].getId()))
- return vmInstalls[i];
- }
-
- // not found, return default vm
- return JavaRuntime.getDefaultVMInstall();
- }
-
public void setVM(IVMInstall selectedVM) {
if (selectedVM == null) {
setAttribute(IJBossServerRuntime.PROPERTY_VM_ID, (String) null);
@@ -168,4 +154,74 @@
return new Path(cl);
return getRuntime().getLocation().append(cl);
}
+
+ public IVMInstall getVM() {
+ if (getVMInstallTypeId() != null) {
+ String id = getAttribute(PROPERTY_VM_ID, (String) null);
+ String type = getAttribute(PROPERTY_VM_TYPE_ID, (String) null);
+ IVMInstallType vmInstallType = JavaRuntime.getVMInstallType(type);
+ IVMInstall[] vmInstalls = vmInstallType.getVMInstalls();
+ for (int i = 0; i < vmInstalls.length; i++) {
+ if (id.equals(vmInstalls[i].getId()))
+ return vmInstalls[i];
+ }
+ }
+
+ // not found, return default vm
+ return JavaRuntime.getDefaultVMInstall();
+ }
+
+ protected IVMInstall getDefaultVMInstall() {
+ IVMInstall install = JavaRuntime.getDefaultVMInstall();
+ if (install instanceof IVMInstall2) {
+ String version = ((IVMInstall2) install).getJavaVersion();
+ if (isValidJREVersion(version, getRuntime().getRuntimeType()))
+ return install;
+ }
+ ArrayList<IVMInstall> installs = getValidJREs(getRuntime()
+ .getRuntimeType());
+ Iterator<IVMInstall> i = installs.iterator();
+ while (i.hasNext()) {
+ IVMInstall next = i.next();
+ if (next instanceof IVMInstall2) {
+ String version = ((IVMInstall2) next).getJavaVersion();
+ if (isValidJREVersion(version, getRuntime().getRuntimeType()))
+ return next;
+ }
+ }
+ return null;
+ }
+
+ public static ArrayList<IVMInstall> getValidJREs(IRuntimeType type) {
+ ArrayList<IVMInstall> valid = new ArrayList<IVMInstall>();
+ IVMInstallType[] vmInstallTypes = JavaRuntime.getVMInstallTypes();
+ int size = vmInstallTypes.length;
+ for (int i = 0; i < size; i++) {
+ IVMInstall[] vmInstalls = vmInstallTypes[i].getVMInstalls();
+ int size2 = vmInstalls.length;
+ for (int j = 0; j < size2; j++) {
+ if (vmInstalls[j] instanceof IVMInstall2) {
+ String version = ((IVMInstall2) vmInstalls[j])
+ .getJavaVersion();
+ if (isValidJREVersion(version, type))
+ valid.add(vmInstalls[j]);
+ }
+ }
+ }
+ return valid;
+ }
+
+ public static boolean isValidJREVersion(String jreVersion,
+ IRuntimeType rtType) {
+ String id = rtType.getId();
+ String version = rtType.getVersion();
+ if (id.equals(IConstants.EAP_50) && version.equals(IConstants.V5_0)) {
+ return !jreVersion.startsWith(JavaCore.VERSION_1_1)
+ && !jreVersion.startsWith(JavaCore.VERSION_1_2)
+ && !jreVersion.startsWith(JavaCore.VERSION_1_3)
+ && !jreVersion.startsWith(JavaCore.VERSION_1_4)
+ && !jreVersion.startsWith(JavaCore.VERSION_1_5);
+ }
+ return true;
+ }
}
Modified:
branches/jbosstools-3.1.0.M4/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/wizards/JBossRuntimeJava6WizardFragment.java
===================================================================
---
branches/jbosstools-3.1.0.M4/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/wizards/JBossRuntimeJava6WizardFragment.java 2009-10-26
23:26:52 UTC (rev 18299)
+++
branches/jbosstools-3.1.0.M4/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/wizards/JBossRuntimeJava6WizardFragment.java 2009-10-27
00:04:29 UTC (rev 18300)
@@ -23,11 +23,8 @@
import java.util.ArrayList;
-import org.eclipse.jdt.core.JavaCore;
import org.eclipse.jdt.launching.IVMInstall;
-import org.eclipse.jdt.launching.IVMInstall2;
-import org.eclipse.jdt.launching.IVMInstallType;
-import org.eclipse.jdt.launching.JavaRuntime;
+import org.jboss.ide.eclipse.as.core.server.internal.LocalJBossServerRuntime;
import org.jboss.ide.eclipse.as.ui.Messages;
public class JBossRuntimeJava6WizardFragment extends JBossRuntimeWizardFragment {
@@ -40,31 +37,9 @@
}
protected ArrayList<IVMInstall> getValidJREs() {
- ArrayList<IVMInstall> valid = new ArrayList<IVMInstall>();
- IVMInstallType[] vmInstallTypes = JavaRuntime.getVMInstallTypes();
- int size = vmInstallTypes.length;
- for (int i = 0; i < size; i++) {
- IVMInstall[] vmInstalls = vmInstallTypes[i].getVMInstalls();
- int size2 = vmInstalls.length;
- for (int j = 0; j < size2; j++) {
- if( vmInstalls[j] instanceof IVMInstall2 ) {
- String version = ((IVMInstall2)vmInstalls[j]).getJavaVersion();
- if( isValidVersion(version))
- valid.add(vmInstalls[j]);
- }
- }
- }
- return valid;
+ return LocalJBossServerRuntime.getValidJREs(getRuntimeType());
}
- protected boolean isValidVersion(String version) {
- return !version.startsWith(JavaCore.VERSION_1_1) &&
- !version.startsWith(JavaCore.VERSION_1_2) &&
- !version.startsWith(JavaCore.VERSION_1_3) &&
- !version.startsWith(JavaCore.VERSION_1_4) &&
- !version.startsWith(JavaCore.VERSION_1_5);
- }
-
protected String getErrorString() {
if( !shouldIncludeDefaultJRE() && getValidJREs().size() == 0 )
return Messages.rwf_jre6NotFound;
Modified:
branches/jbosstools-3.1.0.M4/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/wizards/JBossRuntimeWizardFragment.java
===================================================================
---
branches/jbosstools-3.1.0.M4/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/wizards/JBossRuntimeWizardFragment.java 2009-10-26
23:26:52 UTC (rev 18299)
+++
branches/jbosstools-3.1.0.M4/as/plugins/org.jboss.ide.eclipse.as.ui/jbossui/org/jboss/ide/eclipse/as/ui/wizards/JBossRuntimeWizardFragment.java 2009-10-27
00:04:29 UTC (rev 18300)
@@ -72,6 +72,7 @@
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.PlatformUI;
import org.eclipse.wst.server.core.IRuntime;
+import org.eclipse.wst.server.core.IRuntimeType;
import org.eclipse.wst.server.core.IRuntimeWorkingCopy;
import org.eclipse.wst.server.core.ServerCore;
import org.eclipse.wst.server.core.TaskModel;
@@ -194,7 +195,7 @@
configurations.setConfiguration(rt.getJBossConfiguration() == null
? IConstants.DEFAULT_CONFIGURATION : rt.getJBossConfiguration());
- if (rt.isUsingDefaultJRE()) {
+ if (rt.isUsingDefaultJRE() && shouldIncludeDefaultJRE()) {
jreCombo.select(0);
} else {
IVMInstall install = rt.getVM();
@@ -209,6 +210,8 @@
homeDirText.setEditable(canEdit);
homeDirButton.setEnabled(canEdit);
configurations.getTable().setVisible(canEdit);
+ if( jreCombo.getSelectionIndex() < 0 && jreCombo.getItemCount() > 0)
+ jreCombo.select(0);
}
}
@@ -551,8 +554,9 @@
configurations.setConfiguration(IJBossServerConstants.DEFAULT_CONFIGURATION);
int sel = jreCombo.getSelectionIndex();
- if (sel > 0)
- selectedVM = installedJREs.get(sel-1);
+ int offset = shouldIncludeDefaultJRE() ? -1 : 0;
+ if( sel + offset > -1 )
+ selectedVM = installedJREs.get(sel+offset);
else
selectedVM = null;
configDirTextVal = configDirText.getText();
@@ -912,4 +916,9 @@
return newConfig;
}
}
+ public IRuntimeType getRuntimeType() {
+ IRuntime r = (IRuntime) getTaskModel().getObject(TaskModel.TASK_RUNTIME);
+ return r.getRuntimeType();
+ }
+
}
Show replies by date