geronimo-scm mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From xiam...@apache.org
Subject svn commit: r1486260 [3/4] - in /geronimo/devtools/eclipse-plugin/branches/3.0: ./ assembly/ features/org.apache.geronimo.v30.feature/ plugins/org.apache.geronimo.j2ee.v11.jaxbmodel/META-INF/ plugins/org.apache.geronimo.jaxbmodel.common/META-INF/ plugi...
Date Sat, 25 May 2013 00:27:07 GMT
Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/GeronimoServerRuntimeTargetHandler.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/GeronimoServerRuntimeTargetHandler.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/GeronimoServerRuntimeTargetHandler.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/GeronimoServerRuntimeTargetHandler.java Sat May 25 00:27:05 2013
@@ -22,7 +22,6 @@ import java.util.List;
 import org.apache.geronimo.st.v30.core.internal.Messages;
 import org.eclipse.core.runtime.IPath;
 import org.eclipse.jdt.core.IClasspathEntry;
-import org.eclipse.jdt.core.JavaCore;
 import org.eclipse.jst.server.core.RuntimeClasspathProviderDelegate;
 import org.eclipse.wst.server.core.IRuntime;
 
@@ -35,17 +34,6 @@ public class GeronimoServerRuntimeTarget
      * @see org.eclipse.jst.server.core.RuntimeClasspathProviderDelegate#getClasspathContainerLabel(org.eclipse.wst.server.core.IRuntime)
      */
     public String getClasspathContainerLabel(IRuntime runtime) {
-        String version = runtime.getRuntimeType().getVersion();
-        if (version.equals("1.1")) {
-            return Messages.target11runtime;
-        }else  if (version.equals("2.0")) {
-            return Messages.target20runtime;
-        }
-        else if (version.equals("2.1")) {
-            return Messages.target21runtime;
-        }if (version.equals("2.2")) {
-            return Messages.target22runtime;
-        }
         return Messages.target30runtime;
     }
 
@@ -62,100 +50,23 @@ public class GeronimoServerRuntimeTarget
         IPath path = runtime.getLocation().append("lib");
         addLibraryEntries(list, path.toFile(), true);
 
-        String version = runtime.getRuntimeType().getVersion();
-
-        if (version.equals("1.0")) {
-            IPath specPath = runtime.getLocation().append("repository/org.apache.geronimo.specs/jars/");
-            addLibraryEntries(list, specPath.toFile(), false);
-        }
-        else if (version.equals("1.1")) {
-            IPath specPath = runtime.getLocation().append("repository/org/apache/geronimo/specs/geronimo-j2ee_1.4_spec/1.1/geronimo-j2ee_1.4_spec-1.1.jar");
-            //hack to add servlet/jsp spec jars to little G
-            if (!specPath.toFile().exists()) {
-                IPath servletSpec =runtime.getLocation().append("repository/org/apache/geronimo/specs/geronimo-servlet_2.4_spec/1.0.1/geronimo-servlet_2.4_spec-1.0.1.jar");
-                IPath jspSpec = runtime.getLocation().append("repository/org/apache/geronimo/specs/geronimo-jsp_2.0_spec/1.0.1/geronimo-jsp_2.0_spec-1.0.1.jar");
-                list.add(JavaCore.newLibraryEntry(servletSpec, null, null));
-                list.add(JavaCore.newLibraryEntry(jspSpec, null, null));
-            }
-            else {
-                list.add(JavaCore.newLibraryEntry(specPath, null, null));
-            }
-        }
-        else {
-            IPath specPath = runtime.getLocation().append("repository/org/apache/geronimo/specs/");
-            addLibraryEntries(list, specPath.toFile(), true);
-
-            //
-            // Add spec jars that are not in the specs directory (per Geronimo configs jee-specs)
-            //
-            if (version.startsWith("2.0")) {
-                IPath javaMailSpec = runtime.getLocation().append("repository/org/apache/geronimo/javamail/geronimo-javamail_1.4_mail/");
-                IPath jaxbApiSpec  = runtime.getLocation().append("repository/javax/xml/bind/jaxb-api/");
-                IPath jabxImplSpec = runtime.getLocation().append("repository/com/sun/xml/bind/jaxb-impl/");
-                IPath jaxwsApiSpec = runtime.getLocation().append("repository/org/apache/axis2/axis2-jaxws-api/");
-                IPath saajApiSpec  = runtime.getLocation().append("repository/org/apache/axis2/axis2-saaj-api/");
-                IPath jstlSpec     = runtime.getLocation().append("repository/jstl/jstl/");
-                IPath myfacesSpec  = runtime.getLocation().append("repository/org/apache/myfaces/core/myfaces-api/");
-                IPath jdbcSpec     = runtime.getLocation().append("repository/org/apache/geronimo/modules/geronimo-jdbc/");
-                addLibraryEntries(list, javaMailSpec.toFile(), true);
-                addLibraryEntries(list, jaxbApiSpec.toFile(),  true);
-                addLibraryEntries(list, jabxImplSpec.toFile(), true);
-                addLibraryEntries(list, jaxwsApiSpec.toFile(), true);
-                addLibraryEntries(list, saajApiSpec.toFile(),  true);
-                addLibraryEntries(list, jstlSpec.toFile(),     true);
-                addLibraryEntries(list, myfacesSpec.toFile(),  true);
-                addLibraryEntries(list, jdbcSpec.toFile(),     true);
-            }
-            if (version.startsWith("2.1")) {
-                IPath javaMailSpec = runtime.getLocation().append("repository/org/apache/geronimo/javamail/geronimo-javamail_1.4_mail/");
-                IPath jaxbApiSpec  = runtime.getLocation().append("repository/javax/xml/bind/jaxb-api/");
-                IPath jabxImplSpec = runtime.getLocation().append("repository/com/sun/xml/bind/jaxb-impl/");
-                IPath jaxwsApiSpec = runtime.getLocation().append("repository/org/apache/axis2/axis2-jaxws-api/");
-                IPath jstlSpec     = runtime.getLocation().append("repository/jstl/jstl/");
-                IPath myfacesSpec  = runtime.getLocation().append("repository/org/apache/myfaces/core/myfaces-api/");
-                IPath myfacesImplSpec  = runtime.getLocation().append("repository/org/apache/myfaces/core/myfaces-impl/");
-                IPath jdbcSpec     = runtime.getLocation().append("repository/org/apache/geronimo/framework/geronimo-jdbc/");
-                addLibraryEntries(list, javaMailSpec.toFile(), true);
-                addLibraryEntries(list, jaxbApiSpec.toFile(),  true);
-                addLibraryEntries(list, jabxImplSpec.toFile(), true);
-                addLibraryEntries(list, jaxwsApiSpec.toFile(), true);
-                addLibraryEntries(list, jstlSpec.toFile(),     true);
-                addLibraryEntries(list, myfacesSpec.toFile(),  true);
-                addLibraryEntries(list, myfacesImplSpec.toFile(),  true);
-                addLibraryEntries(list, jdbcSpec.toFile(),     true);
-            }
-            if (version.startsWith("2.2")) {
-                 //TODO: review list here when server 2.2 is ready
-                 IPath javaMailSpec = runtime.getLocation().append("repository/org/apache/geronimo/javamail/geronimo-javamail_1.4_mail/");
-                 IPath jabxImplSpec = runtime.getLocation().append("repository/com/sun/xml/bind/jaxb-impl/");
-                 IPath jstlSpec     = runtime.getLocation().append("repository/javax/servlet/jstl");
-                 IPath myfacesSpec  = runtime.getLocation().append("repository/org/apache/myfaces/core/myfaces-api/");
-                 IPath myfacesImplSpec  = runtime.getLocation().append("repository/org/apache/myfaces/core/myfaces-impl/");
-                 IPath jdbcSpec     = runtime.getLocation().append("repository/org/apache/geronimo/framework/geronimo-jdbc/");
-                 addLibraryEntries(list, javaMailSpec.toFile(), true);               
-                 addLibraryEntries(list, jabxImplSpec.toFile(), true);
-                 addLibraryEntries(list, jstlSpec.toFile(),     true);
-                 addLibraryEntries(list, myfacesSpec.toFile(),  true);
-                 addLibraryEntries(list, myfacesImplSpec.toFile(),  true);
-                 addLibraryEntries(list, jdbcSpec.toFile(),     true);
-            }
-            if (version.startsWith("3.0")) {
-                 //TODO: review list here when server 3.0 is ready
-                 IPath javaMailSpec = runtime.getLocation().append("repository/org/apache/geronimo/javamail/geronimo-javamail_1.4_mail/");
-                 IPath jabxImplSpec = runtime.getLocation().append("repository/org/apache/geronimo/bundles/jaxb-impl");
-                 IPath jstlSpec     = runtime.getLocation().append("repository/org/apache/geronimo/bundles/jstl");
-                 IPath myfacesSpec  = runtime.getLocation().append("repository/org/apache/geronimo/bundles/myfaces-bundle/");
-                 IPath jdbcSpec     = runtime.getLocation().append("repository/org/apache/geronimo/framework/geronimo-jdbc/");
-                 IPath osgiSpecs    = runtime.getLocation().append("repository/org/osgi/");
+        IPath specPath = runtime.getLocation().append("repository/org/apache/geronimo/specs/");
+        addLibraryEntries(list, specPath.toFile(), true);
+            
+        //TODO: review list here when server 3.0 is ready
+        IPath javaMailSpec = runtime.getLocation().append("repository/org/apache/geronimo/javamail/geronimo-javamail_1.4_mail/");
+        IPath jabxImplSpec = runtime.getLocation().append("repository/org/apache/geronimo/bundles/jaxb-impl");
+        IPath jstlSpec     = runtime.getLocation().append("repository/org/apache/geronimo/bundles/jstl");
+        IPath myfacesSpec  = runtime.getLocation().append("repository/org/apache/geronimo/bundles/myfaces-bundle/");
+        IPath jdbcSpec     = runtime.getLocation().append("repository/org/apache/geronimo/framework/geronimo-jdbc/");
+        IPath osgiSpecs    = runtime.getLocation().append("repository/org/osgi/");
                 
-                 addLibraryEntries(list, javaMailSpec.toFile(), true);               
-                 addLibraryEntries(list, jabxImplSpec.toFile(), true);
-                 addLibraryEntries(list, jstlSpec.toFile(),     true);
-                 addLibraryEntries(list, myfacesSpec.toFile(),  true);
-                 addLibraryEntries(list, jdbcSpec.toFile(),     true);
-                 addLibraryEntries(list, osgiSpecs.toFile(),    true);
-            }
-        }
+        addLibraryEntries(list, javaMailSpec.toFile(), true);               
+        addLibraryEntries(list, jabxImplSpec.toFile(), true);
+        addLibraryEntries(list, jstlSpec.toFile(),     true);
+        addLibraryEntries(list, myfacesSpec.toFile(),  true);
+        addLibraryEntries(list, jdbcSpec.toFile(),     true);
+        addLibraryEntries(list, osgiSpecs.toFile(),    true);
 
         return(IClasspathEntry[])list.toArray(new IClasspathEntry[list.size()]);
     }

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/ModuleArtifactMapper.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/ModuleArtifactMapper.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/ModuleArtifactMapper.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/ModuleArtifactMapper.java Sat May 25 00:27:05 2013
@@ -25,6 +25,7 @@ import org.apache.geronimo.st.v30.core.b
 import org.apache.geronimo.st.v30.core.base.ModuleSet;
 import org.apache.geronimo.st.v30.core.internal.Trace;
 import org.apache.geronimo.st.v30.core.osgi.AriesHelper;
