You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by ga...@apache.org on 2013/03/22 20:50:38 UTC
svn commit: r1459957 [1/2] - in
/geronimo/devtools/eclipse-plugin/trunk/plugins:
org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/
org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/util/
org.apac...
Author: gawor
Date: Fri Mar 22 19:50:37 2013
New Revision: 1459957
URL: http://svn.apache.org/r1459957
Log:
GERONIMODEVTOOLS-795: Add support for PortOffset and saving port information into config-substitution file. Also, other improvements to editing server configuration (ensure unsaved changes are not used until saved, and fix undo functionality)
Added:
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/util/ConfigSubstitutionsHelper.java (with props)
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/NumericVerifyListener.java (with props)
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/CheckSetPropertyCommand.java (with props)
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPropertyCommand.java (with props)
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/TextSetPropertyCommand.java (with props)
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/PortEditor.java (with props)
Removed:
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetCleanOSGiBundleCacheCommand.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetHTTPPortCommand.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetKarafShellCommand.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetKarafShellKeepAliveCommand.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetKarafShellPortCommand.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetKarafShellTimeoutCommand.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetNoRedeployCommand.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPasswordCommand.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetRMIPortCommand.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetRefreshOSGiBundleCommand.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetServerInstancePropertyCommand.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetUsernameCommand.java
Modified:
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/GeronimoServerBehaviourDelegate.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/GeronimoServerDelegate.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/actions/LaunchGeronimoConsoleAction.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/ServerCommand.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPublishTimeoutCommand.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/GeronimoServerWizardFragment.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.properties
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorCleanOSGiBundleCacheSection.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorKarafShellSection.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPortsSection.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPublishAdvancedSection.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorSecuritySection.java
geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorStartupSection.java
Modified: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/GeronimoServerBehaviourDelegate.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/GeronimoServerBehaviourDelegate.java?rev=1459957&r1=1459956&r2=1459957&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/GeronimoServerBehaviourDelegate.java (original)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/GeronimoServerBehaviourDelegate.java Fri Mar 22 19:50:37 2013
@@ -1574,10 +1574,12 @@ public class GeronimoServerBehaviourDele
}
public MBeanServerConnection getServerConnection() throws Exception {
- String host = getServer().getHost();
- String user = getGeronimoServer().getAdminID();
- String password = getGeronimoServer().getAdminPassword();
- String port = getGeronimoServer().getRMINamingPort();
+ GeronimoServerDelegate delegate = getServerDelegate();
+
+ String host = delegate.getServer().getHost();
+ String user = delegate.getAdminID();
+ String password = delegate.getAdminPassword();
+ String port = String.valueOf(delegate.getActualRMINamingPort());
JMXConnectorInfo connectorInfo = new JMXConnectorInfo(user, password, host, port);
// Using the classloader that loads the current's class as the default classloader when creating the JMXConnector
Modified: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/GeronimoServerDelegate.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/GeronimoServerDelegate.java?rev=1459957&r1=1459956&r2=1459957&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/GeronimoServerDelegate.java (original)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/GeronimoServerDelegate.java Fri Mar 22 19:50:37 2013
@@ -20,11 +20,9 @@ import java.io.IOException;
import java.net.URL;
import java.util.ArrayList;
import java.util.Arrays;
-import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.ListIterator;
-import java.util.Map;
import java.util.Set;
import java.util.jar.Attributes;
import java.util.jar.JarFile;
@@ -42,6 +40,7 @@ import org.apache.geronimo.st.v30.core.i
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.OsgiConstants;
+import org.apache.geronimo.st.v30.core.util.ConfigSubstitutionsHelper;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IPath;
import org.eclipse.core.runtime.IProgressMonitor;
@@ -54,6 +53,7 @@ import org.eclipse.jst.server.core.inter
import org.eclipse.wst.common.componentcore.internal.util.IModuleConstants;
import org.eclipse.wst.server.core.IModule;
import org.eclipse.wst.server.core.IModuleType;
+import org.eclipse.wst.server.core.IRuntime;
import org.eclipse.wst.server.core.IServer;
import org.eclipse.wst.server.core.ServerPort;
import org.eclipse.wst.server.core.ServerUtil;
@@ -88,6 +88,8 @@ public class GeronimoServerDelegate exte
public static final String PROPERTY_RMI_PORT = "RMIRegistry";
public static final String PROPERTY_HTTP_PORT = "WebConnector";
+
+ public static final String PROPERTY_PORT_OFFSET = "PortOffset";
public static final String PROPERTY_CLEAN_OSGI_BUNDLE_CACHE = "cleanOSGiBundleCache";
@@ -171,7 +173,8 @@ public class GeronimoServerDelegate exte
* @see org.apache.geronimo.st.v30.core.IGeronimoServer#getDeployerURL()
*/
public String getDeployerURL() {
- return "deployer:geronimo:jmx://" + getServer().getHost() + ":" + getRMINamingPort();
+ String host = getServer().getHost();
+ return "deployer:geronimo:jmx://" + host + ":" + getActualRMINamingPort();
}
/*
@@ -181,7 +184,7 @@ public class GeronimoServerDelegate exte
*/
public String getJMXServiceURL() {
String host = getServer().getHost();
- return "service:jmx:rmi://" + host + "/jndi/rmi://" + host + ":" + getRMINamingPort() + "/JMXConnector";
+ return "service:jmx:rmi://" + host + "/jndi/rmi://" + host + ":" + getActualRMINamingPort() + "/JMXConnector";
}
/*
@@ -445,8 +448,8 @@ public class GeronimoServerDelegate exte
Trace.tracePoint("Entry", Activator.traceCore, "GeronimoServerDelegate.getServerPorts");
List<ServerPort> ports = new ArrayList<ServerPort>();
- ports.add(new ServerPort(PROPERTY_HTTP_PORT, "Web Connector", Integer.parseInt(getHTTPPort()), "http"));
- ports.add(new ServerPort(PROPERTY_RMI_PORT, "RMI Naming", Integer.parseInt(getRMINamingPort()), "rmi"));
+ ports.add(new ServerPort(PROPERTY_HTTP_PORT, "Web Connector", getActualHTTPPort(), "http"));
+ ports.add(new ServerPort(PROPERTY_RMI_PORT, "RMI Naming", getActualRMINamingPort(), "rmi"));
ServerPort[] serverPorts = ports.toArray(new ServerPort[ports.size()]);
Trace.tracePoint("Entry", Activator.traceCore, "GeronimoServerDelegate.getServerPorts", serverPorts);
@@ -503,7 +506,7 @@ public class GeronimoServerDelegate exte
String host = getServer().getHost();
StringBuilder urlSB = new StringBuilder("http://");
urlSB.append(host);
- int port = Integer.parseInt(getHTTPPort());
+ int port = getActualHTTPPort();
port = ServerMonitorManager.getInstance().getMonitoredPort(getServer(), port, "web");
if (port != 80) {
urlSB.append(":").append(port);
@@ -545,29 +548,61 @@ public class GeronimoServerDelegate exte
public void setDefaults(IProgressMonitor monitor) {
Trace.tracePoint("Entry", Activator.traceCore, "GeronimoServerDelegate.setDefaults", monitor);
suspendArgUpdates();
+
setAdminID("system");
setAdminPassword("manager");
setHTTPPort("8080");
setRMINamingPort("1099");
+ setPortOffset(0);
setConsoleLogLevel(CONSOLE_INFO);
setCleanOSGiBundleCache(false);
setRefreshOSGiBundle(false);
setKarafShell(false);
- setPingDelay(new Integer(10000));
- setMaxPings(new Integer(40));
- setPingInterval(new Integer(5000));
+ setPingDelay(10000);
+ setMaxPings(40);
+ setPingInterval(5000);
setPublishTimeout(900000);
setInPlaceSharedLib(false);
setRunFromWorkspace(false);
setSelectClasspathContainers(false);
+
+ IServer server = getServer();
+ if (server != null) {
+ IRuntime runtime = server.getRuntime();
+ if (runtime != null) {
+ ConfigSubstitutionsHelper configSubstitutions = new ConfigSubstitutionsHelper(runtime.getLocation());
+ configSubstitutions.load();
+ setAttribute(configSubstitutions, ConfigSubstitutionsHelper.PORT_OFFSET, PROPERTY_PORT_OFFSET);
+ setAttribute(configSubstitutions, ConfigSubstitutionsHelper.HTTP_PORT, PROPERTY_HTTP_PORT);
+ setAttribute(configSubstitutions, ConfigSubstitutionsHelper.NAMING_PORT, PROPERTY_RMI_PORT);
+ }
+ }
+
resumeArgUpdates();
Trace.tracePoint("Exit", Activator.traceCore, "GeronimoServerDelegate.setDefaults", monitor);
}
+
+ private void setAttribute(ConfigSubstitutionsHelper configSubstitutions, String substProperty, String property) {
+ String value = configSubstitutions.getProperty(substProperty);
+ if (value != null) {
+ setAttribute(property, value);
+ }
+ }
@Override
public void saveConfiguration(IProgressMonitor monitor) throws CoreException {
Trace.tracePoint("Enter", Activator.traceCore, "GeronimoServerDelegate.saveConfiguration", monitor);
super.saveConfiguration(monitor);
+
+ if (SocketUtil.isLocalhost(getServer().getHost())) {
+ ConfigSubstitutionsHelper configSubstitutions = new ConfigSubstitutionsHelper(getServer().getRuntime().getLocation());
+ configSubstitutions.load();
+ configSubstitutions.setProperty(ConfigSubstitutionsHelper.PORT_OFFSET, String.valueOf(getPortOffset()));
+ configSubstitutions.setProperty(ConfigSubstitutionsHelper.HTTP_PORT, getHTTPPort());
+ configSubstitutions.setProperty(ConfigSubstitutionsHelper.NAMING_PORT, getRMINamingPort());
+ configSubstitutions.store();
+ }
+
Trace.tracePoint("Exit", Activator.traceCore, "GeronimoServerDelegate.saveConfiguration", monitor);
}
@@ -582,10 +617,10 @@ public class GeronimoServerDelegate exte
// PROPERTY_ADMIN_ID
//
public String getAdminID() {
- return getInstanceProperty(PROPERTY_ADMIN_ID);
+ return getAttribute(PROPERTY_ADMIN_ID, "system");
}
public void setAdminID(String value) {
- setInstanceProperty(PROPERTY_ADMIN_ID, value);
+ setAttribute(PROPERTY_ADMIN_ID, value);
}
@@ -593,45 +628,62 @@ public class GeronimoServerDelegate exte
// PROPERTY_ADMIN_PW
//
public String getAdminPassword() {
- String password = getInstanceProperty(PROPERTY_ADMIN_PW);
+ String password = getAttribute(PROPERTY_ADMIN_PW, "manager");
return password == null ? null : (String) EncryptionManager.decrypt(password);
}
public void setAdminPassword(String value) {
String password = value == null ? null : EncryptionManager.encrypt(value);
- setInstanceProperty(PROPERTY_ADMIN_PW, password);
+ setAttribute(PROPERTY_ADMIN_PW, password);
}
//
+ // PROPERTY_PORT_OFFSET
+ //
+ public int getPortOffset() {
+ return getAttribute(PROPERTY_PORT_OFFSET, 0);
+ }
+
+ public void setPortOffset(int value) {
+ setAttribute(PROPERTY_PORT_OFFSET, value);
+ }
+
+ //
// PROPERTY_RMI_PORT
//
public String getRMINamingPort() {
- return getInstanceProperty(PROPERTY_RMI_PORT);
+ return getAttribute(PROPERTY_RMI_PORT, "1099");
}
public void setRMINamingPort(String value) {
- setInstanceProperty(PROPERTY_RMI_PORT, value);
+ setAttribute(PROPERTY_RMI_PORT, value);
}
-
-
+ public int getActualRMINamingPort() {
+ int port = getAttribute(PROPERTY_RMI_PORT, 1099);
+ return port + getPortOffset();
+ }
+
//
// PROPERTY_HTTP_PORT
//
public String getHTTPPort() {
- return getInstanceProperty(PROPERTY_HTTP_PORT);
+ return getAttribute(PROPERTY_HTTP_PORT, "8080");
}
public void setHTTPPort(String value) {
- setInstanceProperty(PROPERTY_HTTP_PORT, value);
+ setAttribute(PROPERTY_HTTP_PORT, value);
+ }
+ public int getActualHTTPPort() {
+ int port = getAttribute(PROPERTY_HTTP_PORT, 8080);
+ return port + getPortOffset();
}
-
//
// PROPERTY_LOG_LEVEL
//
public String getConsoleLogLevel() {
- return getInstanceProperty(PROPERTY_LOG_LEVEL);
+ return getAttribute(PROPERTY_LOG_LEVEL, CONSOLE_INFO);
}
public void setConsoleLogLevel(String value) {
- setInstanceProperty(PROPERTY_LOG_LEVEL, value);
+ setAttribute(PROPERTY_LOG_LEVEL, value);
updateProgramArgsFromProperties();
}
@@ -640,12 +692,11 @@ public class GeronimoServerDelegate exte
// CLEAR_OSGI_BUNDLE_CACHE
//
public boolean isCleanOSGiBundleCache() {
- String enable = getInstanceProperty(PROPERTY_CLEAN_OSGI_BUNDLE_CACHE);
- return Boolean.valueOf(enable);
+ return getAttribute(PROPERTY_CLEAN_OSGI_BUNDLE_CACHE, false);
}
public void setCleanOSGiBundleCache(boolean value) {
- setInstanceProperty(PROPERTY_CLEAN_OSGI_BUNDLE_CACHE, Boolean.toString(value));
+ setAttribute(PROPERTY_CLEAN_OSGI_BUNDLE_CACHE, value);
updateProgramArgsFromProperties();
}
@@ -653,12 +704,11 @@ public class GeronimoServerDelegate exte
// REFRESH_OSGI_BUNDLE
//
public boolean isRefreshOSGiBundle() {
- String enable = getInstanceProperty(PROPERTY_REFRESH_OSGI_BUNDLE);
- return Boolean.valueOf(enable);
+ return getAttribute(PROPERTY_REFRESH_OSGI_BUNDLE, false);
}
public void setRefreshOSGiBundle(boolean value) {
- setInstanceProperty(PROPERTY_REFRESH_OSGI_BUNDLE, Boolean.toString(value));
+ setAttribute(PROPERTY_REFRESH_OSGI_BUNDLE, value);
}
@@ -947,7 +997,7 @@ public class GeronimoServerDelegate exte
// PROPERTY_VM_ARGS
//
public String getVMArgs() {
- String superVMArgs = getInstanceProperty(PROPERTY_VM_ARGS);
+ String superVMArgs = getAttribute(PROPERTY_VM_ARGS);
if (superVMArgs != null && superVMArgs.trim().length() > 0) {
return superVMArgs;
}
@@ -984,7 +1034,7 @@ public class GeronimoServerDelegate exte
}
public void setVMArgs(String value) {
- setInstanceProperty(PROPERTY_VM_ARGS, value);
+ setAttribute(PROPERTY_VM_ARGS, value);
}
public Set<String> getVMArgsSet() {
@@ -999,7 +1049,7 @@ public class GeronimoServerDelegate exte
// PROPERTY_PROGRAM_ARGS
//
public String getProgramArgs() {
- String superVMArgs = getInstanceProperty(PROPERTY_PROGRAM_ARGS);
+ String superVMArgs = getAttribute(PROPERTY_PROGRAM_ARGS);
if (superVMArgs != null && superVMArgs.trim().length() > 0) {
return superVMArgs;
}
@@ -1020,19 +1070,18 @@ public class GeronimoServerDelegate exte
}
public void setProgramArgs(String value) {
- setInstanceProperty(PROPERTY_PROGRAM_ARGS, value);
+ setAttribute(PROPERTY_PROGRAM_ARGS, value);
}
-
+
//
// PROPERTY_PING_DELAY
//
public int getPingDelay() {
- String pingDelay = getInstanceProperty(PROPERTY_PING_DELAY);
- return Integer.parseInt(pingDelay);
+ return getAttribute(PROPERTY_PING_DELAY, 10000);
}
- public void setPingDelay(Integer delay) {
- setInstanceProperty(PROPERTY_PING_DELAY, delay.toString());
+ public void setPingDelay(int delay) {
+ setAttribute(PROPERTY_PING_DELAY, delay);
}
@@ -1040,11 +1089,10 @@ public class GeronimoServerDelegate exte
// PROPERTY_PING_INTERVAL
//
public int getPingInterval() {
- String pingInterval = getInstanceProperty(PROPERTY_PING_INTERVAL);
- return Integer.parseInt(pingInterval);
+ return getAttribute(PROPERTY_PING_INTERVAL, 5000);
}
- public void setPingInterval(Integer interval) {
- setInstanceProperty(PROPERTY_PING_INTERVAL, interval.toString());
+ public void setPingInterval(int interval) {
+ setAttribute(PROPERTY_PING_INTERVAL, interval);
}
@@ -1052,11 +1100,10 @@ public class GeronimoServerDelegate exte
// PROPERTY_MAX_PINGS
//
public int getMaxPings() {
- String maxPings = getInstanceProperty(PROPERTY_MAX_PINGS);
- return Integer.parseInt(maxPings);
+ return getAttribute(PROPERTY_MAX_PINGS, 40);
}
- public void setMaxPings(Integer maxPings) {
- setInstanceProperty(PROPERTY_MAX_PINGS, maxPings.toString());
+ public void setMaxPings(int maxPings) {
+ setAttribute(PROPERTY_MAX_PINGS, maxPings);
}
@@ -1064,11 +1111,11 @@ public class GeronimoServerDelegate exte
// PROPERTY_PUBLISH_TIMEOUT
//
public long getPublishTimeout() {
- String timeout = getInstanceProperty(PROPERTY_PUBLISH_TIMEOUT);
- return Long.parseLong(timeout);
+ String value = getAttribute(PROPERTY_PUBLISH_TIMEOUT, "900000");
+ return Long.parseLong(value);
}
public void setPublishTimeout(long timeout) {
- setInstanceProperty(PROPERTY_PUBLISH_TIMEOUT, Long.toString(timeout));
+ setAttribute(PROPERTY_PUBLISH_TIMEOUT, String.valueOf(timeout));
}
@@ -1187,23 +1234,9 @@ public class GeronimoServerDelegate exte
}
return null;
}
-
- public String getInstanceProperty(String name) {
- return (String) getServerInstanceProperties().get(name);
- }
-
- public void setInstanceProperty(String name, String value) {
- Map map = getServerInstanceProperties();
- map.put(name, value);
- setServerInstanceProperties(map);
- }
-
- public Map getServerInstanceProperties() {
- return getAttribute(GeronimoRuntimeDelegate.SERVER_INSTANCE_PROPERTIES, new HashMap());
- }
-
- public void setServerInstanceProperties(Map map) {
- setAttribute(GeronimoRuntimeDelegate.SERVER_INSTANCE_PROPERTIES, map);
+
+ private String getAttribute(String name) {
+ return getAttribute(name, (String) null);
}
}
Added: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/util/ConfigSubstitutionsHelper.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/util/ConfigSubstitutionsHelper.java?rev=1459957&view=auto
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/util/ConfigSubstitutionsHelper.java (added)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/util/ConfigSubstitutionsHelper.java Fri Mar 22 19:50:37 2013
@@ -0,0 +1,101 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.geronimo.st.v30.core.util;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.util.Properties;
+
+import org.apache.geronimo.kernel.util.IOUtils;
+import org.apache.geronimo.st.v30.core.Activator;
+import org.apache.geronimo.st.v30.core.internal.Trace;
+import org.eclipse.core.runtime.IPath;
+
+
+public class ConfigSubstitutionsHelper {
+
+ private static final String INSTRUCTION = ("# Put variables and their substitution values in this file. \n"
+ + "# They will be used when processing the corresponding config.xml. \n"
+ + "# Values in this file can be overridden by environment variables and system properties \n"
+ + "# by prefixing the property name with 'org.apache.geronimo.config.substitution.' \n"
+ + "# For example, an entry such as hostName=localhost \n"
+ + "# can be overridden by an environment variable or system property org.apache.geronimo.config.substitution.hostName=foo \n"
+ + "# When running multiple instances of Geronimo choose a PortOffset value such that none of the ports conflict. \n"
+ + "# For example, try PortOffset=10 \n");
+
+ public static final String PORT_OFFSET = "PortOffset";
+ public static final String NAMING_PORT = "NamingPort";
+ public static final String HTTP_PORT = "HTTPPort";
+
+ private final File configSubstitutionsFile;
+ private Properties properties;
+ private boolean dirty;
+
+ public ConfigSubstitutionsHelper(IPath installDirectory) {
+ configSubstitutionsFile = installDirectory.append("var/config/config-substitutions.properties").toFile();
+ }
+
+ public void load() {
+ properties = new Properties();
+ InputStream in = null;
+ try {
+ in = new FileInputStream(configSubstitutionsFile);
+ properties.load(in);
+ } catch (Exception e) {
+ // ignore - file does not have to be there
+ } finally {
+ IOUtils.close(in);
+ }
+ }
+
+ public void store() {
+ if (dirty) {
+ save();
+ dirty = false;
+ }
+ }
+
+ private void save() {
+ OutputStream out = null;
+ try {
+ out = new FileOutputStream(configSubstitutionsFile);
+ properties.store(out, INSTRUCTION);
+ } catch (Exception e) {
+ Trace.trace(Trace.ERROR, "Error saving config-substitutions.properties file", e, Activator.traceCore);
+ } finally {
+ IOUtils.close(out);
+ }
+ }
+
+ public String getProperty(String name) {
+ return properties.getProperty(name);
+ }
+
+ public String getProperty(String name, String defaultValue) {
+ return properties.getProperty(name, defaultValue);
+ }
+
+ public void setProperty(String name, String value) {
+ Object oldValue = properties.setProperty(name, value);
+ if (oldValue == null || !oldValue.equals(value)) {
+ dirty = true;
+ }
+ }
+}
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/util/ConfigSubstitutionsHelper.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/util/ConfigSubstitutionsHelper.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.core/src/main/java/org/apache/geronimo/st/v30/core/util/ConfigSubstitutionsHelper.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/NumericVerifyListener.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/NumericVerifyListener.java?rev=1459957&view=auto
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/NumericVerifyListener.java (added)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/NumericVerifyListener.java Fri Mar 22 19:50:37 2013
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.geronimo.st.v30.ui;
+
+import org.eclipse.swt.events.VerifyEvent;
+import org.eclipse.swt.events.VerifyListener;
+
+public class NumericVerifyListener implements VerifyListener {
+
+ @Override
+ public void verifyText(VerifyEvent e) {
+ String text = e.text;
+ int length = text.length();
+ for (int i = 0; i < length; i++) {
+ char ch = text.charAt(i);
+ if (!('0' <= ch && ch <= '9')) {
+ e.doit = false;
+ break;
+ }
+ }
+ }
+}
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/NumericVerifyListener.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/NumericVerifyListener.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/NumericVerifyListener.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/devtools/eclipse-plugin/trunk/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/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/actions/LaunchGeronimoConsoleAction.java?rev=1459957&r1=1459956&r2=1459957&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/actions/LaunchGeronimoConsoleAction.java (original)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/actions/LaunchGeronimoConsoleAction.java Fri Mar 22 19:50:37 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;
}
Added: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/CheckSetPropertyCommand.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/CheckSetPropertyCommand.java?rev=1459957&view=auto
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/CheckSetPropertyCommand.java (added)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/CheckSetPropertyCommand.java Fri Mar 22 19:50:37 2013
@@ -0,0 +1,48 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.geronimo.st.v30.ui.commands;
+
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.wst.server.core.IServerWorkingCopy;
+
+public class CheckSetPropertyCommand extends SetPropertyCommand {
+
+ private Button checkButton;
+
+ public CheckSetPropertyCommand(IServerWorkingCopy server, String propertyName, Button checkButton) {
+ super(server, propertyName, boolean.class, checkButton.getSelection());
+ this.checkButton = checkButton;
+ }
+
+ public IStatus undo(IProgressMonitor monitor, IAdaptable adapt) {
+ IStatus status = super.undo(monitor, adapt);
+ if (status.isOK()) {
+ checkButton.setData("undo");
+ boolean value = !((Boolean)newValue).booleanValue();
+ checkButton.setSelection(value);
+ // setSelection does not fire Selection event so have to do it manually
+ checkButton.notifyListeners(SWT.Selection, new Event());
+ }
+ return status;
+ }
+
+}
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/CheckSetPropertyCommand.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/CheckSetPropertyCommand.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/CheckSetPropertyCommand.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/devtools/eclipse-plugin/trunk/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/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/ServerCommand.java?rev=1459957&r1=1459956&r2=1459957&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/ServerCommand.java (original)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/ServerCommand.java Fri Mar 22 19:50:37 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;
+ }
}
Added: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPropertyCommand.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPropertyCommand.java?rev=1459957&view=auto
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPropertyCommand.java (added)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPropertyCommand.java Fri Mar 22 19:50:37 2013
@@ -0,0 +1,109 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.geronimo.st.v30.ui.commands;
+
+import java.lang.reflect.Method;
+
+import org.apache.geronimo.st.v30.core.GeronimoServerDelegate;
+import org.apache.geronimo.st.v30.ui.Activator;
+import org.apache.geronimo.st.v30.ui.internal.Trace;
+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;
+
+public class SetPropertyCommand extends AbstractOperation {
+
+ protected final IServerWorkingCopy server;
+ protected GeronimoServerDelegate gs;
+
+ protected Object newValue;
+ protected Object oldValue;
+
+ private final String propertyName;
+ private final Class<?> propertyType;
+
+ private Method getterMethod;
+ private Method setterMethod;
+
+ public SetPropertyCommand(IServerWorkingCopy server, String propertyName, Class<?> propertyType, Object newValue) {
+ super(propertyName);
+ this.server = server;
+ this.propertyName = propertyName;
+ this.propertyType = propertyType;
+ this.newValue = newValue;
+ }
+
+ private void init() throws Exception {
+ try {
+ this.getterMethod = GeronimoServerDelegate.class.getMethod("get" + propertyName);
+ } catch (NoSuchMethodException e) {
+ this.getterMethod = GeronimoServerDelegate.class.getMethod("is" + propertyName);
+ }
+
+ String setterName = "set" + propertyName;
+ this.setterMethod = GeronimoServerDelegate.class.getMethod(setterName, new Class[] {propertyType} );
+ }
+
+ public IStatus execute(IProgressMonitor monitor, IAdaptable adapt) {
+ try {
+ init();
+ } catch (Exception e) {
+ Trace.trace(Trace.ERROR, "Internal operation error", e, Activator.logUi);
+ return new Status(Status.ERROR, Activator.PLUGIN_ID, "Internal operation error", e);
+ }
+
+ GeronimoServerDelegate gs = getGeronimoServerDelegate();
+
+ try {
+ oldValue = getterMethod.invoke(gs);
+ setterMethod.invoke(gs, new Object[] {newValue});
+ } catch (Exception e) {
+ Trace.trace(Trace.ERROR, "Error setting " + propertyName + " property", e, Activator.logUi);
+ return new Status(Status.ERROR, Activator.PLUGIN_ID, "Error setting " + propertyName + " property", e);
+ }
+
+ return Status.OK_STATUS;
+ }
+
+ public IStatus undo(IProgressMonitor monitor, IAdaptable adapt) {
+ if (gs != null) {
+ try {
+ setterMethod.invoke(gs, new Object[] {oldValue});
+ } catch (Exception e) {
+ Trace.trace(Trace.ERROR, "Error unsetting " + propertyName + " property", e, Activator.logUi);
+ return new Status(Status.ERROR, Activator.PLUGIN_ID, "Error unsetting " + propertyName + " property", e);
+ }
+ }
+ 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;
+ }
+}
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPropertyCommand.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPropertyCommand.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPropertyCommand.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/devtools/eclipse-plugin/trunk/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/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPublishTimeoutCommand.java?rev=1459957&r1=1459956&r2=1459957&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPublishTimeoutCommand.java (original)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/SetPublishTimeoutCommand.java Fri Mar 22 19:50:37 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;
}
+
}
Added: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/TextSetPropertyCommand.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/TextSetPropertyCommand.java?rev=1459957&view=auto
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/TextSetPropertyCommand.java (added)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/TextSetPropertyCommand.java Fri Mar 22 19:50:37 2013
@@ -0,0 +1,43 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.geronimo.st.v30.ui.commands;
+
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.wst.server.core.IServerWorkingCopy;
+
+public class TextSetPropertyCommand extends SetPropertyCommand {
+
+ private Text text;
+
+ public TextSetPropertyCommand(IServerWorkingCopy server, String propertyName, Class<?> propertyType, Object newValue, Text text) {
+ super(server, propertyName, propertyType, newValue);
+ this.text = text;
+ }
+
+ public IStatus undo(IProgressMonitor monitor, IAdaptable adapt) {
+ IStatus status = super.undo(monitor, adapt);
+ if (status.isOK()) {
+ text.setData("undo");
+ text.setText(String.valueOf(oldValue));
+ }
+ return status;
+ }
+
+}
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/TextSetPropertyCommand.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/TextSetPropertyCommand.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/commands/TextSetPropertyCommand.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/devtools/eclipse-plugin/trunk/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/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/GeronimoServerWizardFragment.java?rev=1459957&r1=1459956&r2=1459957&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/GeronimoServerWizardFragment.java (original)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/GeronimoServerWizardFragment.java Fri Mar 22 19:50:37 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,59 @@ 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) {
+ getGeronimoServer().setPortOffset(Integer.parseInt(portOffset.getText()));
}
- }
- 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/trunk/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/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.java?rev=1459957&r1=1459956&r2=1459957&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.java (original)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.java Fri Mar 22 19:50:37 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/trunk/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/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.properties?rev=1459957&r1=1459956&r2=1459957&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.properties (original)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/internal/Messages.properties Fri Mar 22 19:50:37 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.
Added: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/PortEditor.java
URL: http://svn.apache.org/viewvc/geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/PortEditor.java?rev=1459957&view=auto
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/PortEditor.java (added)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/PortEditor.java Fri Mar 22 19:50:37 2013
@@ -0,0 +1,149 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.geronimo.st.v30.ui.sections;
+
+import org.apache.geronimo.st.v30.core.GeronimoServerDelegate;
+import org.apache.geronimo.st.v30.ui.NumericVerifyListener;
+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.graphics.Font;
+import org.eclipse.swt.graphics.FontData;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.wst.server.core.IServerWorkingCopy;
+
+public abstract class PortEditor {
+
+ private IServerWorkingCopy server;
+ private Text portOffset;
+ private Text httpPort;
+ private Text rmiPort;
+ private Label rmiPortLabel;
+ private Label httpPortLabel;
+
+ public PortEditor(IServerWorkingCopy server) {
+ this.server = server;
+ }
+
+ public void init(Composite composite) {
+
+ final GeronimoServerDelegate delegate = getGeronimoServer();
+
+ // ------- Label and text field for the port offset -------
+ createLabel(composite, Messages.portOffset);
+
+ portOffset = createText(composite, String.valueOf(delegate.getPortOffset()), SWT.BORDER);
+ portOffset.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
+ portOffset.addModifyListener(new ModifyListener() {
+ public void modifyText(ModifyEvent e) {
+ if (portOffset.getData() == null) {
+ setPortOffset(portOffset);
+ } else {
+ portOffset.setData(null);
+ }
+ httpPortLabel.setText(getActualHttpPortText());
+ rmiPortLabel.setText(getActualRmiPortText());
+ }
+ });
+ portOffset.addVerifyListener(new NumericVerifyListener());
+
+ createLabel(composite, "");
+
+
+ // ------- Label and text field for the http port -------
+ createLabel(composite, Messages.httpPort);
+
+ httpPort = createText(composite, delegate.getHTTPPort(), SWT.BORDER);
+ httpPort.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
+ httpPort.addModifyListener(new ModifyListener() {
+ public void modifyText(ModifyEvent e) {
+ if (httpPort.getData() == null) {
+ setHttpPort(httpPort);
+ } else {
+ httpPort.setData(null);
+ }
+ httpPortLabel.setText(getActualHttpPortText());
+ }
+ });
+ httpPort.addVerifyListener(new NumericVerifyListener());
+
+ httpPortLabel = createItalicLabel(composite, getActualHttpPortText());
+ httpPortLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false));
+
+ // ------- Label and text field for the rmi port -------
+ createLabel(composite, Messages.rmiPort);
+
+ rmiPort = createText(composite, delegate.getRMINamingPort(), SWT.BORDER);
+ rmiPort.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false));
+ rmiPort.addModifyListener(new ModifyListener() {
+ public void modifyText(ModifyEvent e) {
+ if (rmiPort.getData() == null) {
+ setRmiPort(rmiPort);
+ } else {
+ rmiPort.setData(null);
+ }
+ rmiPortLabel.setText(getActualRmiPortText());
+ }
+ });
+ rmiPort.addVerifyListener(new NumericVerifyListener());
+
+ rmiPortLabel = createItalicLabel(composite, getActualRmiPortText());
+ rmiPortLabel.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false));
+ }
+
+ private String getActualRmiPortText() {
+ GeronimoServerDelegate delegate = getGeronimoServer();
+ return "Actual: " + delegate.getActualRMINamingPort() + " ";
+ }
+
+ private String getActualHttpPortText() {
+ GeronimoServerDelegate delegate = getGeronimoServer();
+ return "Actual: " + delegate.getActualHTTPPort() + " ";
+ }
+
+ protected abstract void setPortOffset(Text portOffset);
+
+ protected abstract void setRmiPort(Text rmiPort);
+
+ protected abstract void setHttpPort(Text httpPort);
+
+
+
+ protected Label createItalicLabel(Composite parent, String text) {
+ Label l = createLabel(parent, text);
+ FontData fontData = l.getFont().getFontData()[0];
+ Font font = new Font(l.getDisplay(), new FontData(fontData.getName(), fontData.getHeight(), SWT.ITALIC));
+ l.setFont(font);
+ return l;
+ }
+
+ protected abstract Label createLabel(Composite parent, String text);
+
+ protected abstract Text createText(Composite parent, String value, int style);
+
+ protected GeronimoServerDelegate getGeronimoServer() {
+ GeronimoServerDelegate gs = (GeronimoServerDelegate) server.getAdapter(GeronimoServerDelegate.class);
+ if (gs == null)
+ gs = (GeronimoServerDelegate) server.loadAdapter(GeronimoServerDelegate.class, null);
+ return gs;
+ }
+
+}
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/PortEditor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/PortEditor.java
------------------------------------------------------------------------------
svn:keywords = Date Revision
Propchange: geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/PortEditor.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: geronimo/devtools/eclipse-plugin/trunk/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/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorCleanOSGiBundleCacheSection.java?rev=1459957&r1=1459956&r2=1459957&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorCleanOSGiBundleCacheSection.java (original)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorCleanOSGiBundleCacheSection.java Fri Mar 22 19:50:37 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/trunk/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/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorKarafShellSection.java?rev=1459957&r1=1459956&r2=1459957&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorKarafShellSection.java (original)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorKarafShellSection.java Fri Mar 22 19:50:37 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/trunk/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/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPortsSection.java?rev=1459957&r1=1459956&r2=1459957&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPortsSection.java (original)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPortsSection.java Fri Mar 22 19:50:37 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 = Integer.parseInt(portOffset.getText());
+ 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/trunk/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/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPublishAdvancedSection.java?rev=1459957&r1=1459956&r2=1459957&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPublishAdvancedSection.java (original)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorPublishAdvancedSection.java Fri Mar 22 19:50:37 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;
@@ -86,13 +85,17 @@ public class ServerEditorPublishAdvanced
publishTimeout = new Spinner(composite, SWT.BORDER);
publishTimeout.setMinimum(0);
- publishTimeout.setIncrement(5);
- publishTimeout.setMaximum(900);
+ publishTimeout.setIncrement(60);
+ publishTimeout.setMaximum(60 * 60 * 4); // 4 hours
publishTimeout.setSelection((int) gs.getPublishTimeout() / 1000);
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);
+ }
}
});
@@ -100,7 +103,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 +182,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 +195,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/trunk/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/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorSecuritySection.java?rev=1459957&r1=1459956&r2=1459957&view=diff
==============================================================================
--- geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorSecuritySection.java (original)
+++ geronimo/devtools/eclipse-plugin/trunk/plugins/org.apache.geronimo.st.v30.ui/src/main/java/org/apache/geronimo/st/v30/ui/sections/ServerEditorSecuritySection.java Fri Mar 22 19:50:37 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 -----