Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Stepper2013-08-06 05:54:11 +0000
committerEike Stepper2013-08-06 05:54:11 +0000
commit6ad74a0ce6e398434eea992f14fef50818a74184 (patch)
tree7287ec84a5cd80432d92fdd31c0dbcb810e9948f
parent47f42aab01883e0017b968d0eb3e303510d7018e (diff)
downloadcdo-6ad74a0ce6e398434eea992f14fef50818a74184.tar.gz
cdo-6ad74a0ce6e398434eea992f14fef50818a74184.tar.xz
cdo-6ad74a0ce6e398434eea992f14fef50818a74184.zip
Add CleanBuildHandler
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.manifests/plugin.xml11
-rw-r--r--plugins/org.eclipse.emf.cdo.releng.manifests/src/org/eclipse/emf/cdo/releng/manifests/handlers/CleanBuildHandler.java13
2 files changed, 20 insertions, 4 deletions
diff --git a/plugins/org.eclipse.emf.cdo.releng.manifests/plugin.xml b/plugins/org.eclipse.emf.cdo.releng.manifests/plugin.xml
index 586cf32ed3..e42ca86710 100644
--- a/plugins/org.eclipse.emf.cdo.releng.manifests/plugin.xml
+++ b/plugins/org.eclipse.emf.cdo.releng.manifests/plugin.xml
@@ -50,9 +50,14 @@
<iterate
ifEmpty="false"
operator="or">
- <adapt
- type="org.eclipse.core.resources.IResource">
- </adapt>
+ <or>
+ <adapt
+ type="org.eclipse.core.resources.IResource">
+ </adapt>
+ <adapt
+ type="org.eclipse.core.resources.IMarker">
+ </adapt>
+ </or>
</iterate>
</enabledWhen>
</handler>
diff --git a/plugins/org.eclipse.emf.cdo.releng.manifests/src/org/eclipse/emf/cdo/releng/manifests/handlers/CleanBuildHandler.java b/plugins/org.eclipse.emf.cdo.releng.manifests/src/org/eclipse/emf/cdo/releng/manifests/handlers/CleanBuildHandler.java
index e26c9f132c..7dd30878c9 100644
--- a/plugins/org.eclipse.emf.cdo.releng.manifests/src/org/eclipse/emf/cdo/releng/manifests/handlers/CleanBuildHandler.java
+++ b/plugins/org.eclipse.emf.cdo.releng.manifests/src/org/eclipse/emf/cdo/releng/manifests/handlers/CleanBuildHandler.java
@@ -13,6 +13,7 @@ package org.eclipse.emf.cdo.releng.manifests.handlers;
import org.eclipse.core.commands.AbstractHandler;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.resources.IMarker;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.resources.IncrementalProjectBuilder;
@@ -64,7 +65,17 @@ public class CleanBuildHandler extends AbstractHandler
Object element = it.next();
if (element instanceof IAdaptable)
{
- element = ((IAdaptable)element).getAdapter(IResource.class);
+ IAdaptable adaptable = (IAdaptable)element;
+ element = adaptable.getAdapter(IResource.class);
+
+ if (element == null)
+ {
+ IMarker marker = (IMarker)adaptable.getAdapter(IMarker.class);
+ if (marker != null)
+ {
+ element = marker.getResource();
+ }
+ }
}
if (element instanceof IProject)

Back to the top