+import org.apache.geronimo.st.v30.core.osgi.AriesHelper.BundleInfo;
 import org.apache.geronimo.st.v30.core.persist.PersistenceManager;
 import org.apache.geronimo.st.v30.core.persist.factory.PersistenceManagerFactory;
 import org.apache.geronimo.st.v30.core.persist.factory.impl.FilePersistenceManagerFactory;
@@ -85,9 +86,8 @@ public class ModuleArtifactMapper {
     synchronized public void addBundleEntry(IServer server, IModule module, long bundleId, int bundleStartLevel) {
         ModuleSet<Bundle> bundles = getServerBundles(server);
         if(bundles != null) {
-            String symbolicName = AriesHelper.getSymbolicName(module);
-            Version version = AriesHelper.getVersion(module);
-            Bundle bundle = new Bundle(getId(module), symbolicName, version, bundleId, bundleStartLevel);
+            BundleInfo bundleInfo = AriesHelper.getBundleInfo(module);
+            Bundle bundle = new Bundle(getId(module), bundleInfo.getSymbolicName(), bundleInfo.getVersion(), bundleId, bundleStartLevel);
             bundles.remove(bundle);
             bundles.add(bundle);
         }

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/internal/Trace.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/internal/Trace.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/internal/Trace.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/internal/Trace.java Sat May 25 00:27:05 2013
@@ -152,4 +152,14 @@ public class Trace {
     public static void traceExit(boolean opt, String classDotMethod, Object... parms) {
         tracePoint("Exit", opt, classDotMethod, parms);
     }
+    
+    public static void log(int level, String message, Throwable exception) {
+        log.trace(level, Activator.PLUGIN_ID, message, exception);
+        if (Activator.console) {
+            System.out.println(buildMessage(message));
+            if (exception != null) {
+                exception.printStackTrace(System.out);
+            }
+        }
+    }
 }

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/osgi/AriesHelper.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/osgi/AriesHelper.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/osgi/AriesHelper.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/osgi/AriesHelper.java Sat May 25 00:27:05 2013
@@ -16,7 +16,6 @@
  */
 package org.apache.geronimo.st.v30.core.osgi;
 
-import java.lang.reflect.Constructor;
 import java.lang.reflect.Method;
 
 import org.apache.geronimo.st.v30.core.Activator;
@@ -35,9 +34,75 @@ import org.osgi.framework.Version;
  */
 public final class AriesHelper {
 
-    private AriesHelper() {
+    private static Method GET_BUNDLE_MANIFEST_METHOD;
+    private static Method GET_APPLICATION_MANIFEST_METHOD;
+    
+    private static Method GET_BUNDLE_SYMBOLIC_NAME_METHOD;
+    private static Method GET_BUNDLE_VERSION_METHOD;
+    
+    private static Method GET_APPLICATION_SYMBOLIC_NAME_METHOD;
+    private static Method GET_APPLICATION_VERSION_METHOD;
+    
+    private static Method REMOVE_MODEL_METHOD;
+    private static Method GET_MANIFEST_FILE_METHOD;
+    
+    static {
+        initialize();
+    }
+    
+    private static void initialize() {
+        try {
+            Class<?> ariesUtilsClass = Class.forName("com.ibm.etools.aries.internal.core.utils.AriesUtils");
+            GET_BUNDLE_MANIFEST_METHOD = ariesUtilsClass.getMethod("getBlueprintBundleManifest", IProject.class);
+            GET_APPLICATION_MANIFEST_METHOD = ariesUtilsClass.getMethod("getApplicationManifest", IProject.class);
+        } catch (ClassNotFoundException e) {
+            Trace.trace(Trace.WARNING, "AriesUtils class is not available", e, Activator.traceOsgi);
+        } catch (Exception e) {
+            Trace.trace(Trace.ERROR, "Could not initialize AriesUtils methods", e, Activator.traceOsgi);
+        }
+        
+        try {
+            Class<?> bundleManifestClass = Class.forName("com.ibm.etools.aries.core.models.BundleManifest");
+            GET_BUNDLE_SYMBOLIC_NAME_METHOD = bundleManifestClass.getMethod("getBundleSymbolicName");
+            GET_BUNDLE_VERSION_METHOD = bundleManifestClass.getMethod("getBundleVersion");
+        } catch (ClassNotFoundException e) {
+            Trace.trace(Trace.WARNING, "BundleManifest class is not available", e, Activator.traceOsgi);
+        } catch (Exception e) {
+            Trace.trace(Trace.ERROR, "Could not initialize BundleManifest methods", e, Activator.traceOsgi);
+        }
+        
+        try {
+            Class<?> appManifestClass = Class.forName("com.ibm.etools.aries.core.models.ApplicationManifest");
+            GET_APPLICATION_SYMBOLIC_NAME_METHOD = appManifestClass.getMethod("getApplicationSymbolicName");
+            GET_APPLICATION_VERSION_METHOD= appManifestClass.getMethod("getApplicationVersion");
+        } catch (ClassNotFoundException e) {
+            Trace.trace(Trace.WARNING, "ApplicationManifest class is not available", e, Activator.traceOsgi);
+        } catch (Exception e) {
+            Trace.trace(Trace.ERROR, "Could not initialize ApplicationManifest methods", e, Activator.traceOsgi);
+        }
+        
+        try {
+            Class<?> manifestFactoryClass = Class.forName("com.ibm.etools.aries.core.models.ManifestModelsFactory");
+            Class<?> manifestClass = Class.forName("com.ibm.etools.aries.core.models.Manifest");
+            REMOVE_MODEL_METHOD = manifestFactoryClass.getMethod("removeModel", new Class [] { IProject.class, manifestClass });
+        } catch (ClassNotFoundException e) {
+            Trace.trace(Trace.WARNING, "ManifestModelsFactory or Manifest class is not available", e, Activator.traceOsgi);
+        } catch (Exception e) {
+            Trace.trace(Trace.ERROR, "Could not initialize ManifestModelsFactory methods", e, Activator.traceOsgi);
+        }
+        
+        try {
+            Class<?> manifestUtilsClass = Class.forName("com.ibm.etools.aries.internal.core.utils.ManifestUtils");
+            GET_MANIFEST_FILE_METHOD = manifestUtilsClass.getMethod("getManifestFile", IProject.class);
+        } catch (ClassNotFoundException e) {
+            Trace.trace(Trace.WARNING, "ManifestUtils class is not available", e, Activator.traceOsgi);
+        } catch (Exception e) {
+            Trace.trace(Trace.ERROR, "Could not initialize ManifestUtils methods", e, Activator.traceOsgi);
+        }
     }
     
+    private AriesHelper() {
+    }
     
     /**
      * Determine if the Aries OSGi tooling plugins are installed. They are optional and have to be manually installed 
@@ -62,101 +127,58 @@ public final class AriesHelper {
         return false;
     }
     
-    public static IModule[] getChildModules(IModule ebaModule) {
-        if (AriesHelper.isAriesInstalled()) {
-            try {
-                Class<?> class1 = Class.forName("com.ibm.etools.aries.internal.core.modules.AriesModuleDelegate");
-                Method method = class1.getMethod("getChildModules");
-                Constructor<?> constructor = class1.getConstructor(IProject.class);
-                Object object = constructor.newInstance(ebaModule.getProject());
-                return (IModule[]) method.invoke(object);                
-            } catch (Exception e) {
-                Trace.trace(Trace.ERROR, "Could not get child modules", e, Activator.traceOsgi);
-            }
-        }        
-        return new IModule[0];
-    }
-    
-    public static String getSymbolicName(IModule bundleModule) {
-        if (AriesHelper.isAriesInstalled()) {
-            try {
-                Class<?> class1 = Class.forName("com.ibm.etools.aries.internal.core.utils.AriesUtils");
-                Method method = class1.getMethod("getBundleSymbolicName", IProject.class);
-                return (String) method.invoke(null, bundleModule.getProject());
-            } catch (Exception e) {
-                Trace.trace(Trace.ERROR, "Could not get bundle symbolic name", e, Activator.traceOsgi);
-            }
+    public static BundleInfo getBundleInfo(IModule module) {
+        BundleInfo info = null;
+        try {
+            info = getBundleInfo(module.getProject());
+        } catch (Exception e) {
+            Trace.trace(Trace.ERROR, "Could not get BundleInfo", e, Activator.traceOsgi);
         }
-        return null;
+        return info;
     }
     
-    public static Version getVersion(IModule bundleModule) {
-        if (AriesHelper.isAriesInstalled()) {
-            try {
-                Class<?> ariesUtilsClass = Class.forName("com.ibm.etools.aries.internal.core.utils.AriesUtils");
-                Method method = ariesUtilsClass.getMethod("getBlueprintBundleManifest", IProject.class);
-                Object object = method.invoke(null, bundleModule.getProject());
-
-                Class<?> bundleManifest = Class.forName("com.ibm.etools.aries.core.models.BundleManifest");
-                method = bundleManifest.getMethod("getBundleVersion");
-                String versionStr = (String) method.invoke(object);
-                Version version = Version.parseVersion(versionStr);
-                return version;
-            } catch (Exception e) {
-                Trace.trace(Trace.ERROR, "Could not get bundle version", e, Activator.traceOsgi);
-            }
-        }
-        return null;
-    }
-
     public static BundleInfo getBundleInfo(IProject project) throws Exception {
-        if (AriesHelper.isAriesInstalled()) {
-            Class<?> ariesUtilsClass = Class.forName("com.ibm.etools.aries.internal.core.utils.AriesUtils");
-            Method method = ariesUtilsClass.getMethod("getBlueprintBundleManifest", IProject.class);
-            Object object = method.invoke(null, project);
-
-            Class<?> bundleManifest = Class.forName("com.ibm.etools.aries.core.models.BundleManifest");
-            method = bundleManifest.getMethod("getBundleSymbolicName");
-            String symbolicName = (String) method.invoke(object);
-
-            method = bundleManifest.getMethod("getBundleVersion");
-            String versionStr = (String) method.invoke(object);
-            Version version = Version.parseVersion(versionStr);
-
-            if (symbolicName != null && version != null) {
-                return new BundleInfo(symbolicName, version);
+        if (GET_BUNDLE_MANIFEST_METHOD != null) {
+            Object bundleManifest = GET_BUNDLE_MANIFEST_METHOD.invoke(null, project);
+            String symbolicName = (String) GET_BUNDLE_SYMBOLIC_NAME_METHOD.invoke(bundleManifest);
+            String version = (String) GET_BUNDLE_VERSION_METHOD.invoke(bundleManifest);
+            if (symbolicName == null && version == null && REMOVE_MODEL_METHOD != null) {
+                // try to reset the manifest cache in case and lookup the values again
+                REMOVE_MODEL_METHOD.invoke(null, project, bundleManifest);
+                bundleManifest = GET_BUNDLE_MANIFEST_METHOD.invoke(null, project);
+                symbolicName = (String) GET_BUNDLE_SYMBOLIC_NAME_METHOD.invoke(bundleManifest);
+                version = (String) GET_BUNDLE_VERSION_METHOD.invoke(bundleManifest);
+            }
+            if (symbolicName != null) {
+                return new BundleInfo(symbolicName, Version.parseVersion(version));
             }
         }
         return null;
     }
-    
+        
     public static BundleInfo getApplicationBundleInfo(IProject project) throws Exception {
-        if (AriesHelper.isAriesInstalled()) {
-            Class<?> ariesUtilsClass = Class.forName("com.ibm.etools.aries.internal.core.utils.AriesUtils");
-            Method method = ariesUtilsClass.getMethod("getApplicationManifest", IProject.class);
-            Object object = method.invoke(null, project);
-
-            Class<?> appManifestClass = Class.forName("com.ibm.etools.aries.core.models.ApplicationManifest");
-            method = appManifestClass.getMethod("getApplicationSymbolicName");
-            String symbolicName = (String) method.invoke(object);
-
-            method = appManifestClass.getMethod("getApplicationVersion");
-            String versionStr = (String) method.invoke(object);
-            Version version = Version.parseVersion(versionStr);
-            
-            if (symbolicName != null && version != null) {
-                return new BundleInfo(symbolicName, version);
+        if (GET_APPLICATION_MANIFEST_METHOD != null) {
+            Object appManifest = GET_APPLICATION_MANIFEST_METHOD.invoke(null, project);
+            String symbolicName = (String) GET_APPLICATION_SYMBOLIC_NAME_METHOD.invoke(appManifest);
+            String version = (String) GET_APPLICATION_VERSION_METHOD.invoke(appManifest);
+            if (symbolicName == null && version == null && REMOVE_MODEL_METHOD != null) {
+                // try to reset the manifest cache in case and lookup the values again
+                REMOVE_MODEL_METHOD.invoke(null, project, appManifest);
+                appManifest = GET_APPLICATION_MANIFEST_METHOD.invoke(null, project);
+                symbolicName = (String) GET_APPLICATION_SYMBOLIC_NAME_METHOD.invoke(appManifest);
+                version = (String) GET_APPLICATION_VERSION_METHOD.invoke(appManifest);
+            }
+            if (symbolicName != null) {
+                return new BundleInfo(symbolicName, Version.parseVersion(version));
             }
         }
         return null;
     }
 
     public static IFile getManifestFile(IProject project) {
-        if (AriesHelper.isAriesInstalled()) {
+        if (GET_MANIFEST_FILE_METHOD != null) {
             try {
-                Class<?> ariesUtilsClass = Class.forName("com.ibm.etools.aries.internal.core.utils.ManifestUtils");
-                Method method = ariesUtilsClass.getMethod("getManifestFile", IProject.class);
-                return (IFile) method.invoke(null, project);
+                return (IFile) GET_MANIFEST_FILE_METHOD.invoke(null, project);
             } catch (Exception e) {
                 Trace.trace(Trace.ERROR, "Could not get manifest file", e, Activator.traceOsgi);
             }

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/util/Utils.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/util/Utils.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/util/Utils.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/util/Utils.java Sat May 25 00:27:05 2013
@@ -17,17 +17,59 @@
 package org.apache.geronimo.st.v30.core.util;
 
 import java.lang.reflect.Field;
+import java.net.InetAddress;
+import java.net.UnknownHostException;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.geronimo.st.v30.core.Activator;
+import org.apache.geronimo.st.v30.core.internal.Trace;
+import org.eclipse.wst.server.core.util.SocketUtil;
 
 /**
- * 
- *
  * @version $Rev$ $Date$
  */
 public class Utils {
+    
     public static Object getValueByFieldName(String fieldName, Object instance) throws Exception {
         Field f = instance.getClass().getDeclaredField(fieldName);
         f.setAccessible(true);
         return f.get(instance);
     } 
     
+    public static boolean isPortInUse(String host, int port, int count) {
+        List<InetAddress> addresses = new ArrayList<InetAddress>();
+        // check any/all address
+        addresses.add(null);
+        try {
+            // check specific address
+            addresses.add(InetAddress.getByName(host));
+        } catch (UnknownHostException e) {
+            Trace.trace(Trace.WARNING, "Host lookup error for " + host, e, Activator.traceCore);
+        }
+        return isPortInUse(addresses, port, count);
+    }
+    
+    public static boolean isPortInUse(List<InetAddress> addresses, int port, int count) {
+        boolean inUse = isPortInUse(addresses, port);
+        while (inUse && count > 0) {
+            try {
+                Thread.sleep(500);
+            } catch (InterruptedException e) {
+                // ignore
+            }
+            inUse = isPortInUse(addresses, port);
+            count--;
+        }
+        return inUse;
+    }
+    
+    public static boolean isPortInUse(List<InetAddress> addresses, int port) {
+        for (InetAddress address : addresses) {
+            if (SocketUtil.isPortInUse(address, port)) {
+                return true;
+            }
+        }
+        return false;
+    }
 }

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.jaxbmodel/META-INF/MANIFEST.MF
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.jaxbmodel/META-INF/MANIFEST.MF?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.jaxbmodel/META-INF/MANIFEST.MF (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.jaxbmodel/META-INF/MANIFEST.MF Sat May 25 00:27:05 2013
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Geronimo V30 JAXB Models
 Bundle-SymbolicName: org.apache.geronimo.st.v30.jaxbmodel;singleton:=true
-Bundle-Version: 3.0.0
+Bundle-Version: 3.0.1
 Bundle-Vendor: Apache Software Foundation
 Export-Package: 
  org.apache.geronimo.jee.application,

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.jaxbmodel/NOTICE.txt
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.jaxbmodel/NOTICE.txt?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.jaxbmodel/NOTICE.txt (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.jaxbmodel/NOTICE.txt Sat May 25 00:27:05 2013
@@ -1,5 +1,5 @@
 Apache Geronimo 
-Copyright 2003-2011 The Apache Software Foundation
+Copyright 2003-2013 The Apache Software Foundation
 
 This product includes software developed by
 The Apache Software Foundation (http://www.apache.org/).

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/META-INF/MANIFEST.MF
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/META-INF/MANIFEST.MF?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/META-INF/MANIFEST.MF (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/META-INF/MANIFEST.MF Sat May 25 00:27:05 2013
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Geronimo Server Tools V30 UI Plug-in
 Bundle-SymbolicName: org.apache.geronimo.st.v30.ui;singleton:=true
-Bundle-Version: 3.0.0
+Bundle-Version: 3.0.1
 Bundle-Activator: org.apache.geronimo.st.v30.ui.Activator
 Bundle-Localization: plugin
 Require-Bundle: 

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/NOTICE.txt
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/NOTICE.txt?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/NOTICE.txt (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/NOTICE.txt Sat May 25 00:27:05 2013
@@ -1,5 +1,5 @@
 Apache Geronimo 
-Copyright 2003-2011 The Apache Software Foundation
+Copyright 2003-2013 The Apache Software Foundation
 
 This product includes software developed by
 The Apache Software Foundation (http://www.apache.org/).

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/actions/LaunchGeronimoConsoleAction.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/actions/LaunchGeronimoConsoleAction.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/actions/LaunchGeronimoConsoleAction.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/actions/LaunchGeronimoConsoleAction.java Sat May 25 00:27:05 2013
@@ -66,7 +66,7 @@ public class LaunchGeronimoConsoleAction
         if (server != null) {
             GeronimoServerDelegate gs = (GeronimoServerDelegate) server.getAdapter(GeronimoServerDelegate.class);
             return new URL("http://" + server.getHost() + ":"
-                    + gs.getHTTPPort() + "/console/");
+                    + gs.getActualHTTPPort() + "/console/");
         }
         return null;
     }

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/ServerCommand.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/ServerCommand.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/ServerCommand.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/ServerCommand.java Sat May 25 00:27:05 2013
@@ -16,17 +16,22 @@
  */
 package org.apache.geronimo.st.v30.ui.commands;
 
+import org.apache.geronimo.st.v30.core.GeronimoServerDelegate;
 import org.eclipse.core.commands.operations.AbstractOperation;
 import org.eclipse.core.runtime.IAdaptable;
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Status;
 import org.eclipse.wst.server.core.IServerWorkingCopy;
 
 /**
  * @version $Rev$ $Date$
  */
 public abstract class ServerCommand extends AbstractOperation {
+    
     protected IServerWorkingCopy server;
+    protected GeronimoServerDelegate gs;
 
     public ServerCommand(IServerWorkingCopy server, String name) {
         super(name);
@@ -37,17 +42,25 @@ public abstract class ServerCommand exte
 
     public IStatus execute(IProgressMonitor monitor, IAdaptable adapt) {
         execute();
-        return null;
+        return Status.OK_STATUS;
     }
 
     public abstract void undo();
 
     public IStatus undo(IProgressMonitor monitor, IAdaptable adapt) {
         undo();
-        return null;
+        return Status.OK_STATUS;
     }
 
     public IStatus redo(IProgressMonitor monitor, IAdaptable adapt) {
         return execute(monitor, adapt);
     }
+    
+    protected GeronimoServerDelegate getGeronimoServerDelegate() {
+        gs = (GeronimoServerDelegate) server.getAdapter(GeronimoServerDelegate.class);
+        if (gs == null) {
+            gs = (GeronimoServerDelegate) server.loadAdapter(GeronimoServerDelegate.class, new NullProgressMonitor());
+        }
+        return gs;
+    }
 }

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPublishTimeoutCommand.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPublishTimeoutCommand.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPublishTimeoutCommand.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPublishTimeoutCommand.java Sat May 25 00:27:05 2013
@@ -16,42 +16,39 @@
  */
 package org.apache.geronimo.st.v30.ui.commands;
 
-import org.apache.geronimo.st.v30.core.GeronimoServerDelegate;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.swt.widgets.Spinner;
 import org.eclipse.wst.server.core.IServerWorkingCopy;
+
 /**
  * @version $Rev$ $Date$
  *
  * Command to change the server's auto-publish setting.
  */
-public class SetPublishTimeoutCommand extends ServerCommand {
-    protected long timeOut;
-    protected long oldTimeOut;
-
+public class SetPublishTimeoutCommand extends SetPropertyCommand {
+    
+    private Spinner spinner;
+    
     /**
      * SetServerAutoPublishDefaultCommand constructor.
      *
      * @param server a server
      * @param time a publish time
      */
-    public SetPublishTimeoutCommand(IServerWorkingCopy server, long timeOut) {
-        super(server, "SetServerAutoPublishTimeOutCommand");
-        this.timeOut = timeOut;
-    }
-
-    /**
-     * Execute the command.
-     */
-    public void execute() {
-        GeronimoServerDelegate gs = (GeronimoServerDelegate) server.getAdapter(GeronimoServerDelegate.class);
-        oldTimeOut = gs.getPublishTimeout();
-        gs.setPublishTimeout(timeOut);
+    public SetPublishTimeoutCommand(IServerWorkingCopy server, Spinner spinner) {
+        super(server, "PublishTimeout", long.class, spinner.getSelection() * 1000);
+        this.spinner = spinner;
     }
 
-    /**
-     * Undo the command.
-     */
-    public void undo() {
-        GeronimoServerDelegate gs = (GeronimoServerDelegate) server.getAdapter(GeronimoServerDelegate.class);
-        gs.setPublishTimeout(oldTimeOut);
+    public IStatus undo(IProgressMonitor monitor, IAdaptable adapt) {
+        IStatus status = super.undo(monitor, adapt);
+        if (status.isOK()) {
+            int value = (int) ((Long)oldValue).longValue() / 1000;
+            spinner.setSelection(value);
+        }
+        return status;
     }
+    
 }

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/GeronimoRuntimeWizardFragment.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/GeronimoRuntimeWizardFragment.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/GeronimoRuntimeWizardFragment.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/GeronimoRuntimeWizardFragment.java Sat May 25 00:27:05 2013
@@ -317,7 +317,6 @@ public class GeronimoRuntimeWizardFragme
         }
 
         IRuntimeWorkingCopy runtimeWC = getRuntimeDelegate().getRuntimeWorkingCopy();
-        getRuntimeDelegate().setInstanceProperty("serverRootDirectory", installDir.getText());
 
         if (installDir.getText() == null || installDir.getText().length() == 0) {
             // installDir field has not been entered
@@ -358,7 +357,7 @@ public class GeronimoRuntimeWizardFragme
         IVMInstall vmInstall = getRuntimeDelegate().getVMInstall();
         if (vmInstall instanceof IVMInstall2) {
             String javaVersion = ((IVMInstall2) vmInstall).getJavaVersion();
-            return javaVersion != null && (javaVersion.startsWith("1.5") || javaVersion.startsWith("1.6"));
+            return javaVersion != null && (javaVersion.startsWith("1.6") || javaVersion.startsWith("1.7"));
         }
         return false;
     }

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/GeronimoServerWizardFragment.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/GeronimoServerWizardFragment.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/GeronimoServerWizardFragment.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/GeronimoServerWizardFragment.java Sat May 25 00:27:05 2013
@@ -18,12 +18,7 @@ package org.apache.geronimo.st.v30.ui.in
 
 import org.apache.geronimo.st.v30.core.GeronimoServerDelegate;
 import org.apache.geronimo.st.v30.ui.Activator;
-import org.eclipse.jface.viewers.CellEditor;
-import org.eclipse.jface.viewers.ColumnWeightData;
-import org.eclipse.jface.viewers.ICellModifier;
-import org.eclipse.jface.viewers.TableLayout;
-import org.eclipse.jface.viewers.TableViewer;
-import org.eclipse.jface.viewers.TextCellEditor;
+import org.apache.geronimo.st.v30.ui.sections.PortEditor;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.ModifyEvent;
 import org.eclipse.swt.events.ModifyListener;
@@ -31,14 +26,9 @@ import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.layout.GridLayout;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Group;
-import org.eclipse.swt.widgets.Item;
 import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Table;
-import org.eclipse.swt.widgets.TableColumn;
-import org.eclipse.swt.widgets.TableItem;
 import org.eclipse.swt.widgets.Text;
 import org.eclipse.wst.server.core.IServerWorkingCopy;
-import org.eclipse.wst.server.core.ServerPort;
 import org.eclipse.wst.server.core.TaskModel;
 import org.eclipse.wst.server.ui.wizard.IWizardHandle;
 import org.eclipse.wst.server.ui.wizard.WizardFragment;
@@ -54,10 +44,6 @@ public class GeronimoServerWizardFragmen
 
     protected Text password;
 
-    protected Table ports;
-
-    protected TableViewer viewer;
-
     /* (non-Javadoc)
      * @see org.eclipse.wst.server.ui.wizard.WizardFragment#hasComposite()
      */
@@ -124,98 +110,60 @@ public class GeronimoServerWizardFragmen
 		Group portsGroup = new Group(parent, SWT.SHADOW_IN);
 		portsGroup.setText(Messages.specifyPorts);
 		
-		portsGroup.setLayout(new GridLayout(2, true));
-		GridData gd = new GridData();
-		gd.verticalIndent = 15;
-		gd.horizontalAlignment = GridData.FILL;
-		gd.horizontalSpan = 2;
-		portsGroup.setLayoutData(gd);
-		// ports
-		ports = new Table(portsGroup, SWT.V_SCROLL | SWT.H_SCROLL
-				| SWT.FULL_SELECTION);
-		ports.setHeaderVisible(true);
-		ports.setLinesVisible(false);
-
-		TableColumn col = new TableColumn(ports, SWT.NONE);
-		col.setText(Messages.portName);
-		col.setResizable(false);
-		ColumnWeightData colData = new ColumnWeightData(15, 100, false);
-		TableLayout tableLayout = new TableLayout();
-		tableLayout.addColumnData(colData);
-
-		col = new TableColumn(ports, SWT.NONE);
-		col.setText(Messages.portValue);
-		col.setResizable(false);
-		colData = new ColumnWeightData(8, 100, false);
-		tableLayout.addColumnData(colData);
-
-
-        GridData data = new GridData(GridData.FILL_HORIZONTAL
-                | GridData.VERTICAL_ALIGN_FILL);
-        data.horizontalSpan = 2;
-        data.heightHint = 100;
-        ports.setLayoutData(data);
-        ports.setLayout(tableLayout);
-
-        viewer = new TableViewer(ports);
-        viewer.setColumnProperties(new String[] { "name", "port" });
-
-        fillTable(ports);
-        addCellEditor(ports);
-    }
-
-    private void addCellEditor(Table ports) {
-        viewer.setCellEditors(new CellEditor[] { null,
-                new TextCellEditor(ports) });
-
-        ICellModifier cellModifier = new ICellModifier() {
-            public Object getValue(Object element, String property) {
-                ServerPort sp = (ServerPort) element;
-                return sp.getPort() + "";
-            }
+        GridLayout layout = new GridLayout();
+        layout.numColumns = 3;
+        layout.marginHeight = 5;
+        layout.marginWidth = 10;
+        layout.verticalSpacing = 5;
+        layout.horizontalSpacing = 15;
+        portsGroup.setLayout(layout);
+        
+        GridData gd = new GridData();
+        gd.verticalIndent = 15;
+        gd.horizontalAlignment = GridData.FILL;
+        gd.horizontalSpan = 2;
+        portsGroup.setLayoutData(gd);
 
-            public boolean canModify(Object element, String property) {
-                return "port".equals(property);
-            }
+		PortEditor editor = new ServerWizardPortEditor(getServer());
+		editor.init(portsGroup);
+    }
 
-            public void modify(Object element, String property, Object value) {
-                Item item = (Item) element;
-                ServerPort sp = (ServerPort) item.getData();
-                GeronimoServerDelegate gs = getGeronimoServer();
-                gs.setInstanceProperty(sp.getId(), (String) value);
-                changePortNumber(sp.getId(), Integer.parseInt((String) value));
-            }
-        };
+    class ServerWizardPortEditor extends PortEditor {
 
-        viewer.setCellModifier(cellModifier);
-    }
+        public ServerWizardPortEditor(IServerWorkingCopy server) {
+            super(server);
+        }
 
-    private void fillTable(Table ports) {
-        ServerPort[] serverPorts = getServer().getServerPorts(null);
-        if (serverPorts != null) {
-            for (int i = 0; i < serverPorts.length; i++) {
-                ServerPort port = serverPorts[i];
-                TableItem item = new TableItem(ports, SWT.NONE);
-                String[] s = new String[] { port.getName(),
-                        Integer.toString(port.getPort()) };
-                item.setText(s);
-                item.setImage(Activator.getImage(Activator.IMG_PORT));
-                item.setData(port);
-            }
+        @Override
+        protected void setPortOffset(Text portOffset) {
+            int value = toInt(portOffset.getText(), 0);
+            getGeronimoServer().setPortOffset(value);
         }
-    }
 
-    protected void changePortNumber(String id, int port) {
-        TableItem[] items = ports.getItems();
-        int size = items.length;
-        for (int i = 0; i < size; i++) {
-            ServerPort sp = (ServerPort) items[i].getData();
-            if (sp.getId().equals(id)) {
-                items[i].setData(new ServerPort(id, sp.getName(), port, sp.getProtocol()));
-                items[i].setText(1, port + "");
-                return;
-            }
+        @Override
+        protected void setRmiPort(Text rmiPort) {
+            getGeronimoServer().setRMINamingPort(rmiPort.getText());
+        }
+
+        @Override
+        protected void setHttpPort(Text httpPort) {
+            getGeronimoServer().setHTTPPort(httpPort.getText());
+        }
+
+        @Override
+        protected Label createLabel(Composite parent, String text) {
+            Label label = new Label(parent, SWT.NONE);
+            label.setText(text);
+            return label;
+        }
+
+        @Override
+        protected Text createText(Composite parent, String value, int style) {
+            Text text = new Text(parent, style);
+            text.setText(value);
+            return text;
         }
+        
     }
 
     private String getServerName() {

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.java Sat May 25 00:27:05 2013
@@ -89,6 +89,7 @@ public class Messages extends NLS {
     public static String debug;
     public static String httpPort;
     public static String rmiPort;
+    public static String portOffset;
     public static String username;
     public static String password;
     public static String console;

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.properties
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.properties?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.properties (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.properties Sat May 25 00:27:05 2013
@@ -92,6 +92,7 @@ editorSectionPortsTitle=Port Configurati
 editorSectionPortsDescription=Specify the ports for this server instance.
 httpPort=HTTP Port:
 rmiPort=RMI Naming Port:
+portOffset=Port Offset:
 
 editorSectionLogLevelTitle=Console Output
 editorSectionLogLevelDescription=Select the server console output log level.
@@ -442,7 +443,7 @@ getServer=Get Servers
 DownloadServerText=To download the {1} server, click: <br/> {0} .
 DownloadServerURL=http://geronimo.apache.org/downloads.html
 DownloadOSGiURL=http://www.ibm.com/developerworks/rational/downloads/10/rationaldevtoolsforosgiapplications.html
-jvmWarning={0} requires a 5.0+ JDK (J2SE 1.5.0+).
+jvmWarning={0} requires JRE version 6 or higher. 
 installTitle=Install Confirmation
 installMessage=\nInstall {0} to {1}?
 licenseAgreement=License Agreement:
@@ -617,8 +618,8 @@ blueprintTypeConverterSectionDescription
 blueprintOtherElementsSection=Blueprint Bean, Service, Reference List, Reference configuration 
 blueprintOtherElementsSectionDescription=Specify other children elements of blueprint.
 
-noRedeployOption=Copy modified files instead of re-deploying web module
-noRedeployOptionDescription=Copy the modified files matching the include patterns to the server instead of re-deploying the web module. Modified files that do not match include patters or match exclude patterns will cause the web module to be re-deployed.
+noRedeployOption=Copy modified files instead of re-deploying module
+noRedeployOptionDescription=Copy the modified files matching the include patterns to the server instead of re-deploying the module. Modified files that do not match include patters or match exclude patterns will cause the module to be re-deployed.
 includeFilePatterns=Include file patterns:
 excludeFilePatterns=Exclude file patterns:
 filePattern=File pattern:

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorCleanOSGiBundleCacheSection.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorCleanOSGiBundleCacheSection.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorCleanOSGiBundleCacheSection.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorCleanOSGiBundleCacheSection.java Sat May 25 00:27:05 2013
@@ -17,7 +17,7 @@
 package org.apache.geronimo.st.v30.ui.sections;
 
 import org.apache.geronimo.st.v30.core.GeronimoServerDelegate;
-import org.apache.geronimo.st.v30.ui.commands.SetCleanOSGiBundleCacheCommand;
+import org.apache.geronimo.st.v30.ui.commands.CheckSetPropertyCommand;
 import org.apache.geronimo.st.v30.ui.internal.Messages;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.SelectionEvent;
@@ -76,7 +76,11 @@ public class ServerEditorCleanOSGiBundle
         cleanOGSiBundelCache.addSelectionListener(new SelectionListener() {
 
             public void widgetSelected(SelectionEvent e) {
-                execute(new SetCleanOSGiBundleCacheCommand(server, cleanOGSiBundelCache.getSelection()));
+                if (cleanOGSiBundelCache.getData() == null) {
+                    execute(new CheckSetPropertyCommand(server, "CleanOSGiBundleCache", cleanOGSiBundelCache));
+                } else {
+                    cleanOGSiBundelCache.setData(null);
+                }
             }
 
             public void widgetDefaultSelected(SelectionEvent e) {

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorKarafShellSection.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorKarafShellSection.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorKarafShellSection.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorKarafShellSection.java Sat May 25 00:27:05 2013
@@ -17,10 +17,9 @@
 package org.apache.geronimo.st.v30.ui.sections;
 
 import org.apache.geronimo.st.v30.core.GeronimoServerDelegate;
-import org.apache.geronimo.st.v30.ui.commands.SetKarafShellCommand;
-import org.apache.geronimo.st.v30.ui.commands.SetKarafShellKeepAliveCommand;
-import org.apache.geronimo.st.v30.ui.commands.SetKarafShellPortCommand;
-import org.apache.geronimo.st.v30.ui.commands.SetKarafShellTimeoutCommand;
+import org.apache.geronimo.st.v30.ui.NumericVerifyListener;
+import org.apache.geronimo.st.v30.ui.commands.CheckSetPropertyCommand;
+import org.apache.geronimo.st.v30.ui.commands.TextSetPropertyCommand;
 import org.apache.geronimo.st.v30.ui.internal.Messages;
 import org.eclipse.jface.dialogs.MessageDialog;
 import org.eclipse.swt.SWT;
@@ -125,7 +124,11 @@ public class ServerEditorKarafShellSecti
             }
             
             private void executeAndEnableWidgets() {
-                execute(new SetKarafShellCommand(server, enable.getSelection()));
+                if (enable.getData() == null) {
+                    execute(new CheckSetPropertyCommand(server, "KarafShell", enable));
+                } else {
+                    enable.setData(null);
+                }
                 timeout.setEnabled(enable.getSelection());
                 keepAlive.setEnabled(enable.getSelection());
                 port.setEnabled(enable.getSelection());
@@ -139,10 +142,16 @@ public class ServerEditorKarafShellSecti
         timeout.setToolTipText(Messages.karafShellTimeout);
         timeout.addModifyListener(new ModifyListener() {
             public void modifyText(ModifyEvent e) {
-                Integer value = Integer.valueOf(timeout.getText());
-                execute(new SetKarafShellTimeoutCommand(server, timeout, value));
+                if (timeout.getData() == null) {
+                    int value = Integer.parseInt(timeout.getText());
+                    execute(new TextSetPropertyCommand(server, "KarafShellTimeout", int.class, value, timeout));
+                } else {
+                    timeout.setData(null);
+                }
             }
         });
+        timeout.addVerifyListener(new NumericVerifyListener());
+        
         // create keep alive field
         createLabel(subComp1, Messages.karafShellkeepAlive, toolkit);
         keepAlive = toolkit.createText(subComp1, Integer.toString(gsdCopy.getKarafShellKeepAlive()), SWT.BORDER);
@@ -150,10 +159,16 @@ public class ServerEditorKarafShellSecti
         keepAlive.setToolTipText(Messages.karafShellkeepAlive);
         keepAlive.addModifyListener(new ModifyListener() {
             public void modifyText(ModifyEvent e) {
-                Integer value = Integer.valueOf(keepAlive.getText());
-                execute(new SetKarafShellKeepAliveCommand(server, keepAlive, value));
+                if (keepAlive.getData() == null) {
+                    int value = Integer.parseInt(keepAlive.getText());
+                    execute(new TextSetPropertyCommand(server, "KarafShellKeepAlive", int.class, value, keepAlive));
+                } else {
+                    keepAlive.setData(null);
+                }
             }
         });
+        keepAlive.addVerifyListener(new NumericVerifyListener());
+        
         // create port field
         createLabel(subComp1, Messages.karafShellPort, toolkit);
         port = toolkit.createText(subComp1, Integer.toString(gsdCopy.getKarafShellPort()), SWT.BORDER);
@@ -161,9 +176,14 @@ public class ServerEditorKarafShellSecti
         port.setToolTipText(Messages.karafShellPort);
         port.addModifyListener(new ModifyListener() {
             public void modifyText(ModifyEvent e) {
-                Integer value = Integer.valueOf(port.getText());
-                execute(new SetKarafShellPortCommand(server, port, value));
+                if (port.getData() == null) {
+                    int value = Integer.parseInt(port.getText());
+                    execute(new TextSetPropertyCommand(server, "KarafShellPort", int.class, value, port));
+                } else {
+                    port.setData(null);
+                }
             }
         });
+        port.addVerifyListener(new NumericVerifyListener());
     }
 }

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPortsSection.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPortsSection.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPortsSection.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPortsSection.java Sat May 25 00:27:05 2013
@@ -16,29 +16,24 @@
  */
 package org.apache.geronimo.st.v30.ui.sections;
 
-import org.apache.geronimo.st.v30.ui.commands.SetHTTPPortCommand;
-import org.apache.geronimo.st.v30.ui.commands.SetRMIPortCommand;
+import org.apache.geronimo.st.v30.ui.commands.TextSetPropertyCommand;
 import org.apache.geronimo.st.v30.ui.internal.Messages;
 import org.eclipse.swt.SWT;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
 import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.layout.GridLayout;
 import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
 import org.eclipse.swt.widgets.Text;
 import org.eclipse.ui.forms.widgets.ExpandableComposite;
 import org.eclipse.ui.forms.widgets.FormToolkit;
 import org.eclipse.ui.forms.widgets.Section;
+import org.eclipse.wst.server.core.IServerWorkingCopy;
 
 /**
  * @version $Rev$ $Date$
  */
 public class ServerEditorPortsSection extends AbstractServerEditorSection {
-
-    Text httpPort;
-
-    Text rmiPort;
-
+    
     public ServerEditorPortsSection() {
         super();
     }
@@ -58,8 +53,9 @@ public class ServerEditorPortsSection ex
         section.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));
 
         Composite composite = toolkit.createComposite(section);
+        
         GridLayout layout = new GridLayout();
-        layout.numColumns = 2;
+        layout.numColumns = 3;
         layout.marginHeight = 5;
         layout.marginWidth = 10;
         layout.verticalSpacing = 5;
@@ -67,42 +63,47 @@ public class ServerEditorPortsSection ex
         composite.setLayout(layout);
         composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
         section.setClient(composite);
+        
+        PortEditor editor = new ServerEditorPortEditor(toolkit, server);
+        editor.init(composite);
+    }
 
-        // ------- Label and text field for the http port -------
-        createLabel(composite, Messages.httpPort, toolkit);
+    private class ServerEditorPortEditor extends PortEditor {
 
-        httpPort = toolkit.createText(composite, getHTTPPort(), SWT.BORDER);
-        httpPort.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
-        httpPort.addModifyListener(new ModifyListener() {
-            public void modifyText(ModifyEvent e) {
-                execute(new SetHTTPPortCommand(server, httpPort.getText()));
-            }
-        });
-
-        // ------- Label and text field for the rmi port -------
-        createLabel(composite, Messages.rmiPort, toolkit);
-
-        rmiPort = toolkit.createText(composite, getRMIPort(), SWT.BORDER);
-        rmiPort.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false));
-        rmiPort.addModifyListener(new ModifyListener() {
-            public void modifyText(ModifyEvent e) {
-                execute(new SetRMIPortCommand(server, rmiPort.getText()));
-            }
-        });
-    }
+        FormToolkit toolkit;
+        
+        public ServerEditorPortEditor(FormToolkit toolkit, IServerWorkingCopy server) {
+            super(server);
+            this.toolkit = toolkit;
+        }
+        
+        @Override
+        protected Text createText(Composite parent, String value, int style) {
+            return toolkit.createText(parent, value, style);
+        }
+        
+        @Override
+        protected Label createLabel(Composite parent, String value) {
+            return ServerEditorPortsSection.this.createLabel(parent, value, toolkit);
+        }
+        
+        @Override
+        protected void setPortOffset(Text portOffset) {
+            int value = toInt(portOffset.getText(), 0);
+            execute(new TextSetPropertyCommand(server, "PortOffset", int.class, value, portOffset));
+        }
 
-    private String getHTTPPort() {
-        if (gs != null) {
-            return gs.getHTTPPort();
+        @Override
+        protected void setRmiPort(Text rmiPort) {
+            String value = rmiPort.getText();
+            execute(new TextSetPropertyCommand(server, "RMINamingPort", String.class, value, rmiPort));
         }
-        return "";
-    }
 
-    private String getRMIPort() {
-        if (gs != null) {
-            return gs.getRMINamingPort();
+        @Override
+        protected void setHttpPort(Text httpPort) {
+            String value = httpPort.getText();
+            execute(new TextSetPropertyCommand(server, "HTTPPort", String.class, value, httpPort));
         }
-        return "";
     }
 
 }

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPublishAdvancedSection.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPublishAdvancedSection.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPublishAdvancedSection.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPublishAdvancedSection.java Sat May 25 00:27:05 2013
@@ -17,10 +17,9 @@
 package org.apache.geronimo.st.v30.ui.sections;
 
 import org.apache.geronimo.st.v30.core.GeronimoServerDelegate;
-import org.apache.geronimo.st.v30.ui.commands.SetNoRedeployCommand;
+import org.apache.geronimo.st.v30.ui.commands.CheckSetPropertyCommand;
 import org.apache.geronimo.st.v30.ui.commands.SetNoRedeployFilePatternCommand;
 import org.apache.geronimo.st.v30.ui.commands.SetPublishTimeoutCommand;
-import org.apache.geronimo.st.v30.ui.commands.SetRefreshOSGiBundleCommand;
 import org.apache.geronimo.st.v30.ui.internal.Messages;
 import org.apache.geronimo.st.v30.ui.wizards.ListEditorWizard;
 import org.eclipse.jface.wizard.Wizard;
@@ -41,6 +40,7 @@ import org.eclipse.ui.forms.widgets.Expa
 import org.eclipse.ui.forms.widgets.FormToolkit;
 import org.eclipse.ui.forms.widgets.Section;
 import org.eclipse.wst.server.core.util.SocketUtil;
+import org.eclipse.wst.server.ui.internal.SWTUtil;
 
 /**
  * @version $Rev$ $Date$
@@ -87,12 +87,17 @@ public class ServerEditorPublishAdvanced
         publishTimeout = new Spinner(composite, SWT.BORDER);
         publishTimeout.setMinimum(0);
         publishTimeout.setIncrement(5);
-        publishTimeout.setMaximum(900);
+        publishTimeout.setMaximum(60 * 60 * 24); // 24 hours
         publishTimeout.setSelection((int) gs.getPublishTimeout() / 1000);
-
+        SWTUtil.setSpinnerTooltip(publishTimeout);
         publishTimeout.addModifyListener(new ModifyListener() {
             public void modifyText(ModifyEvent e) {
-                execute(new SetPublishTimeoutCommand(server, publishTimeout.getSelection() * 1000));
+                if (publishTimeout.getData() == null) {
+                    execute(new SetPublishTimeoutCommand(server, publishTimeout));
+                } else {
+                    publishTimeout.setData(null);
+                }
+                SWTUtil.setSpinnerTooltip(publishTimeout);
             }
         });
                 
@@ -100,7 +105,11 @@ public class ServerEditorPublishAdvanced
         refreshOSGiBundle.setSelection(gs.isRefreshOSGiBundle());
         refreshOSGiBundle.addSelectionListener(new SelectionAdapter() {
             public void widgetSelected(SelectionEvent e) {
-                execute(new SetRefreshOSGiBundleCommand(server, refreshOSGiBundle.getSelection()));
+                if (refreshOSGiBundle.getData() == null) {
+                    execute(new CheckSetPropertyCommand(server, "RefreshOSGiBundle", refreshOSGiBundle));
+                } else {
+                    refreshOSGiBundle.setData(null);
+                }
             }
         });
         Label refreshOSGiLabel = toolkit.createLabel(composite, Messages.refreshOSGiBundleDescription, SWT.WRAP);
@@ -175,7 +184,11 @@ public class ServerEditorPublishAdvanced
         noRedeploy.setEnabled(!(server.getServerType().supportsRemoteHosts() && !SocketUtil.isLocalhost(server.getHost())));
         noRedeploy.addSelectionListener(new SelectionListener() {
             public void widgetSelected(SelectionEvent e) {
-                execute(new SetNoRedeployCommand(server, noRedeploy.getSelection()));                
+                if (noRedeploy.getData() == null) {
+                    execute(new CheckSetPropertyCommand(server, "NoRedeploy", noRedeploy));
+                } else {
+                    noRedeploy.setData(null);
+                }
                 includesEditor.setEnabled(noRedeploy.getSelection());
                 excludesEditor.setEnabled(noRedeploy.getSelection());
             }
@@ -184,6 +197,7 @@ public class ServerEditorPublishAdvanced
             }
 
         });
+
         noRedeploy.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1));
 
         Label noRedeployLabel = toolkit.createLabel(composite, Messages.noRedeployOptionDescription, SWT.WRAP);

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorSecuritySection.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorSecuritySection.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorSecuritySection.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorSecuritySection.java Sat May 25 00:27:05 2013
@@ -19,8 +19,7 @@ package org.apache.geronimo.st.v30.ui.se
 import org.apache.geronimo.st.v30.core.operations.GeronimoAccountManager;
 import org.apache.geronimo.st.v30.ui.Activator;
 import org.apache.geronimo.st.v30.ui.CommonMessages;
-import org.apache.geronimo.st.v30.ui.commands.SetPasswordCommand;
-import org.apache.geronimo.st.v30.ui.commands.SetUsernameCommand;
+import org.apache.geronimo.st.v30.ui.commands.TextSetPropertyCommand;
 import org.apache.geronimo.st.v30.ui.internal.Messages;
 import org.apache.geronimo.st.v30.ui.internal.Trace;
 import org.apache.geronimo.st.v30.ui.wizards.ManageAccountWizard;
@@ -37,7 +36,6 @@ import org.eclipse.swt.layout.GridLayout
 import org.eclipse.swt.widgets.Button;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Display;
-import org.eclipse.swt.widgets.Label;
 import org.eclipse.swt.widgets.Text;
 import org.eclipse.ui.forms.widgets.ExpandableComposite;
 import org.eclipse.ui.forms.widgets.FormToolkit;
@@ -96,7 +94,12 @@ public class ServerEditorSecuritySection
         username.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
         username.addModifyListener(new ModifyListener() {
             public void modifyText(ModifyEvent e) {
-                execute(new SetUsernameCommand(server, username.getText()));
+                if (username.getData() == null) {
+                    String value = username.getText();
+                    execute(new TextSetPropertyCommand(server, "AdminID", String.class, value, username));
+                } else {
+                    username.setData(null);
+                }
             }
         });
 
@@ -107,7 +110,12 @@ public class ServerEditorSecuritySection
         password.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false));
         password.addModifyListener(new ModifyListener() {
             public void modifyText(ModifyEvent e) {
-                execute(new SetPasswordCommand(server, password.getText()));
+                if (password.getData() == null) {
+                    String value = password.getText();
+                    execute(new TextSetPropertyCommand(server, "AdminPassword", String.class, value, password));
+                } else {
+                    password.setData(null);
+                }
             }
         });
         // ----- Button manage account -----

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorStartupSection.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorStartupSection.java?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorStartupSection.java (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorStartupSection.java Sat May 25 00:27:05 2013
@@ -16,8 +16,8 @@
  */
 package org.apache.geronimo.st.v30.ui.sections;
 
-import org.apache.geronimo.st.v30.core.IGeronimoServer;
-import org.apache.geronimo.st.v30.ui.commands.SetServerInstancePropertyCommand;
+import org.apache.geronimo.st.v30.ui.NumericVerifyListener;
+import org.apache.geronimo.st.v30.ui.commands.TextSetPropertyCommand;
 import org.apache.geronimo.st.v30.ui.internal.Messages;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.ModifyEvent;
@@ -82,10 +82,15 @@ public class ServerEditorStartupSection 
         pingDelay.setToolTipText(Messages.pingDelayTooltip);
         pingDelay.addModifyListener(new ModifyListener() {
             public void modifyText(ModifyEvent e) {
-                Integer value = Integer.valueOf(pingDelay.getText());
-                execute(new SetServerInstancePropertyCommand(server, value, "setPingDelay", Integer.class, IGeronimoServer.class));
+                if (pingDelay.getData() == null) {
+                    int value = Integer.parseInt(pingDelay.getText());
+                    execute(new TextSetPropertyCommand(server, "PingDelay", int.class, value, pingDelay));
+                } else {
+                    pingDelay.setData(null);
+                }
             }
         });
+        pingDelay.addVerifyListener(new NumericVerifyListener());
 
         // ------- Label and text field for the ping interval -------
         createLabel(composite, Messages.pingInterval, toolkit);
@@ -94,10 +99,15 @@ public class ServerEditorStartupSection 
         pingInterval.setToolTipText(Messages.pingIntervalTooltip);
         pingInterval.addModifyListener(new ModifyListener() {
             public void modifyText(ModifyEvent e) {
-                Integer value = Integer.valueOf(pingInterval.getText());
-                execute(new SetServerInstancePropertyCommand(server, value, "setPingInterval", Integer.class, IGeronimoServer.class));
+                if (pingInterval.getData() == null) {
+                    int value = Integer.parseInt(pingInterval.getText());
+                    execute(new TextSetPropertyCommand(server, "PingInterval", int.class, value, pingInterval));
+                } else {
+                    pingInterval.setData(null);
+                }
             }
         });
+        pingInterval.addVerifyListener(new NumericVerifyListener());
         
         // ------- Label and text field for the max pings -------
         createLabel(composite, Messages.maxPings, toolkit);
@@ -106,10 +116,15 @@ public class ServerEditorStartupSection 
         maxPings.setToolTipText(Messages.maxPingsTooltip);
         maxPings.addModifyListener(new ModifyListener() {
             public void modifyText(ModifyEvent e) {
-                Integer value = Integer.valueOf(maxPings.getText());
-                execute(new SetServerInstancePropertyCommand(server, value, "setMaxPings", Integer.class, IGeronimoServer.class));
+                if (maxPings.getData() == null) {
+                    int value = Integer.parseInt(maxPings.getText());
+                    execute(new TextSetPropertyCommand(server, "MaxPings", int.class, value, maxPings));
+                } else {
+                    maxPings.setData(null);
+                }
             }
         });
+        maxPings.addVerifyListener(new NumericVerifyListener());
     }
 
     public String getMaxPings() {

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/pom.xml?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/pom.xml (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/pom.xml Sat May 25 00:27:05 2013
@@ -66,9 +66,9 @@
     </mailingLists>
                         
     <scm>
-        <connection>scm:svn:https://svn.apache.org/repos/asf/geronimo/devtools/eclipse-plugin/branches/3.0/</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/geronimo/devtools/eclipse-plugin/branches/3.0/</developerConnection>
-        <url>https://svn.apache.org/repos/asf/geronimo/devtools/eclipse-plugin/branches/3.0/</url>
+        <connection>scm:svn:https://svn.apache.org/repos/asf/geronimo/devtools/eclipse-plugin/trunk/</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/geronimo/devtools/eclipse-plugin/trunk/</developerConnection>
+        <url>https://svn.apache.org/repos/asf/geronimo/devtools/eclipse-plugin/trunk/</url>
     </scm>
                         
     <organization>
@@ -210,7 +210,7 @@
             <dependency>
                 <groupId>org.osgi</groupId>
                 <artifactId>org.osgi.core</artifactId>
-                <version>4.3.0</version>
+                <version>4.2.0</version>
             </dependency>
 
             <dependency>
@@ -265,7 +265,7 @@
                 <plugin>
                     <groupId>org.apache.geronimo.devtools</groupId>
                     <artifactId>maven-eclipsepde-plugin</artifactId>
-                    <version>1.1</version>
+                    <version>1.2-SNAPSHOT</version>
                     <configuration>
                         <eclipseHome>${settings.localRepository}/eclipse/eclipse/</eclipseHome>
                     </configuration>
@@ -428,7 +428,7 @@
                 <executions>
                     <execution>						
                         <configuration>							
-                            <attached>false</attached>&gt;
+                            <attached>false</attached>
                         </configuration>
                     </execution>
                 </executions>
@@ -483,20 +483,6 @@
                 <enabled>false</enabled>
             </releases>
         </repository>
-		<!--
-         |
-         | Added the Geronimo staging repo	
-         |
-         -->
-		<repository>
-            <id>geronimo.staging</id>
-            <name>Geronimo staging Repository</name>
-            <url>https://repository.apache.org/content/repositories/orgapachegeronimo-015</url>
-            <layout>default</layout>
-			<releases>
-                <enabled>true</enabled>
-            </releases>
-        </repository>		
     </repositories>
                         
     <pluginRepositories>
@@ -605,12 +591,7 @@
                 <module>assembly</module>
             </modules>
         </profile>
-	<!-- this profile is used to do rat check mvn rat:check -PratCheck -->
-	<profile>
-            <id>ratCheck</id>
-            <modules>
-	    </modules>
-        </profile>         
+            
          <!-- this profile is copied from genesis-default-flava and genesis 2.0  -->
          <profile>
             <id>apache-release</id>

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/eclipse/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/eclipse/pom.xml?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/eclipse/pom.xml (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/eclipse/pom.xml Sat May 25 00:27:05 2013
@@ -24,14 +24,14 @@
 
     <groupId>org.apache.geronimo.devtools</groupId>
     <artifactId>testsuite-eclipse</artifactId>
-    <version>3.0.0</version>
+    <version>3.0.1-SNAPSHOT</version>
     <packaging>pom</packaging>
     <name>Geronimo Eclipse Plugin :: Testsuite :: Eclipse</name>
 
     <parent>
         <groupId>org.apache.geronimo.devtools</groupId>
         <artifactId>testsuite</artifactId>
-        <version>3.0.0</version>
+        <version>3.0.1-SNAPSHOT</version>
     </parent>
 
     <build>

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/launcher/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/launcher/pom.xml?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/launcher/pom.xml (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/launcher/pom.xml Sat May 25 00:27:05 2013
@@ -24,14 +24,14 @@
 
     <groupId>org.apache.geronimo.devtools</groupId>
     <artifactId>testsuite-launcher</artifactId>
-    <version>3.0.0</version>
+    <version>3.0.1-SNAPSHOT</version>
     <packaging>pom</packaging>
     <name>Geronimo Eclipse Plugin :: Testsuite :: Launcher</name>
 
     <parent>
         <groupId>org.apache.geronimo.devtools</groupId>
         <artifactId>testsuite</artifactId>
-        <version>3.0.0</version>
+        <version>3.0.1-SNAPSHOT</version>
     </parent>
 
     <build>

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.common/META-INF/MANIFEST.MF
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.common/META-INF/MANIFEST.MF?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.common/META-INF/MANIFEST.MF (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.common/META-INF/MANIFEST.MF Sat May 25 00:27:05 2013
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Geronimo v21 Server Tools Testsuite Common Plug-in
 Bundle-SymbolicName: org.apache.geronimo.testsuite.common;singleton:=true
-Bundle-Version: 3.0.0
+Bundle-Version: 3.0.1
 Bundle-Vendor: Apache Software Foundation
 Bundle-Localization: plugin
 Require-Bundle: abbot.swt;resolution:=optional,

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.common/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.common/pom.xml?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.common/pom.xml (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.common/pom.xml Sat May 25 00:27:05 2013
@@ -24,14 +24,14 @@
 
     <groupId>org.apache.geronimo.devtools</groupId>
     <artifactId>org.apache.geronimo.testsuite.common</artifactId>
-    <version>3.0.0</version>
+    <version>3.0.1-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>${artifactId}</name>
 
     <parent>
         <groupId>org.apache.geronimo.devtools</groupId>
         <artifactId>testsuite-plugins</artifactId>
-        <version>3.0.0</version>
+        <version>3.0.1-SNAPSHOT</version>
     </parent>
 
     <build>

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.v20/META-INF/MANIFEST.MF
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.v20/META-INF/MANIFEST.MF?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.v20/META-INF/MANIFEST.MF (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.v20/META-INF/MANIFEST.MF Sat May 25 00:27:05 2013
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Geronimo v20 Server Tools Testsuite Plug-in
 Bundle-SymbolicName: org.apache.geronimo.testsuite.v20;singleton:=true
-Bundle-Version: 3.0.0
+Bundle-Version: 3.0.1
 Bundle-Activator: org.apache.geronimo.testsuite.v20.Activator
 Bundle-Vendor: Apache Software Foundation
 Bundle-Localization: plugin

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.v20/pom.xml
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.v20/pom.xml?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.v20/pom.xml (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.v20/pom.xml Sat May 25 00:27:05 2013
@@ -24,14 +24,14 @@
 
     <groupId>org.apache.geronimo.devtools</groupId>
     <artifactId>org.apache.geronimo.testsuite.v20</artifactId>
-    <version>3.0.0</version>
+    <version>3.0.1-SNAPSHOT</version>
     <packaging>jar</packaging>
     <name>${artifactId}</name>
 
     <parent>
         <groupId>org.apache.geronimo.devtools</groupId>
         <artifactId>testsuite-plugins</artifactId>
-        <version>3.0.0</version>
+        <version>3.0.1-SNAPSHOT</version>
     </parent>
 
     <build>

Modified: geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.v21/META-INF/MANIFEST.MF
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.v21/META-INF/MANIFEST.MF?rev=1486260&r1=1486259&r2=1486260&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.v21/META-INF/MANIFEST.MF (original)
+++ geronimo/devtools/eclipse-plugin/branches/3.0/testsuite/plugins/org.apache.geronimo.testsuite.v21/META-INF/MANIFEST.MF Sat May 25 00:27:05 2013
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Geronimo v21 Server Tools Testsuite Plug-in
 Bundle-SymbolicName: org.apache.geronimo.testsuite.v21;singleton:=true
-Bundle-Version: 3.0.0
+Bundle-Version: 3.0.1
 Bundle-Activator: org.apache.geronimo.testsuite.v21.Activator
 Bundle-Vendor: Apache Software Foundation
 Bundle-Localization: plugin



Mime
View raw message