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
Answertopia.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.variants
Class ResourceVariantTree


java.lang.Object
  extended by 

org.eclipse.team.core.variants.AbstractResourceVariantTree
      extended by 
org.eclipse.team.core.variants.ResourceVariantTree
All Implemented Interfaces:
IResourceVariantTree
Direct Known Subclasses:
ThreeWayRemoteTree

public abstract class ResourceVariantTree
extends AbstractResourceVariantTree

Provides caching for a AbstractResourceVariantTree using a ResourceVariantByteStore.

Since:
3.0
See Also:
IResourceVariantTree, AbstractResourceVariantTree, ResourceVariantByteStore

Constructor Summary
protected ResourceVariantTree ( ResourceVariantByteStore store)
          Create a resource variant tree that uses the provided byte store to cache the resource variant bytes.
 
Method Summary
protected   IResource[] collectChanges ( IResource local, IResourceVariant remote, int depth, IProgressMonitor monitor)
          Collect the changes in the remote tree to the specified depth.
 void flushVariants ( IResource resource, int depth)
          Flush any variants in the tree for the given resource to the depth specified.
protected  byte[] getBytes ( IResource local, IResourceVariant remote)
          Get the bytes to be stored in the ResourceVariantByteStore from the given resource variant.
protected   ResourceVariantByteStore getByteStore ()
          Get the byte store that is used to cache the serialization bytes for the resource variants of this tree.
 boolean hasResourceVariant ( IResource resource)
          Return whether the local resource has a variant in this tree.
  IResource[] members ( IResource resource)
          Returns the members of the local resource that have resource variants in this tree.
protected  boolean setVariant ( IResource local, IResourceVariant remote)
          Set the variant associated with the local resource to the newly fetched resource variant.
 
Methods inherited from class org.eclipse.team.core.variants. AbstractResourceVariantTree
collectedMembers, fetchMembers, fetchVariant, refresh, 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.variants. IResourceVariantTree
getResourceVariant, roots
 

Constructor Detail

ResourceVariantTree

protected ResourceVariantTree(
ResourceVariantByteStore store)
Create a resource variant tree that uses the provided byte store to cache the resource variant bytes.

Parameters:
store - the resource variant byte store used to cache resource variants
Method Detail

members

public 
IResource[] members(
IResource resource)
                    throws 
TeamException
Description copied from interface: IResourceVariantTree
Returns the members of the local resource that have resource variants in this tree. The members may or may not exist locally. The resource variants corresponding to the members can be retrieved using getResourceVariant(IResource).

Parameters:
resource - the local resource
Returns:
the members of the local resource for which this tree contains resource variants
Throws:
TeamException

hasResourceVariant

public boolean hasResourceVariant(
IResource resource)
                           throws 
TeamException
Description copied from interface: IResourceVariantTree
Return whether the local resource has a variant in this tree.

Parameters:
resource - the local resource
Returns:
true if the tree contains a variant for the resource
Throws:
TeamException

flushVariants

public void flushVariants(
IResource resource,
                          int depth)
                   throws 
TeamException
Description copied from interface: IResourceVariantTree
Flush any variants in the tree for the given resource to the depth specified.

Parameters:
resource - the resource
depth - the flush depth (one of IResource.DEPTH_ZERO, IResource.DEPTH_ONE, or IResource.DEPTH_INFINITE)
Throws:
TeamException

setVariant

protected boolean setVariant(
IResource local,
                             
IResourceVariant remote)
                      throws 
TeamException
Description copied from class: AbstractResourceVariantTree
Set the variant associated with the local resource to the newly fetched resource variant. This method is invoked during change collection and should return whether the variant associated with the local resource has changed

Specified by:
setVariant in class AbstractResourceVariantTree
Parameters:
local - the local resource
remote - the newly fetched resource variant
Returns:
true if the resource variant changed
Throws:
TeamException

getByteStore

protected 
ResourceVariantByteStore getByteStore()
Get the byte store that is used to cache the serialization bytes for the resource variants of this tree. A byte store is used to reduce the memory footprint of the tree.

This method is not intended to be overridden by subclasses.

Returns:
the resource variant tree that is being refreshed.

getBytes

protected byte[] getBytes(
IResource local,
                          
IResourceVariant remote)
                   throws 
TeamException
Get the bytes to be stored in the ResourceVariantByteStore from the given resource variant. By default, the IResourceVariant#asBytes() method is used to get the bytes.

Parameters:
local - the local resource
remote - the corresponding resource variant handle
Returns:
the bytes for the resource variant.
Throws:
TeamException

collectChanges

protected 
IResource[] collectChanges(
IResource local,
                                     
IResourceVariant remote,
                                     int depth,
                                     
IProgressMonitor monitor)
                              throws 
TeamException
Description copied from class: AbstractResourceVariantTree
Collect the changes in the remote tree to the specified depth.

Overrides:
collectChanges in class AbstractResourceVariantTree
Parameters:
local - the local resource being refreshed
remote - the corresponding resource variant
depth - the depth of the refresh (one of IResource.DEPTH_ZERO, IResource.DEPTH_ONE, or IResource.DEPTH_INFINITE)
monitor - a progress monitor
Returns:
the resource's whose variants have changed
Throws:
TeamException

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