|
Eclipse Platform Release 3.3 |
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.eclipse.core.runtime.PlatformObject
org.eclipse.team.core.mapping.provider.SynchronizationContext
org.eclipse.team.core.mapping.provider.MergeContext
org.eclipse.team.core.subscribers.SubscriberMergeContext
A merge context that uses a subscriber to populate the diff tree used by the context. The population of the diff tree is performed by a handler that runs in a background job.
Subscriber
,
MergeContext
Field Summary |
---|
Fields inherited from interface org.eclipse.team.core.mapping.ISynchronizationContext |
---|
THREE_WAY, TWO_WAY |
Constructor Summary | |
---|---|
protected |
SubscriberMergeContext(Subscriber subscriber,
ISynchronizationScopeManager manager)
Create a merge context for the given subscriber |
Method Summary | |
---|---|
void |
dispose()
Dispose of the synchronization context and the cache of the context. |
Object |
getAdapter(Class adapter)
Returns an object which is an instance of the given class associated with this object. |
protected DiffFilter |
getDiffFilter()
Return the diff filter used to filter the differences that the merge context will present to clients. |
Subscriber |
getSubscriber()
Return the subscriber associated with this context. |
protected SyncInfo |
getSyncInfo(IResource resource)
Return the sync info for the given resource. |
protected void |
initialize()
Initialize the diff tree of this context. |
void |
refresh(ResourceTraversal[] traversals,
int flags,
IProgressMonitor monitor)
Refresh the context in order to update the diff tree returned by SynchronizationContext.getDiffTree() to include the latest synchronization state for
the resources. |
protected void |
runInBackground(IWorkspaceRunnable runnable)
Run the given runnable when the background handler for this context is idle. |
Methods inherited from class org.eclipse.team.core.mapping.provider.MergeContext |
---|
ensureParentsExist, getMergeRule, getMergeRule, getMergeType, makeInSync, markAsMerged, merge, merge, performReplace, performThreeWayMerge, reject, run |
Methods inherited from class org.eclipse.team.core.mapping.provider.SynchronizationContext |
---|
getCache, getDiffTree, getScope, getScopeManager, getType, refresh |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.eclipse.team.core.mapping.IMergeContext |
---|
markAsMerged, reject |
Methods inherited from interface org.eclipse.team.core.mapping.ISynchronizationContext |
---|
getCache, getDiffTree, getScope, getType, refresh |
Constructor Detail |
protected SubscriberMergeContext(Subscriber subscriber, ISynchronizationScopeManager manager)
subscriber
- the subscribermanager
- the scope managerMethod Detail |
protected void initialize()
protected DiffFilter getDiffFilter()
public void refresh(ResourceTraversal[] traversals, int flags, IProgressMonitor monitor) throws CoreException
ISynchronizationContext
ISynchronizationContext.getDiffTree()
to include the latest synchronization state for
the resources. Any changes will be reported through the change listeners
registered with the diff tree of this context.
Changes to the diff tree may be triggered by a call to this method or by a refresh triggered by some other source. Hence, the callback from the diff tree to report changes may occur in the same thread as the refresh or asynchronously in a separate thread, regardless of who triggered the refresh.
traversals
- the resource traversals which indicate which resources are to
be refreshedflags
- additional refresh behavior. For instance, if
RemoteResourceMappingContext.FILE_CONTENTS_REQUIRED
is one of the flags, this indicates that the client will be
accessing the contents of the files covered by the traversals.
NONE
should be used when no additional behavior
is requiredmonitor
- a progress monitor, or null
if progress
reporting is not desired
CoreException
- if the refresh fails. Reasons include:
ISynchronizationContext.getDiffTree()
,
IDiffTree.addDiffChangeListener(IDiffChangeListener)
public void dispose()
ISynchronizationContext
dispose
in interface ISynchronizationContext
dispose
in class SynchronizationContext
protected SyncInfo getSyncInfo(IResource resource) throws CoreException
resource
- the resource
CoreException
public Subscriber getSubscriber()
protected void runInBackground(IWorkspaceRunnable runnable)
runnable
- the runnablepublic Object getAdapter(Class adapter)
PlatformObject
null
if
no such object can be found.
This implementation of the method declared by IAdaptable
passes the request along to the platform's adapter manager; roughly
Platform.getAdapterManager().getAdapter(this, adapter)
.
Subclasses may override this method (however, if they do so, they
should invoke the method on their superclass to ensure that the
Platform's adapter manager is consulted).
getAdapter
in interface IAdaptable
getAdapter
in class MergeContext
|
Eclipse Platform Release 3.3 |
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Guidelines for using Eclipse APIs.
Copyright (c) IBM Corp. and others 2000, 2007. All rights reserved.