Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoritrimble2011-03-24 20:22:12 +0000
committeritrimble2011-03-24 20:22:12 +0000
commit6ab47376d5c0f6edf9e6d5bab968cb7e04483970 (patch)
treec560701845e4fbfa3f3adde9d1cb72c174aca653 /jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse
parent4f0b87e93ac26f4013f034a62f1c741c98680bf9 (diff)
downloadwebtools.jsf-6ab47376d5c0f6edf9e6d5bab968cb7e04483970.tar.gz
webtools.jsf-6ab47376d5c0f6edf9e6d5bab968cb7e04483970.tar.xz
webtools.jsf-6ab47376d5c0f6edf9e6d5bab968cb7e04483970.zip
Bug 291054 - faces-config should be checked out if the user tries to modify it
Diffstat (limited to 'jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse')
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/FacesConfigEditor.java8
-rw-r--r--jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/PageflowEditor.java12
2 files changed, 20 insertions, 0 deletions
diff --git a/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/FacesConfigEditor.java b/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/FacesConfigEditor.java
index cfe4ed47a..daf536e27 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/FacesConfigEditor.java
+++ b/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/FacesConfigEditor.java
@@ -356,6 +356,14 @@ public class FacesConfigEditor extends FormEditor implements
return;
}
+ //Bug 291054 - faces-config should be checked out if the user tries to modify it
+ if (input instanceof IFileEditorInput) {
+ IFile file = ((IFileEditorInput)input).getFile();
+ if (file.isReadOnly()) {
+ file.getWorkspace().validateEdit(new IFile[]{file}, site != null ? site.getShell() : null);
+ }
+ }
+
//Bug 191494 - Unable to switch pages in faces config editor without mouse
// Activate plugin context
IContextService contextService = (IContextService) getSite()
diff --git a/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/PageflowEditor.java b/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/PageflowEditor.java
index f65230ac2..cbdcf9734 100644
--- a/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/PageflowEditor.java
+++ b/jsf/plugins/org.eclipse.jst.jsf.facesconfig.ui/src/org/eclipse/jst/jsf/facesconfig/ui/pageflow/PageflowEditor.java
@@ -25,6 +25,8 @@ import org.eclipse.core.resources.IResourceChangeEvent;
import org.eclipse.core.resources.IResourceChangeListener;
import org.eclipse.core.resources.IResourceDelta;
import org.eclipse.core.resources.IResourceDeltaVisitor;
+import org.eclipse.core.resources.IWorkspace;
+import org.eclipse.core.resources.ResourcesPlugin;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.core.runtime.IConfigurationElement;
@@ -534,6 +536,16 @@ public class PageflowEditor extends GraphicalEditorWithFlyoutPalette implements
// save pageflow to file
try {
+ //Bug 291054 - faces-config should be checked out if the user tries to modify it
+ IPath pageFlowFilePath = getPageflowFilePath(file);
+ if (pageFlowFilePath != null) {
+ IWorkspace workspace = ResourcesPlugin.getWorkspace();
+ IFile pageFlowFile = workspace.getRoot().getFile(pageFlowFilePath);
+ if (pageFlowFile != null && pageFlowFile.isReadOnly()) {
+ workspace.validateEdit(new IFile[]{pageFlowFile}, getEditorSite() != null ? getEditorSite().getShell() : null);
+ }
+ }
+
getPageflowManager().save(getPageflowFilePath(file));
progressMonitor.worked(1);

Back to the top