Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Valenta2003-07-08 15:53:42 +0000
committerMichael Valenta2003-07-08 15:53:42 +0000
commit850002b09ecc5a092deebeef25e3eb3fe887c315 (patch)
tree053ed4d8d4eabba98fdb5b8be448e9329b4dead4
parent9f6970296b66d91d1d3a56fe31dc3cd4587180c5 (diff)
downloadeclipse.platform.team-850002b09ecc5a092deebeef25e3eb3fe887c315.tar.gz
eclipse.platform.team-850002b09ecc5a092deebeef25e3eb3fe887c315.tar.xz
eclipse.platform.team-850002b09ecc5a092deebeef25e3eb3fe887c315.zip
39390: [CVS Merge] Need Mark As Merged Action
-rw-r--r--bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMergeSubscriber.java12
-rw-r--r--bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMergeSyncInfo.java9
-rw-r--r--bundles/org.eclipse.team.cvs.ui/plugin.xml9
3 files changed, 27 insertions, 3 deletions
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMergeSubscriber.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMergeSubscriber.java
index 10c873631..3dbe4d328 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMergeSubscriber.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMergeSubscriber.java
@@ -63,6 +63,8 @@ public class CVSMergeSubscriber extends CVSSyncTreeSubscriber implements IResour
private RemoteTagSynchronizer remoteSynchronizer;
private RemoteSynchronizer mergedSynchronizer;
private RemoteTagSynchronizer baseSynchronizer;
+
+ private static final byte[] NO_REMOTE = new byte[0];
protected IResource[] refreshRemote(IResource[] resources, int depth, IProgressMonitor monitor) throws TeamException {
@@ -123,7 +125,12 @@ public class CVSMergeSubscriber extends CVSSyncTreeSubscriber implements IResour
public void merged(IResource[] resources) throws CVSException {
for (int i = 0; i < resources.length; i++) {
IResource resource = resources[i];
- mergedSynchronizer.setSyncBytes(resource, remoteSynchronizer.getSyncBytes(resource));
+ byte[] remoteBytes = remoteSynchronizer.getSyncBytes(resource);
+ if (remoteBytes == null) {
+ // If there is no remote, use a place holder to indicate the resouce was merged
+ remoteBytes = NO_REMOTE;
+ }
+ mergedSynchronizer.setSyncBytes(resource, remoteBytes);
}
fireTeamResourceChange(TeamDelta.asSyncChangedDeltas(this, resources));
}
@@ -136,7 +143,8 @@ public class CVSMergeSubscriber extends CVSSyncTreeSubscriber implements IResour
ResourcesPlugin.getWorkspace().removeResourceChangeListener(this);
TeamProvider.deregisterSubscriber(this);
remoteSynchronizer.dispose();
- baseSynchronizer.dispose();
+ baseSynchronizer.dispose();
+ mergedSynchronizer.dispose();
}
/* (non-Javadoc)
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMergeSyncInfo.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMergeSyncInfo.java
index 1ac9b6780..3fc520771 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMergeSyncInfo.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMergeSyncInfo.java
@@ -39,4 +39,13 @@ public class CVSMergeSyncInfo extends CVSSyncInfo {
public CVSMergeSyncInfo(IResource local, IRemoteResource base, IRemoteResource remote, TeamSubscriber subscriber, IProgressMonitor monitor) throws TeamException {
super(local, base, remote, subscriber, monitor);
}
+
+ /* (non-Javadoc)
+ * @see org.eclipse.team.internal.ccvs.core.CVSSyncInfo#makeOutgoing(org.eclipse.core.runtime.IProgressMonitor)
+ */
+ public void makeOutgoing(IProgressMonitor monitor) throws TeamException {
+ // Make the resource outgoing by marking it as merged with the subscriber
+ CVSMergeSubscriber subscriber = (CVSMergeSubscriber)getSubscriber();
+ subscriber.merged(new IResource[] {getLocal() });
+ }
}
diff --git a/bundles/org.eclipse.team.cvs.ui/plugin.xml b/bundles/org.eclipse.team.cvs.ui/plugin.xml
index 5622f7132..cb8238820 100644
--- a/bundles/org.eclipse.team.cvs.ui/plugin.xml
+++ b/bundles/org.eclipse.team.cvs.ui/plugin.xml
@@ -599,7 +599,14 @@
tooltip="%CVSWorkspaceSubscriber.merge.tooltip"
class="org.eclipse.team.internal.ccvs.ui.subscriber.MergeUpdateAction"
helpContextId="org.eclipse.team.cvs.ui.workspace_subscriber_merge_action"
- id="org.eclipse.team.ccvs.ui.CVSWorkspaceSubscriber.merge">
+ id="org.eclipse.team.ccvs.ui.CVSMergeSubscriber.merge">
+ </action>
+ <action
+ label="%CVSWorkspaceSubscriber.confirmMerged.label"
+ tooltip="%CVSWorkspaceSubscriber.confirmMerged.tooltip"
+ class="org.eclipse.team.internal.ccvs.ui.subscriber.SubscriberConfirmMergedAction"
+ helpContextId="org.eclipse.team.cvs.ui.workspace_subscriber_confirm_merged_action"
+ id="org.eclipse.team.ccvs.ui.CVSMergeSubscriber.confirmMerged">
</action>
</subscriberContribution>
</extension>

Back to the top