Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/actions/AbstractLockObjectsAction.java')
-rw-r--r--plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/actions/AbstractLockObjectsAction.java254
1 files changed, 127 insertions, 127 deletions
diff --git a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/actions/AbstractLockObjectsAction.java b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/actions/AbstractLockObjectsAction.java
index 0553897d5e..0986cb1feb 100644
--- a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/actions/AbstractLockObjectsAction.java
+++ b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/internal/ui/actions/AbstractLockObjectsAction.java
@@ -1,127 +1,127 @@
-/*
- * Copyright (c) 2004 - 2012 Eike Stepper (Berlin, Germany) and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Simon McDuff - initial API and implementation
- * Eike Stepper - maintenance
- * Victor Roldan Betancort - maintenance
- */
-package org.eclipse.emf.cdo.internal.ui.actions;
-
-import org.eclipse.emf.cdo.CDOLock;
-import org.eclipse.emf.cdo.internal.ui.messages.Messages;
-import org.eclipse.emf.cdo.ui.CDOEditorUtil;
-import org.eclipse.emf.cdo.view.CDOView;
-
-import org.eclipse.emf.spi.cdo.InternalCDOObject;
-
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.ui.IWorkbenchPage;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-
-/**
- * @author Simon McDuff
- */
-public abstract class AbstractLockObjectsAction extends EditingDomainAction
-{
- private List<InternalCDOObject> objects = new ArrayList<InternalCDOObject>();
-
- private List<InternalCDOObject> lockObjects = new ArrayList<InternalCDOObject>();
-
- private Boolean lock;
-
- public AbstractLockObjectsAction(String title)
- {
- super(title);
- }
-
- public void selectionChanged(IStructuredSelection selection)
- {
- objects.clear();
- lock = null;
- if (selection != null)
- {
- for (Iterator<?> it = selection.iterator(); it.hasNext();)
- {
- Object object = it.next();
- if (object instanceof InternalCDOObject)
- {
- objects.add((InternalCDOObject)object);
- }
- }
- }
- }
-
- @Override
- public void update()
- {
- updateLockInfo();
- setEnabled(!lockObjects.isEmpty() && lock != null);
- setChecked(lock != null && lock);
- }
-
- @Override
- protected void doRun(IProgressMonitor progressMonitor) throws Exception
- {
- if (!objects.isEmpty())
- {
- InternalCDOObject[] array = objects.toArray(new InternalCDOObject[objects.size()]);
- for (InternalCDOObject object : lockObjects)
- {
- CDOLock cdoLock = getLock(object);
- if (lock)
- {
- cdoLock.unlock();
- }
- else
- {
- if (!cdoLock.tryLock())
- {
- getDisplay().syncExec(new Runnable()
- {
- public void run()
- {
- MessageDialog.openError(
- getShell(),
- Messages.getString("AbstractLockObjectsAction.0"), Messages.getString("AbstractLockObjectsAction.1")); //$NON-NLS-1$ //$NON-NLS-2$
- }
- });
- }
- }
- }
-
- IWorkbenchPage page = getPage();
- if (page != null)
- {
- CDOView view = array[0].cdoView();
- CDOEditorUtil.refreshEditors(page, view);
- }
- }
- }
-
- protected abstract CDOLock getLock(InternalCDOObject object);
-
- private void updateLockInfo()
- {
- lock = null;
- lockObjects.clear();
- for (InternalCDOObject object : objects)
- {
- boolean isLocked = getLock(object).isLocked();
- if (lock == null || isLocked == lock)
- {
- lock = isLocked;
- lockObjects.add(object);
- }
- }
- }
-}
+/*
+ * Copyright (c) 2004 - 2012 Eike Stepper (Berlin, Germany) and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Simon McDuff - initial API and implementation
+ * Eike Stepper - maintenance
+ * Victor Roldan Betancort - maintenance
+ */
+package org.eclipse.emf.cdo.internal.ui.actions;
+
+import org.eclipse.emf.cdo.CDOLock;
+import org.eclipse.emf.cdo.internal.ui.messages.Messages;
+import org.eclipse.emf.cdo.ui.CDOEditorUtil;
+import org.eclipse.emf.cdo.view.CDOView;
+
+import org.eclipse.emf.spi.cdo.InternalCDOObject;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.IWorkbenchPage;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+/**
+ * @author Simon McDuff
+ */
+public abstract class AbstractLockObjectsAction extends EditingDomainAction
+{
+ private List<InternalCDOObject> objects = new ArrayList<InternalCDOObject>();
+
+ private List<InternalCDOObject> lockObjects = new ArrayList<InternalCDOObject>();
+
+ private Boolean lock;
+
+ public AbstractLockObjectsAction(String title)
+ {
+ super(title);
+ }
+
+ public void selectionChanged(IStructuredSelection selection)
+ {
+ objects.clear();
+ lock = null;
+ if (selection != null)
+ {
+ for (Iterator<?> it = selection.iterator(); it.hasNext();)
+ {
+ Object object = it.next();
+ if (object instanceof InternalCDOObject)
+ {
+ objects.add((InternalCDOObject)object);
+ }
+ }
+ }
+ }
+
+ @Override
+ public void update()
+ {
+ updateLockInfo();
+ setEnabled(!lockObjects.isEmpty() && lock != null);
+ setChecked(lock != null && lock);
+ }
+
+ @Override
+ protected void doRun(IProgressMonitor progressMonitor) throws Exception
+ {
+ if (!objects.isEmpty())
+ {
+ InternalCDOObject[] array = objects.toArray(new InternalCDOObject[objects.size()]);
+ for (InternalCDOObject object : lockObjects)
+ {
+ CDOLock cdoLock = getLock(object);
+ if (lock)
+ {
+ cdoLock.unlock();
+ }
+ else
+ {
+ if (!cdoLock.tryLock())
+ {
+ getDisplay().syncExec(new Runnable()
+ {
+ public void run()
+ {
+ MessageDialog.openError(
+ getShell(),
+ Messages.getString("AbstractLockObjectsAction.0"), Messages.getString("AbstractLockObjectsAction.1")); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ });
+ }
+ }
+ }
+
+ IWorkbenchPage page = getPage();
+ if (page != null)
+ {
+ CDOView view = array[0].cdoView();
+ CDOEditorUtil.refreshEditors(page, view);
+ }
+ }
+ }
+
+ protected abstract CDOLock getLock(InternalCDOObject object);
+
+ private void updateLockInfo()
+ {
+ lock = null;
+ lockObjects.clear();
+ for (InternalCDOObject object : objects)
+ {
+ boolean isLocked = getLock(object).isLocked();
+ if (lock == null || isLocked == lock)
+ {
+ lock = isLocked;
+ lockObjects.add(object);
+ }
+ }
+ }
+}

Back to the top