diff options
Diffstat (limited to 'bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/OpenChangeSetAction.java')
-rw-r--r-- | bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/OpenChangeSetAction.java | 326 |
1 files changed, 163 insertions, 163 deletions
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/OpenChangeSetAction.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/OpenChangeSetAction.java index 0973d88f7..c9a670084 100644 --- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/OpenChangeSetAction.java +++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/OpenChangeSetAction.java @@ -37,181 +37,181 @@ import com.ibm.icu.text.DateFormat; class OpenChangeSetAction extends SynchronizeModelAction { - protected OpenChangeSetAction(ISynchronizePageConfiguration configuration) { - super(CVSUIMessages.OpenCommitSetAction_20, configuration); - } - - @Override + protected OpenChangeSetAction(ISynchronizePageConfiguration configuration) { + super(CVSUIMessages.OpenCommitSetAction_20, configuration); + } + + @Override protected FastSyncInfoFilter getSyncInfoFilter() { - return new AndSyncInfoFilter(new FastSyncInfoFilter[] { - new FastSyncInfoFilter() { - @Override + return new AndSyncInfoFilter(new FastSyncInfoFilter[] { + new FastSyncInfoFilter() { + @Override public boolean select(SyncInfo info) { - return info.getLocal().getType() == IResource.FILE; - } - }, - new OrSyncInfoFilter(new FastSyncInfoFilter[] { - new SyncInfoDirectionFilter(new int[] { SyncInfo.INCOMING, SyncInfo.CONFLICTING }), - new FastSyncInfoFilter() { - @Override + return info.getLocal().getType() == IResource.FILE; + } + }, + new OrSyncInfoFilter(new FastSyncInfoFilter[] { + new SyncInfoDirectionFilter(new int[] { SyncInfo.INCOMING, SyncInfo.CONFLICTING }), + new FastSyncInfoFilter() { + @Override public boolean select(SyncInfo info) { - return !info.getComparator().isThreeWay(); - } - } - }) - }); - } - - private ChangeSet getChangeSet(IStructuredSelection selection) { - // First, check to see if a change set is selected directly - if (selection.size() == 1) { - Object o = selection.getFirstElement(); - if (o instanceof IAdaptable) { - ChangeSet set = ((IAdaptable)o).getAdapter(ChangeSet.class); - if (set != null) - return set; - } - } - // Failing that, check to see if all the selected elements and their childen are in the same change set - return getChangeSet(selection.toArray()); - } - - private ChangeSet getChangeSet(Object[] elements) { - ChangeSet foundSet = null; - for (int i = 0; i < elements.length; i++) { - Object object = elements[i]; - ChangeSet set = getChangeSet((ISynchronizeModelElement)object); - if (set == null) return null; - if (foundSet == null) { - foundSet = set; - } else if (foundSet != set) { - return null; - } - } - return foundSet; - } - - private ChangeSet getChangeSet(ISynchronizeModelElement element) { - if (element == null) return null; - if (element instanceof IAdaptable) { - ChangeSet set = ((IAdaptable)element).getAdapter(ChangeSet.class); - if (set != null) - return set; - } - return getChangeSet((ISynchronizeModelElement)element.getParent()); - } + return !info.getComparator().isThreeWay(); + } + } + }) + }); + } + + private ChangeSet getChangeSet(IStructuredSelection selection) { + // First, check to see if a change set is selected directly + if (selection.size() == 1) { + Object o = selection.getFirstElement(); + if (o instanceof IAdaptable) { + ChangeSet set = ((IAdaptable)o).getAdapter(ChangeSet.class); + if (set != null) + return set; + } + } + // Failing that, check to see if all the selected elements and their childen are in the same change set + return getChangeSet(selection.toArray()); + } + + private ChangeSet getChangeSet(Object[] elements) { + ChangeSet foundSet = null; + for (int i = 0; i < elements.length; i++) { + Object object = elements[i]; + ChangeSet set = getChangeSet((ISynchronizeModelElement)object); + if (set == null) return null; + if (foundSet == null) { + foundSet = set; + } else if (foundSet != set) { + return null; + } + } + return foundSet; + } + + private ChangeSet getChangeSet(ISynchronizeModelElement element) { + if (element == null) return null; + if (element instanceof IAdaptable) { + ChangeSet set = ((IAdaptable)element).getAdapter(ChangeSet.class); + if (set != null) + return set; + } + return getChangeSet((ISynchronizeModelElement)element.getParent()); + } - @Override + @Override protected boolean updateSelection(IStructuredSelection selection) { - boolean enabled = super.updateSelection(selection); - if (enabled) { - // The selection only contains appropriate files so - // only enable if the selection is contained within a single change set - ChangeSet set = getChangeSet(selection); - return set != null; - } - return false; - } + boolean enabled = super.updateSelection(selection); + if (enabled) { + // The selection only contains appropriate files so + // only enable if the selection is contained within a single change set + ChangeSet set = getChangeSet(selection); + return set != null; + } + return false; + } - @Override + @Override protected SynchronizeModelOperation getSubscriberOperation(ISynchronizePageConfiguration configuration, IDiffElement[] elements) { - return new SynchronizeModelOperation(configuration, elements) { - @Override + return new SynchronizeModelOperation(configuration, elements) { + @Override public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException { - SyncInfoSet set = getSyncInfoSet(); - SyncInfo[] infos = set.getSyncInfos(); - if (infos.length > 0) { - ICVSRepositoryLocation location = getLocation(infos[0]); - if (location == null) { - handle(new CVSException(CVSUIMessages.OpenCommitSetAction_21)); - return; - } - CompareTreeBuilder builder = new CompareTreeBuilder(location, null, null); - if (buildTrees(builder, infos)) { - try { - builder.cacheContents(monitor); - builder.openCompareEditor(getConfiguration().getSite().getPart().getSite().getPage(), getCompareTitle(), getCompareToolTip()); - } catch (CVSException e) { - handle(e); - return; - } - } - } - } + SyncInfoSet set = getSyncInfoSet(); + SyncInfo[] infos = set.getSyncInfos(); + if (infos.length > 0) { + ICVSRepositoryLocation location = getLocation(infos[0]); + if (location == null) { + handle(new CVSException(CVSUIMessages.OpenCommitSetAction_21)); + return; + } + CompareTreeBuilder builder = new CompareTreeBuilder(location, null, null); + if (buildTrees(builder, infos)) { + try { + builder.cacheContents(monitor); + builder.openCompareEditor(getConfiguration().getSite().getPart().getSite().getPage(), getCompareTitle(), getCompareToolTip()); + } catch (CVSException e) { + handle(e); + return; + } + } + } + } - private String getCompareToolTip() { - IDiffElement[] elements = getSelectedDiffElements(); - for (int i = 0; i < elements.length; i++) { - IDiffElement element = elements[i]; - while (element != null) { - if (element instanceof ChangeSetDiffNode) { - return ((ChangeSetDiffNode)element).getName(); - } - element = element.getParent(); - } - } - return null; - } - - private String getCompareTitle() { - IDiffElement[] elements = getSelectedDiffElements(); - ChangeSet set = getChangeSet(elements); - if (set instanceof CheckedInChangeSet) { - CheckedInChangeSet cics = (CheckedInChangeSet)set; - String date = DateFormat.getDateTimeInstance().format(cics.getDate()); - return NLS.bind(CVSUIMessages.OpenChangeSetAction_0, new String[] {cics.getAuthor(), date}); - } - return CVSUIMessages.OpenChangeSetAction_1; - } + private String getCompareToolTip() { + IDiffElement[] elements = getSelectedDiffElements(); + for (int i = 0; i < elements.length; i++) { + IDiffElement element = elements[i]; + while (element != null) { + if (element instanceof ChangeSetDiffNode) { + return ((ChangeSetDiffNode)element).getName(); + } + element = element.getParent(); + } + } + return null; + } + + private String getCompareTitle() { + IDiffElement[] elements = getSelectedDiffElements(); + ChangeSet set = getChangeSet(elements); + if (set instanceof CheckedInChangeSet) { + CheckedInChangeSet cics = (CheckedInChangeSet)set; + String date = DateFormat.getDateTimeInstance().format(cics.getDate()); + return NLS.bind(CVSUIMessages.OpenChangeSetAction_0, new String[] {cics.getAuthor(), date}); + } + return CVSUIMessages.OpenChangeSetAction_1; + } - private ICVSRepositoryLocation getLocation(SyncInfo info) { - IResourceVariant remote = info.getRemote(); - if (remote == null) { - remote = info.getBase(); - } - if (remote != null) { - return ((ICVSRemoteResource)remote).getRepository(); - } - return null; - } + private ICVSRepositoryLocation getLocation(SyncInfo info) { + IResourceVariant remote = info.getRemote(); + if (remote == null) { + remote = info.getBase(); + } + if (remote != null) { + return ((ICVSRemoteResource)remote).getRepository(); + } + return null; + } - /* - * Build the trees that will be compared - */ - private boolean buildTrees(CompareTreeBuilder builder, SyncInfo[] infos) { - for (int i = 0; i < infos.length; i++) { - SyncInfo info = infos[i]; - IResourceVariant remote = info.getRemote(); - if (remote == null) { - IResourceVariant predecessor = info.getBase(); - if (predecessor instanceof ICVSRemoteFile) { - builder.addToTrees((ICVSRemoteFile)predecessor, null); - } - } else if (remote instanceof ICVSRemoteFile) { - try { - ICVSRemoteFile predecessor = getImmediatePredecessor(remote); - builder.addToTrees(predecessor, (ICVSRemoteFile)remote); - } catch (TeamException e) { - handle(e); - return false; - } - } - } - return true; - } - }; - } + /* + * Build the trees that will be compared + */ + private boolean buildTrees(CompareTreeBuilder builder, SyncInfo[] infos) { + for (int i = 0; i < infos.length; i++) { + SyncInfo info = infos[i]; + IResourceVariant remote = info.getRemote(); + if (remote == null) { + IResourceVariant predecessor = info.getBase(); + if (predecessor instanceof ICVSRemoteFile) { + builder.addToTrees((ICVSRemoteFile)predecessor, null); + } + } else if (remote instanceof ICVSRemoteFile) { + try { + ICVSRemoteFile predecessor = getImmediatePredecessor(remote); + builder.addToTrees(predecessor, (ICVSRemoteFile)remote); + } catch (TeamException e) { + handle(e); + return false; + } + } + } + return true; + } + }; + } - private ICVSRemoteFile getImmediatePredecessor(IResourceVariant remote) throws TeamException { - CVSChangeSetCollector changeSetCollector = getChangeSetCollector(); - if (changeSetCollector != null) { - return changeSetCollector.getImmediatePredecessor((ICVSRemoteFile)remote); - } - return null; - } + private ICVSRemoteFile getImmediatePredecessor(IResourceVariant remote) throws TeamException { + CVSChangeSetCollector changeSetCollector = getChangeSetCollector(); + if (changeSetCollector != null) { + return changeSetCollector.getImmediatePredecessor((ICVSRemoteFile)remote); + } + return null; + } - private CVSChangeSetCollector getChangeSetCollector() { - return (CVSChangeSetCollector)getConfiguration().getProperty(CVSChangeSetCollector.CVS_CHECKED_IN_COLLECTOR); - } + private CVSChangeSetCollector getChangeSetCollector() { + return (CVSChangeSetCollector)getConfiguration().getProperty(CVSChangeSetCollector.CVS_CHECKED_IN_COLLECTOR); + } } |