Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 


Eclipse Platform
Release 3.5

org.eclipse.team.core.mapping.provider
Class SynchronizationContext

java.lang.Object
  extended by 

org.eclipse.core.runtime.PlatformObject
      extended by 
org.eclipse.team.core.mapping.provider.SynchronizationContext
All Implemented Interfaces:
IAdaptable, ISynchronizationContext
Direct Known Subclasses:
MergeContext

public abstract class SynchronizationContext
extends PlatformObject
implements ISynchronizationContext

Abstract implementation of the ISynchronizationContext interface. This class can be subclassed by clients.

Since:
3.2
See Also:
ISynchronizationContext

Field Summary
 
Fields inherited from interface org.eclipse.team.core.mapping. ISynchronizationContext
THREE_WAY, TWO_WAY
 
Constructor Summary
protected SynchronizationContext ( ISynchronizationScopeManager manager, int type, IResourceDiffTree diffTree)
          Create a synchronization context.
 
Method Summary
 void dispose ()
          Dispose of the synchronization context and the cache of the context.
  ICache getCache ()
          Return the cache associated with this synchronization context.
  IResourceDiffTree getDiffTree ()
          Return a tree that contains IDiff entries for resources that are out-of-sync.
  ISynchronizationScope getScope ()
          Return the input that defined the scope of this synchronization context.
  ISynchronizationScopeManager getScopeManager ()
          Return the scope manager for the scope of this context.
 int getType ()
          Return the synchronization type.
 void refresh ( ResourceMapping[] mappings, IProgressMonitor monitor)
          Refresh the portion of the context related to the given resource mappings.
 
Methods inherited from class org.eclipse.core.runtime. PlatformObject
getAdapter
 
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. ISynchronizationContext
refresh
 

Constructor Detail

SynchronizationContext

protected SynchronizationContext(
ISynchronizationScopeManager manager,
                                 int type,
                                 
IResourceDiffTree diffTree)
Create a synchronization context.

Parameters:
manager - the manager that defines the scope of the synchronization
type - the type of synchronization (ONE_WAY or TWO_WAY)
diffTree - the sync info tree that contains all out-of-sync resources
Method Detail

getScope

public 
ISynchronizationScope getScope()
Return the input that defined the scope of this synchronization context. The input determines the set of resources to which the context applies. Changes in the input may result in changes to the sync-info available in the tree of this context.

Specified by:
getScope in interface ISynchronizationContext
Returns:
the input that defined the scope of this synchronization context.

getScopeManager

public 
ISynchronizationScopeManager getScopeManager()
Return the scope manager for the scope of this context.

Returns:
the scope manager for the scope of this context

getType

public int getType()
Return the synchronization type. A type of TWO_WAY indicates that the synchronization information associated with the context will also be two-way IDiff instances (i.e. there is only a remote but no base involved in the comparison used to determine the synchronization state of resources. A type of THREE_WAY indicates that the synchronization information will be three-way IThreeWayDiff instances.

Specified by:
getType in interface ISynchronizationContext
Returns:
the type of synchronization information available in the context
See Also:
IDiff, IThreeWayDiff

dispose

public void dispose()
Dispose of the synchronization context and the cache of the context. This method should be invoked by clients when the context is no longer needed.

Specified by:
dispose in interface ISynchronizationContext

getCache

public 
ICache getCache()
Return the cache associated with this synchronization context. The cache is maintained for the lifetime of this context and is disposed when the the context is disposed. It can be used by clients to cache model state related to the context so that it can be maintained for the life of the operation to which the context applies.

Specified by:
getCache in interface ISynchronizationContext
Returns:
the cache associated with this synchronization context

getDiffTree

public 
IResourceDiffTree getDiffTree()
Return a tree that contains IDiff entries for resources that are out-of-sync. The tree will contain entries for any out-of-sync resources that are within the scope of this context. The tree may include entries for additional resources, which should be ignored by the client. Clients can test for inclusion using the method ISynchronizationScope.contains(IResource).

The returned IResourceDiffTree will be homogeneous and contain either IResourceDiff or IThreeWayDiff instances. Any IThreeWayDiff contained in the returned tree will contain IResourceDiff instances as the local and remote changes. This interface also has several helper methods for handling entries contained in the returned diff tree.

Specified by:
getDiffTree in interface ISynchronizationContext
Returns:
a tree that contains an entry for any resources that are out-of-sync.
See Also:
IResourceDiffTree.getDiffs(ResourceTraversal[]), IResourceDiffTree.getResource(IDiff)

refresh

public void refresh(
ResourceMapping[] mappings,
                    
IProgressMonitor monitor)
             throws 
CoreException
Refresh the portion of the context related to the given resource mappings. The provided mappings must be within the scope of this context. Refreshing mappings may result in additional resources being added to the scope of this context. If new resources are included in the scope, a property change event will be fired from the scope. If the synchronization state of any of the resources covered by the mapping change, a change event will be fired from 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.

Specified by:
refresh in interface ISynchronizationContext
Parameters:
mappings - the mappings to be refreshed
monitor - a progress monitor
Throws:
CoreException - if errors occur

Eclipse Platform
Release 3.5

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.


 
 
  Published under the terms of the Eclipse Public License Version 1.0 ("EPL") Design by Interspire