diff options
author | Jean Michel-Lemieux | 2003-10-29 02:45:02 +0000 |
---|---|---|
committer | Jean Michel-Lemieux | 2003-10-29 02:45:02 +0000 |
commit | 8941beb62da837d4d1b1ec15ec7c78b7b22b248c (patch) | |
tree | f4248cd4d1d83064f72369e027f335b20df0a7b9 /bundles/org.eclipse.team.cvs.ui | |
parent | 68c88c6452585be2194ce17633393b00b2211fdd (diff) | |
download | eclipse.platform.team-8941beb62da837d4d1b1ec15ec7c78b7b22b248c.tar.gz eclipse.platform.team-8941beb62da837d4d1b1ec15ec7c78b7b22b248c.tar.xz eclipse.platform.team-8941beb62da837d4d1b1ec15ec7c78b7b22b248c.zip |
*** empty log message ***
Diffstat (limited to 'bundles/org.eclipse.team.cvs.ui')
3 files changed, 42 insertions, 28 deletions
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIPlugin.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIPlugin.java index 18a43b8c7..d5966def2 100644 --- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIPlugin.java +++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIPlugin.java @@ -53,6 +53,7 @@ import org.eclipse.team.internal.ccvs.ui.subscriber.WorkspaceSynchronizeParticip import org.eclipse.team.internal.ui.TeamUIPlugin; import org.eclipse.team.internal.ui.Utils; import org.eclipse.team.ui.TeamUI; +import org.eclipse.team.ui.synchronize.ISynchronizeParticipant; import org.eclipse.ui.IWorkbenchPage; import org.eclipse.ui.IWorkbenchWindow; import org.eclipse.ui.IWorkingSet; @@ -697,6 +698,11 @@ public class CVSUIPlugin extends AbstractUIPlugin { * @return Returns the cvsWorkspaceSynchronizeViewPage. */ public WorkspaceSynchronizeParticipant getCvsWorkspaceSynchronizeParticipant() { - return (WorkspaceSynchronizeParticipant)TeamUI.getSynchronizeManager().find(WorkspaceSynchronizeParticipant.ID, null); + ISynchronizeParticipant[] instances = TeamUI.getSynchronizeManager().find(WorkspaceSynchronizeParticipant.ID); + if(instances.length == 1) { + return (WorkspaceSynchronizeParticipant)instances[0]; + } else { + return null; + } } -} +}
\ No newline at end of file diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/MergeSynchronizeParticipant.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/MergeSynchronizeParticipant.java index a838d41a0..0e124a527 100644 --- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/MergeSynchronizeParticipant.java +++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/MergeSynchronizeParticipant.java @@ -11,13 +11,12 @@ package org.eclipse.team.internal.ccvs.ui.subscriber; import org.eclipse.core.runtime.CoreException; -import org.eclipse.team.core.TeamException; +import org.eclipse.core.runtime.QualifiedName; +import org.eclipse.team.core.ISaveContext; import org.eclipse.team.core.subscribers.TeamSubscriber; +import org.eclipse.team.internal.ccvs.core.CVSException; import org.eclipse.team.internal.ccvs.core.CVSMergeSubscriber; import org.eclipse.team.internal.ccvs.ui.CVSUIPlugin; -import org.eclipse.team.internal.core.SaveContext; -import org.eclipse.team.internal.core.SaveContextXMLWriter; -import org.eclipse.team.internal.ui.TeamUIPlugin; import org.eclipse.team.internal.ui.synchronize.sets.SubscriberInput; import org.eclipse.team.ui.TeamUI; import org.eclipse.team.ui.synchronize.ISynchronizeView; @@ -27,6 +26,9 @@ import org.eclipse.ui.part.IPageBookViewPage; public class MergeSynchronizeParticipant extends TeamSubscriberParticipant { + private final static String CTX_QUALIFIER = "qualifier"; + private final static String CTX_LOCALNAME = "localname"; + public MergeSynchronizeParticipant() { super(); } @@ -35,7 +37,9 @@ public class MergeSynchronizeParticipant extends TeamSubscriberParticipant { super(); setSubscriber(subscriber); } - + + + /* (non-Javadoc) * @see org.eclipse.team.ui.sync.TeamSubscriberParticipant#setSubscriber(org.eclipse.team.core.subscribers.TeamSubscriber) */ @@ -52,28 +56,29 @@ public class MergeSynchronizeParticipant extends TeamSubscriberParticipant { /* (non-Javadoc) * @see org.eclipse.team.ui.sync.ISynchronizeParticipant#init(org.eclipse.team.ui.sync.ISynchronizeView, org.eclipse.team.core.ISaveContext) */ - public void init(String instanceid) throws PartInitException { - SaveContext ctx; //$NON-NLS-1$ + public void restoreState(ISaveContext context) throws PartInitException { + String qualifier = context.getAttribute(CTX_QUALIFIER); + String localname = context.getAttribute(CTX_LOCALNAME); + if(qualifier == null || localname == null) { + throw new PartInitException("Missing id initializing cvs merge participant"); + } try { - ctx = SaveContextXMLWriter.readXMLPluginMetaFile(CVSUIPlugin.getPlugin(), getMetaFileName(id.getLocalName())); - setSubscriber(CVSMergeSubscriber.restore(id, ctx)); - } catch (TeamException e) { - TeamUIPlugin.log(e); + setSubscriber(CVSMergeSubscriber.restore(new QualifiedName(qualifier, localname), context)); + } catch (CVSException e) { + throw new PartInitException("Unable to initialize cvs merge subscriber", e); } } /* (non-Javadoc) * @see org.eclipse.team.ui.sync.ISynchronizeParticipant#saveState(org.eclipse.team.core.ISaveContext) */ - public void saveState(int instanceid) { + public void saveState(ISaveContext context) { SubscriberInput input = getInput(); - CVSMergeSubscriber s =(CVSMergeSubscriber)input.getSubscriber(); - SaveContext ctx = s.saveState(); - try { - SaveContextXMLWriter.writeXMLPluginMetaFile(CVSUIPlugin.getPlugin(), getMetaFileName(getId().getLocalName()), ctx); //$NON-NLS-1$ - } catch (TeamException e) { - TeamUIPlugin.log(e); - } + CVSMergeSubscriber s = (CVSMergeSubscriber)input.getSubscriber(); + QualifiedName sId = s.getId(); + context.addAttribute(CTX_QUALIFIER, sId.getQualifier()); + context.addAttribute(CTX_LOCALNAME, sId.getLocalName()); + s.saveState(context); } /* (non-Javadoc) @@ -82,11 +87,6 @@ public class MergeSynchronizeParticipant extends TeamSubscriberParticipant { protected void dispose() { super.dispose(); ((CVSMergeSubscriber)getInput().getSubscriber()).cancel(); - SaveContextXMLWriter.deleteXMLPluginMetaFile(CVSUIPlugin.getPlugin(), getMetaFileName(getId().getLocalName())); //$NON-NLS-1$ - } - - private String getMetaFileName(String id) { - return "mergeSyncPartners" + id + ".xml"; //$NON-NLS-1$ //$NON-NLS-2$ } /* (non-Javadoc) @@ -95,4 +95,11 @@ public class MergeSynchronizeParticipant extends TeamSubscriberParticipant { public IPageBookViewPage createPage(ISynchronizeView view) { return new MergeSynchronizePage(this, view, getInput()); } + + /* (non-Javadoc) + * @see org.eclipse.team.ui.synchronize.ISynchronizeParticipant#getName() + */ + public String getName() { + return ((CVSMergeSubscriber)getInput().getSubscriber()).getName(); + } }
\ No newline at end of file diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/WorkspaceSynchronizeParticipant.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/WorkspaceSynchronizeParticipant.java index 8b67a11fc..627a05251 100644 --- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/WorkspaceSynchronizeParticipant.java +++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/WorkspaceSynchronizeParticipant.java @@ -10,6 +10,7 @@ *******************************************************************************/ package org.eclipse.team.internal.ccvs.ui.subscriber; +import org.eclipse.team.core.ISaveContext; import org.eclipse.team.core.subscribers.TeamSubscriber; import org.eclipse.team.internal.ccvs.core.CVSProviderPlugin; import org.eclipse.team.ui.synchronize.ISynchronizeView; @@ -24,7 +25,7 @@ public class WorkspaceSynchronizeParticipant extends TeamSubscriberParticipant { /* (non-Javadoc) * @see org.eclipse.team.ui.sync.ISynchronizeParticipant#init(org.eclipse.team.ui.sync.ISynchronizeView, org.eclipse.team.core.ISaveContext) */ - public void init(String id) throws PartInitException { + public void restoreState(ISaveContext context) throws PartInitException { TeamSubscriber subscriber = CVSProviderPlugin.getPlugin().getCVSWorkspaceSubscriber(); setSubscriber(subscriber); } @@ -32,7 +33,7 @@ public class WorkspaceSynchronizeParticipant extends TeamSubscriberParticipant { /* (non-Javadoc) * @see org.eclipse.team.ui.sync.ISynchronizeParticipant#saveState(org.eclipse.team.core.ISaveContext) */ - public void saveState(int instanceid) { + public void saveState(ISaveContext context) { // no state to save } |