Skip to main content

This CGIT instance is deprecated, and repositories have been moved to Gitlab or Github. See the repository descriptions for specific locations.

summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerUtil.java52
-rw-r--r--plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ResourceManager.java220
-rw-r--r--plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Server.java6
-rw-r--r--plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerWorkingCopy.java17
-rw-r--r--plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/Messages.java1
-rw-r--r--plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/Messages.properties1
-rw-r--r--plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/editor/ServerEditor.java41
7 files changed, 195 insertions, 143 deletions
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerUtil.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerUtil.java
index ca6f2907b..6b15a846b 100644
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerUtil.java
+++ b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/ServerUtil.java
@@ -19,12 +19,7 @@ import org.eclipse.core.runtime.IStatus;
import org.eclipse.debug.core.ILaunchConfiguration;
import org.eclipse.osgi.util.NLS;
-import org.eclipse.wst.server.core.internal.IModuleVisitor;
-import org.eclipse.wst.server.core.internal.Messages;
-import org.eclipse.wst.server.core.internal.ModuleFactory;
-import org.eclipse.wst.server.core.internal.Server;
-import org.eclipse.wst.server.core.internal.ServerPlugin;
-import org.eclipse.wst.server.core.internal.Trace;
+import org.eclipse.wst.server.core.internal.*;
/**
* Server utility methods. These static methods can be used to perform
* common operations on server artifacts.
@@ -418,7 +413,7 @@ public class ServerUtil {
* @param type a server type
* @return an unused file within the given project
*/
- public static IFile getUnusedServerFile(IProject project, IServerType type) {
+ /*public static IFile getUnusedServerFile(IProject project, IServerType type) {
if (project == null || type == null)
throw new IllegalArgumentException();
@@ -430,6 +425,27 @@ public class ServerUtil {
i++;
}
return project.getFile(name);
+ }*/
+
+ /**
+ * Returns an unused file in the given project.
+ *
+ * @param project a project
+ * @param server a server
+ * @return an unused file within the given project
+ */
+ public static IFile getUnusedServerFile(IProject project, IServer server) {
+ if (project == null || server == null)
+ throw new IllegalArgumentException();
+
+ String typeName = getValidFileName(server.getName());
+ String name = NLS.bind(Messages.defaultServerName3, typeName)+ "." + Server.FILE_EXTENSION;
+ int i = 2;
+ while (isFileNameInUse(project, name)) {
+ name = NLS.bind(Messages.defaultServerName4, new String[] {typeName, i + ""}) + "." + Server.FILE_EXTENSION;
+ i++;
+ }
+ return project.getFile(name);
}
/**
@@ -722,4 +738,26 @@ public class ServerUtil {
public static IStatus validateEdit(Object context, IServer server) {
return ((Server)server).validateEdit(context);
}
+
+ /**
+ * Returns the port that is being used to monitor the given port on the server.
+ * This method can be used whenever creating a 'client' for the server, and allows
+ * the client to seamlessly use a monitored port instead of going directly to the
+ * server.
+ *
+ * <b>Provisional API:</b> This class/interface is part of an interim API that is still under development and expected to
+ * change significantly before reaching stability. It is being made available at this early stage to solicit feedback
+ * from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken
+ * (repeatedly) as the API evolves.
+ * </p>
+ *
+ * @param server a server
+ * @param port a port on the server
+ * @param contentType the content type, e.g. "web"
+ * @return the monitored port, or the original port number if the port is not
+ * currently being monitored
+ */
+ public static int getMonitoredPort(IServer server, int port, String contentType) {
+ return ServerMonitorManager.getInstance().getMonitoredPort(server, port, contentType);
+ }
} \ No newline at end of file
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ResourceManager.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ResourceManager.java
index 7f99d3b8e..c4f9b43e5 100644
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ResourceManager.java
+++ b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ResourceManager.java
@@ -24,7 +24,7 @@ import org.eclipse.wst.server.core.util.ProjectModuleFactoryDelegate;
* and servers or server configurations, and creates
* notification of servers or server configurations
* being added and removed.
- *
+ *
* <p>Servers and server configurations may be a single
* resource, or they may be a folder that contains a group
* of files. Folder-resource may not contain other servers
@@ -52,12 +52,13 @@ public class ResourceManager {
protected List activeBundles;
// resource change listeners
- private IResourceChangeListener modelResourceChangeListener;
- private IResourceChangeListener publishResourceChangeListener;
+ private IResourceChangeListener resourceChangeListener;
private Preferences.IPropertyChangeListener pcl;
protected boolean ignorePreferenceChanges = false;
/**
+ * Server resource change listener.
+ *
* Resource listener - tracks changes on server resources so that
* we can reload/drop server instances and configurations that
* may change outside of our control.
@@ -69,11 +70,11 @@ public class ResourceManager {
* attached to the project at this point - OTI defect)
* 2. Projects being deleted.
*/
- public class ServerModelResourceChangeListener implements IResourceChangeListener {
+ public class ServerResourceChangeListener implements IResourceChangeListener {
/**
- * Create a new ServerModelResourceChangeListener.
+ * Create a new ServerResourceChangeListener.
*/
- public ServerModelResourceChangeListener() {
+ public ServerResourceChangeListener() {
super();
}
@@ -87,7 +88,7 @@ public class ResourceManager {
if (delta == null)
return;
- Trace.trace(Trace.RESOURCES, "->- ServerModelResourceManager responding to resource change: " + event.getType() + " ->-");
+ Trace.trace(Trace.RESOURCES, "->- ServerResourceChangeListener responding to resource change: " + event.getType() + " ->-");
IResourceDelta[] children = delta.getAffectedChildren();
if (children != null) {
int size = children.length;
@@ -98,10 +99,28 @@ public class ResourceManager {
}
}
}
-
- Trace.trace(Trace.RESOURCES, "-<- Done ServerModelResourceManager responding to resource change -<-");
+
+ // search for changes to any project using a visitor
+ try {
+ delta.accept(new IResourceDeltaVisitor() {
+ public boolean visit(IResourceDelta visitorDelta) {
+ IResource resource = visitorDelta.getResource();
+
+ // only respond to project changes
+ if (resource != null && resource instanceof IProject) {
+ publishHandleProjectChange(visitorDelta);
+ return false;
+ }
+ return true;
+ }
+ });
+ } catch (Exception e) {
+ Trace.trace(Trace.SEVERE, "Error responding to resource change", e);
+ }
+
+ Trace.trace(Trace.RESOURCES, "-<- Done ServerResourceChangeListener responding to resource change -<-");
}
-
+
/**
* React to a change within a possible server project.
*
@@ -132,49 +151,6 @@ public class ResourceManager {
}
}
}
-
- /**
- * Publish resource listener
- */
- public class PublishResourceChangeListener implements IResourceChangeListener {
- /**
- * Create a new PublishResourceChangeListener.
- */
- public PublishResourceChangeListener() {
- super();
- }
-
- /**
- * Listen for projects being added or removed and act accordingly.
- *
- * @param event org.eclipse.core.resources.IResourceChangeEvent
- */
- public void resourceChanged(IResourceChangeEvent event) {
- IResourceDelta delta = event.getDelta();
- if (delta == null)
- return;
-
- Trace.trace(Trace.FINEST, "->- PublishResourceManager responding to resource change: " + event.getType() + " ->-");
- // search for changes to any project using a visitor
- try {
- delta.accept(new IResourceDeltaVisitor() {
- public boolean visit(IResourceDelta visitorDelta) {
- IResource resource = visitorDelta.getResource();
-
- // only respond to project changes
- if (resource != null && resource instanceof IProject) {
- publishHandleProjectChange(visitorDelta);
- return false;
- }
- return true;
- }
- });
- } catch (Exception e) {
- Trace.trace(Trace.SEVERE, "Error responding to resource change", e);
- }
- Trace.trace(Trace.FINEST, "-<- Done PublishResourceManager responding to resource change -<-");
- }
- }
protected List moduleServerEventHandlers;
protected List moduleServerEventHandlerIndexes;
@@ -211,15 +187,11 @@ public class ResourceManager {
ServerPlugin.getInstance().getPluginPreferences().addPropertyChangeListener(pcl);
resolveServers();
-
+
// keep track of future changes to the file system
- modelResourceChangeListener = new ServerModelResourceChangeListener();
- ResourcesPlugin.getWorkspace().addResourceChangeListener(modelResourceChangeListener, IResourceChangeEvent.POST_CHANGE | IResourceChangeEvent.PRE_CLOSE | IResourceChangeEvent.PRE_DELETE);
-
- // add listener for future changes
- publishResourceChangeListener = new PublishResourceChangeListener();
- ResourcesPlugin.getWorkspace().addResourceChangeListener(publishResourceChangeListener, IResourceChangeEvent.POST_CHANGE | IResourceChangeEvent.PRE_DELETE);
-
+ resourceChangeListener = new ServerResourceChangeListener();
+ ResourcesPlugin.getWorkspace().addResourceChangeListener(resourceChangeListener, IResourceChangeEvent.POST_CHANGE | IResourceChangeEvent.PRE_CLOSE | IResourceChangeEvent.PRE_DELETE);
+
/*configurationListener = new IServerConfigurationListener() {
public void childProjectChange(IServerConfiguration configuration) {
handleConfigurationChildProjectsChange(configuration);
@@ -336,10 +308,8 @@ public class ResourceManager {
protected void shutdownImpl() {
IWorkspace workspace = ResourcesPlugin.getWorkspace();
- if (workspace != null) {
- workspace.removeResourceChangeListener(modelResourceChangeListener);
- workspace.removeResourceChangeListener(publishResourceChangeListener);
- }
+ if (workspace != null)
+ workspace.removeResourceChangeListener(resourceChangeListener);
ServerPlugin.getInstance().getPluginPreferences().removePropertyChangeListener(pcl);
@@ -742,25 +712,30 @@ public class ResourceManager {
*/
protected boolean handleResourceDelta(IResourceDelta delta) {
int kind = delta.getKind();
+ int flags = delta.getFlags();
IResource resource2 = delta.getResource();
-
+
// ignore markers
- if (kind == IResourceDelta.CHANGED && (delta.getFlags() & IResourceDelta.MARKERS) != 0)
+ if (kind == IResourceDelta.CHANGED && (flags & IResourceDelta.MARKERS) != 0)
return false;
-
+
Trace.trace(Trace.RESOURCES, "Resource changed: " + resource2 + " " + kind);
if (resource2 instanceof IFile) {
IFile file = (IFile) resource2;
- IProgressMonitor monitor = null;
- if (kind == IResourceDelta.ADDED) {
- handleNewFile(file, monitor);
- } else if (kind == IResourceDelta.REMOVED) {
- handleRemovedFile(file);
- } else
- handleChangedFile(file, monitor);
- if (monitor != null)
- monitor.done();
+ if (Server.FILE_EXTENSION.equals(file.getFileExtension())) {
+ IProgressMonitor monitor = null;
+ if ((flags & IResourceDelta.MOVED_FROM) != 0 || (flags & IResourceDelta.MOVED_TO) != 0)
+ handleMovedFile(file, delta, monitor);
+ else if (kind == IResourceDelta.ADDED)
+ handleNewFile(file, monitor);
+ else if (kind == IResourceDelta.REMOVED)
+ handleRemovedFile(file);
+ else
+ handleChangedFile(file, monitor);
+ if (monitor != null)
+ monitor.done();
+ }
return false;
}
IFolder folder = (IFolder) resource2;
@@ -777,39 +752,6 @@ public class ResourceManager {
}
}
return true;
-
- /*IProgressMonitor monitor = new NullProgressMonitor();
- List list = getResourceParentList(resource2);
- monitor.beginTask("", list.size() * 1000);
-
- Iterator iterator = list.iterator();
- while (iterator.hasNext()) {
- IResource resource = (IResource) iterator.next();
- if (!visited.contains(resource.getFullPath())) {
- visited.add(resource.getFullPath());
- if (kind == IResourceDelta.REMOVED) {
- boolean b = handleRemovedFile(resource);
- if (b) {
- if (resource instanceof IContainer)
- removeServerResourcesBelow((IContainer) resource);
- return false;
- } else
- return true;
- } else if (kind == IResourceDelta.ADDED) {
- return !handleNewServerResource(resource, monitor);
- } else {
- boolean b = handleChangedServerResource(resource, monitor);
- if (!b) {
- handleRemovedFile(resource);
- }
- return true;
- }
- }
- }
-
- monitor.done();
- Trace.trace(Trace.RESOURCES, "Ignored resource change: " + resource2);
- return true;*/
}
protected IServer loadServer(IFile file, IProgressMonitor monitor) throws CoreException {
@@ -845,11 +787,50 @@ public class ResourceManager {
Trace.trace(Trace.SEVERE, "Error loading server", e);
}
}
-
+
monitor.done();
return false;
}
-
+
+ /**
+ * Tries to load a new server resource from the given resource.
+ * Returns true if the load and register were successful.
+ *
+ * @param file
+ * @param monitor
+ * @return boolean
+ */
+ protected boolean handleMovedFile(IFile file, IResourceDelta delta, IProgressMonitor monitor) {
+ Trace.trace(Trace.RESOURCES, "handleMovedFile: " + file);
+ monitor = ProgressUtil.getMonitorFor(monitor);
+ monitor.beginTask("", 2000);
+
+ IPath fromPath = delta.getMovedFromPath();
+ if (fromPath != null) {
+ IFile fromFile = ResourcesPlugin.getWorkspace().getRoot().getFile(fromPath);
+ if (((ProjectProperties)ServerCore.getProjectProperties(fromFile.getProject())).isServerProject()) {
+ Server server = (Server) findServer(fromFile);
+ if (server != null)
+ server.file = file;
+ } else {
+ handleNewFile(file, monitor);
+ }
+ } else {
+ IPath toPath = delta.getMovedToPath();
+ IFile toFile = ResourcesPlugin.getWorkspace().getRoot().getFile(toPath);
+ if (((ProjectProperties)ServerCore.getProjectProperties(toFile.getProject())).isServerProject()) {
+ Server server = (Server) findServer(file);
+ if (server != null)
+ server.file = toFile;
+ } else {
+ handleRemovedFile(file);
+ }
+ }
+
+ monitor.done();
+ return false;
+ }
+
/**
* Returns the server that came from the given file, or <code>null</code>
* if none. This convenience method searches the list of known
@@ -900,10 +881,9 @@ public class ResourceManager {
Trace.trace(Trace.SEVERE, "Error reloading server " + server.getName() + " from " + file + ": " + e.getMessage());
deregisterServer(server);
}
- }
-
- Trace.trace(Trace.RESOURCES, "No server resource found at: " + file);
-
+ } else
+ Trace.trace(Trace.RESOURCES, "No server found at: " + file);
+
monitor.done();
return found;
}
@@ -916,15 +896,15 @@ public class ResourceManager {
* @return boolean
*/
protected boolean handleRemovedFile(IFile file) {
- Trace.trace(Trace.RESOURCES, "handleRemovedServerResource: " + file);
-
+ Trace.trace(Trace.RESOURCES, "handleRemovedFile: " + file);
+
IServer server = findServer(file);
if (server != null) {
deregisterServer(server);
return true;
}
-
- Trace.trace(Trace.RESOURCES, "No server resource found at: " + file);
+
+ Trace.trace(Trace.RESOURCES, "No server found at: " + file);
return false;
}
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Server.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Server.java
index b83c784b1..02491ddfb 100644
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Server.java
+++ b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/Server.java
@@ -969,7 +969,7 @@ public class Server extends Base implements IServer {
try {
ILaunchConfiguration launchConfig = getLaunchConfiguration(true, monitor);
- ILaunch launch = launchConfig.launch(mode2, monitor);
+ ILaunch launch = launchConfig.launch(mode2, monitor, true);
Trace.trace(Trace.FINEST, "Launch: " + launch);
} catch (CoreException e) {
Trace.trace(Trace.SEVERE, "Error starting server " + toString(), e);
@@ -1713,7 +1713,7 @@ public class Server extends Base implements IServer {
}
protected void setInternal(ServerWorkingCopy wc) {
- map = wc.map;
+ map = new HashMap(wc.map);
configuration = wc.configuration;
runtime = wc.runtime;
serverSyncState = wc.serverSyncState;
@@ -2062,7 +2062,7 @@ public class Server extends Base implements IServer {
server.delete();
if (file == null) {
IProject project = ServerType.getServerProject();
- file = ServerUtil.getUnusedServerFile(project, wc.getServerType());
+ file = ServerUtil.getUnusedServerFile(project, wc);
wc.setFile(file);
server.file = file;
} else {
diff --git a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerWorkingCopy.java b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerWorkingCopy.java
index bfdce4ffd..b60ae41d9 100644
--- a/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerWorkingCopy.java
+++ b/plugins/org.eclipse.wst.server.core/servercore/org/eclipse/wst/server/core/internal/ServerWorkingCopy.java
@@ -418,7 +418,22 @@ public class ServerWorkingCopy extends Server implements IServerWorkingCopy {
Trace.trace(Trace.SEVERE, "Error calling delegate setDefaults() " + toString(), e);
}
}
-
+
+ public void renameFiles(IProgressMonitor monitor) throws CoreException {
+ if (getServerConfiguration() != null) {
+ IFolder folder = getServerConfiguration();
+ IFolder folder2 = ServerType.getServerProject().getFolder(getName() + "-config");
+ folder.move(folder2.getFullPath(), true, true, monitor);
+ setServerConfiguration(folder2);
+ save(true, monitor);
+ }
+
+ if (file != null) {
+ IFile file2 = ServerUtil.getUnusedServerFile(file.getProject(), this);
+ file.move(file2.getFullPath(), true, true, monitor);
+ }
+ }
+
public String toString() {
return "ServerWorkingCopy " + getId();
}
diff --git a/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/Messages.java b/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/Messages.java
index af519319e..e345cd967 100644
--- a/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/Messages.java
+++ b/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/Messages.java
@@ -223,6 +223,7 @@ public class Messages extends NLS {
public static String viewSyncPublishing2;
public static String editorServerEditor;
public static String editorPromptIrreversible;
+ public static String editorRenameFiles;
public static String errorEditorCantSave;
public static String editorReadOnly;
public static String editorWritable;
diff --git a/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/Messages.properties b/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/Messages.properties
index e685f32fe..7b18578a6 100644
--- a/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/Messages.properties
+++ b/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/Messages.properties
@@ -391,6 +391,7 @@ editorReadOnlyFiles=Read Only files: {0}
editorServerEditor=Server Editor
editorPromptIrreversible=This operation cannot be undone. Do you want to proceed?
+editorRenameFiles=The server has been renamed. Do you want to rename the corresponding files to match?
# message if a dirty resource is deleted
editorResourceDeleteTitle=Server Deleted
diff --git a/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/editor/ServerEditor.java b/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/editor/ServerEditor.java
index 7aa9124df..42a8e1396 100644
--- a/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/editor/ServerEditor.java
+++ b/plugins/org.eclipse.wst.server.ui/serverui/org/eclipse/wst/server/ui/internal/editor/ServerEditor.java
@@ -32,6 +32,7 @@ import org.eclipse.ui.part.MultiPageEditorPart;
import org.eclipse.wst.server.core.*;
import org.eclipse.wst.server.core.internal.Server;
+import org.eclipse.wst.server.core.internal.ServerWorkingCopy;
import org.eclipse.wst.server.ui.ServerUICore;
import org.eclipse.wst.server.ui.editor.*;
import org.eclipse.wst.server.ui.internal.*;
@@ -101,6 +102,7 @@ public class ServerEditor extends MultiPageEditorPart {
protected IServerWorkingCopy server;
protected String serverId;
+ protected String serverName;
protected GlobalCommandManager commandManager;
@@ -143,7 +145,7 @@ public class ServerEditor extends MultiPageEditorPart {
super();
ISharedImages sharedImages = PlatformUI.getWorkbench().getSharedImages();
-
+
undoAction = new Action() {
public void run() {
getCommandManager().undo(serverId);
@@ -153,7 +155,7 @@ public class ServerEditor extends MultiPageEditorPart {
undoAction.setImageDescriptor(sharedImages.getImageDescriptor(ISharedImages.IMG_TOOL_UNDO));
//undoAction.setHoverImageDescriptor(sharedImages.getImageDescriptor(ISharedImages.IMG_TOOL_UNDO_HOVER));
//undoAction.setDisabledImageDescriptor(sharedImages.getImageDescriptor(ISharedImages.IMG_TOOL_UNDO_DISABLED));
-
+
redoAction = new Action() {
public void run() {
getCommandManager().redo(serverId);
@@ -269,7 +271,21 @@ public class ServerEditor extends MultiPageEditorPart {
if (resourceListener != null)
ServerCore.removeServerLifecycleListener(resourceListener);
-
+
+ if (serverName != null && !server.getName().equals(serverName)) {
+ // only prompt if the server is in the workspace or there is a configuration
+ if (server.getServerConfiguration() != null || ((Server)server).getFile() != null) {
+ String title = Messages.editorServerEditor;
+ String message = Messages.editorRenameFiles;
+ if (MessageDialog.openQuestion(getEditorSite().getShell(), title, message))
+ try {
+ ((ServerWorkingCopy)server).renameFiles(null);
+ } catch (Exception e) {
+ Trace.trace(Trace.SEVERE, "Error renaming server", e);
+ }
+ }
+ }
+
super.dispose();
if (commandManager != null)
commandManager.removePropertyChangeListener(listener);
@@ -288,7 +304,7 @@ public class ServerEditor extends MultiPageEditorPart {
* @see IEditorPart
*/
public void doSave(IProgressMonitor monitor) {
- // Set the isSaving flag to true.
+ // set the isSaving flag to true
isSaving = true;
// check pages for errors first
@@ -316,7 +332,7 @@ public class ServerEditor extends MultiPageEditorPart {
EclipseUtil.openError(getEditorSite().getShell(), sb.toString());
monitor.setCanceled(true);
- // Reset the isSaving flag.
+ // reset the isSaving flag
isSaving = false;
return;
}
@@ -330,7 +346,7 @@ public class ServerEditor extends MultiPageEditorPart {
monitor.beginTask(NLS.bind(Messages.savingTask, name), ticks);
if (server != null)
ticks /= 2;
-
+
if (server != null) {
server.save(false, ProgressUtil.getSubMonitorFor(monitor, ticks));
getCommandManager().resourceSaved(serverId);
@@ -341,17 +357,17 @@ public class ServerEditor extends MultiPageEditorPart {
if (server != null)
setPartName(labelProvider.getText(server));
} catch (Exception e) {
- Trace.trace(Trace.SEVERE, "Error saving from configuration editor", e);
-
+ Trace.trace(Trace.SEVERE, "Error saving server editor", e);
+
monitor.setCanceled(true);
-
+
String title = Messages.editorSaveErrorDialog;
String message = NLS.bind(Messages.editorSaveErrorMessage, e.getLocalizedMessage());
MessageDialog.openError(getEditorSite().getShell(), title, message);
} finally {
monitor.done();
}
- // Reset the isSaving flag.
+ // reset the isSaving flag
isSaving = false;
}
@@ -660,6 +676,7 @@ public class ServerEditor extends MultiPageEditorPart {
setPartName(labelProvider.getText(server));
setTitleImage(labelProvider.getImage(server));
setTitleToolTip(serverId);
+ serverName = server.getName();
} else
setPartName("-");
@@ -877,9 +894,9 @@ public class ServerEditor extends MultiPageEditorPart {
*
*/
protected void checkResourceState() {
- // Do not check the resource state change if saving through the editor.
+ // do not check the resource state change if saving through the editor
if (isSaving) {
- // Do nothing.
+ // do nothing
return;
}

Back to the top