[jbosstools-commits] JBoss Tools SVN: r42915 - branches/jbosstools-3.3.x/archives/plugins/org.jboss.ide.eclipse.archives.ui/src/main/org/jboss/ide/eclipse/archives/ui/actions.
jbosstools-commits at lists.jboss.org
jbosstools-commits at lists.jboss.org
Wed Aug 8 06:59:36 EDT 2012
Author: rob.stryker at jboss.com
Date: 2012-08-08 06:59:36 -0400 (Wed, 08 Aug 2012)
New Revision: 42915
Added:
branches/jbosstools-3.3.x/archives/plugins/org.jboss.ide.eclipse.archives.ui/src/main/org/jboss/ide/eclipse/archives/ui/actions/DisableHandler.java
branches/jbosstools-3.3.x/archives/plugins/org.jboss.ide.eclipse.archives.ui/src/main/org/jboss/ide/eclipse/archives/ui/actions/EnableHandler.java
branches/jbosstools-3.3.x/archives/plugins/org.jboss.ide.eclipse.archives.ui/src/main/org/jboss/ide/eclipse/archives/ui/actions/RemoveProjectArchivesSupportAction.java
Log:
JBIDE-11927 part 2 to maintenance
Added: branches/jbosstools-3.3.x/archives/plugins/org.jboss.ide.eclipse.archives.ui/src/main/org/jboss/ide/eclipse/archives/ui/actions/DisableHandler.java
===================================================================
--- branches/jbosstools-3.3.x/archives/plugins/org.jboss.ide.eclipse.archives.ui/src/main/org/jboss/ide/eclipse/archives/ui/actions/DisableHandler.java (rev 0)
+++ branches/jbosstools-3.3.x/archives/plugins/org.jboss.ide.eclipse.archives.ui/src/main/org/jboss/ide/eclipse/archives/ui/actions/DisableHandler.java 2012-08-08 10:59:36 UTC (rev 42915)
@@ -0,0 +1,65 @@
+package org.jboss.ide.eclipse.archives.ui.actions;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.commands.IHandler;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.SubProgressMonitor;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.ui.handlers.HandlerUtil;
+import org.jboss.ide.eclipse.archives.core.ArchivesCore;
+import org.jboss.ide.eclipse.archives.core.ArchivesCorePlugin;
+import org.jboss.ide.eclipse.archives.core.model.ArchivesModel;
+import org.jboss.ide.eclipse.archives.core.model.IArchiveModel;
+import org.jboss.ide.eclipse.archives.core.project.ArchivesNature;
+import org.jboss.ide.eclipse.archives.core.project.ProjectUtils;
+import org.jboss.ide.eclipse.archives.ui.ArchivesUIMessages;
+
+public class DisableHandler extends AbstractHandler implements IHandler {
+
+ public Object execute(ExecutionEvent event) throws ExecutionException {
+
+ IStructuredSelection selection = (IStructuredSelection) HandlerUtil
+ .getCurrentSelectionChecked(event);
+ final Object e = selection.getFirstElement();
+ if (e instanceof IProject) {
+ String pName = ((IProject)e).getName();
+ final String jobName = NLS.bind(ArchivesUIMessages.DisableProjectArchivesJob, pName);
+ new Job(jobName) {
+ protected IStatus run(IProgressMonitor monitor) {
+ monitor.beginTask(jobName, 300);
+ CoreException ce = null;
+ try {
+ SubProgressMonitor deletionMonitor = new SubProgressMonitor(monitor, 100);
+ IResource r = ((IProject)e).getFile(IArchiveModel.DEFAULT_PACKAGES_FILE);
+ if( r != null && r.exists() )
+ r.delete(true, deletionMonitor);
+
+ } catch(CoreException ce2) {
+ ce = ce2;
+ }
+
+ IPath loc = ((IProject) e).getLocation();
+ SubProgressMonitor mon1 = new SubProgressMonitor(monitor, 100);
+ ProjectUtils.removeProjectNature(((IProject) e), ArchivesNature.NATURE_ID, mon1);
+
+ SubProgressMonitor mon2 = new SubProgressMonitor(monitor, 100);
+ ArchivesModel.instance().unregisterProject(loc, mon2);
+
+ return ce == null ? Status.OK_STATUS : new Status(IStatus.ERROR, ArchivesCorePlugin.PLUGIN_ID,
+ "Unable to fully remove project archives support."); //$NON-NLS-1$
+ }
+ }.schedule();
+ }
+ return null; }
+
+}
Added: branches/jbosstools-3.3.x/archives/plugins/org.jboss.ide.eclipse.archives.ui/src/main/org/jboss/ide/eclipse/archives/ui/actions/EnableHandler.java
===================================================================
--- branches/jbosstools-3.3.x/archives/plugins/org.jboss.ide.eclipse.archives.ui/src/main/org/jboss/ide/eclipse/archives/ui/actions/EnableHandler.java (rev 0)
+++ branches/jbosstools-3.3.x/archives/plugins/org.jboss.ide.eclipse.archives.ui/src/main/org/jboss/ide/eclipse/archives/ui/actions/EnableHandler.java 2012-08-08 10:59:36 UTC (rev 42915)
@@ -0,0 +1,45 @@
+package org.jboss.ide.eclipse.archives.ui.actions;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.SubProgressMonitor;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.ui.handlers.HandlerUtil;
+import org.jboss.ide.eclipse.archives.core.model.ArchivesModel;
+import org.jboss.ide.eclipse.archives.core.project.ArchivesNature;
+import org.jboss.ide.eclipse.archives.core.project.ProjectUtils;
+import org.jboss.ide.eclipse.archives.ui.ArchivesUIMessages;
+
+public class EnableHandler extends AbstractHandler {
+ public Object execute(ExecutionEvent event) throws ExecutionException {
+ IStructuredSelection selection = (IStructuredSelection) HandlerUtil
+ .getCurrentSelectionChecked(event);
+ final Object e = selection.getFirstElement();
+ if (e instanceof IProject) {
+ String pName = ((IProject)e).getName();
+ final String jobName = NLS.bind(ArchivesUIMessages.EnableProjectArchivesJob, pName);
+ new Job(jobName) {
+ protected IStatus run(IProgressMonitor monitor) {
+ monitor.beginTask(jobName, 200);
+ IPath loc = ((IProject) e).getLocation();
+
+ SubProgressMonitor mon1 = new SubProgressMonitor(monitor, 100);
+ ProjectUtils.addProjectNature(((IProject) e), ArchivesNature.NATURE_ID, mon1);
+
+ SubProgressMonitor mon2 = new SubProgressMonitor(monitor, 100);
+ ArchivesModel.instance().registerProject(loc, mon2);
+ return Status.OK_STATUS;
+ }
+ }.schedule();
+ }
+ return null;
+ }
+}
Added: branches/jbosstools-3.3.x/archives/plugins/org.jboss.ide.eclipse.archives.ui/src/main/org/jboss/ide/eclipse/archives/ui/actions/RemoveProjectArchivesSupportAction.java
===================================================================
--- branches/jbosstools-3.3.x/archives/plugins/org.jboss.ide.eclipse.archives.ui/src/main/org/jboss/ide/eclipse/archives/ui/actions/RemoveProjectArchivesSupportAction.java (rev 0)
+++ branches/jbosstools-3.3.x/archives/plugins/org.jboss.ide.eclipse.archives.ui/src/main/org/jboss/ide/eclipse/archives/ui/actions/RemoveProjectArchivesSupportAction.java 2012-08-08 10:59:36 UTC (rev 42915)
@@ -0,0 +1,28 @@
+package org.jboss.ide.eclipse.archives.ui.actions;
+
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.ui.IObjectActionDelegate;
+import org.eclipse.ui.IWorkbenchPart;
+
+public class RemoveProjectArchivesSupportAction implements
+ IObjectActionDelegate {
+
+ public RemoveProjectArchivesSupportAction() {
+ }
+
+ public void run(IAction action) {
+ System.out.println("Removing support"); //$NON-NLS-1$
+ }
+
+ public void selectionChanged(IAction action, ISelection selection) {
+ // TODO Auto-generated method stub
+
+ }
+
+ public void setActivePart(IAction action, IWorkbenchPart targetPart) {
+ // TODO Auto-generated method stub
+
+ }
+
+}
More information about the jbosstools-commits
mailing list