com.starteam.viewcomparemerge
Class RevisionLabelScope

java.lang.Object
  extended by com.starteam.viewcomparemerge.Scope
      extended by com.starteam.viewcomparemerge.RevisionLabelScope

public class RevisionLabelScope
extends Scope

Includes all item revisions with a given revision label in the scope of the view compare/merge session.

See Also:
Session.setScope(com.starteam.viewcomparemerge.Scope), Scope

Constructor Summary
RevisionLabelScope(Label label)
          Creates a new RevisionLabelScope.
RevisionLabelScope(Label label, Item.Type type)
          Creates a new RevisionLabelScope.
RevisionLabelScope(Label label, TypeCollection types)
          Creates a new RevisionLabelScope.
 
Method Summary
 java.lang.String getDescription()
          Return a description of this scope.
 Item getIncludedRevision(Item item)
          Determines whether or not the given source item is in scope for the current view compare/merge operation, and, if so, returns the item revision that should be used for comparision.
 TypeCollection getItemTypes()
          Get the list of item types that are included in this scope.
 boolean isFullScope(Item.Type type)
          Determines whether or not this represents a "Full Scope" operation for the given item type.
 void refresh(Session session)
          Provides a scope the opportunity to initialize or refresh its state.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RevisionLabelScope

public RevisionLabelScope(Label label)
Creates a new RevisionLabelScope.

Parameters:
label - A revision label. All item revisions with this label are included in the scope of the view compare/merge session.

RevisionLabelScope

public RevisionLabelScope(Label label,
                          Item.Type type)
Creates a new RevisionLabelScope.

Parameters:
label - A revision label. Item revisions with this label are included in the scope of the view compare/merge session.
type - An item type. Only items with this item type are included.

RevisionLabelScope

public RevisionLabelScope(Label label,
                          TypeCollection types)
Creates a new RevisionLabelScope.

Parameters:
label - A revision label. Item revisions with this label are included in the scope of the view compare/merge session.
types - A list of item types. Only items with these types are included.
Method Detail

getDescription

public java.lang.String getDescription()
Return a description of this scope.

Specified by:
getDescription in class Scope
Returns:
a String that provides a description of this scope.

isFullScope

public boolean isFullScope(Item.Type type)
Description copied from class: Scope
Determines whether or not this represents a "Full Scope" operation for the given item type. If a scope restricts anything other than the item type, it is not considered a full scope operation.

Specified by:
isFullScope in class Scope
Parameters:
type - the type to test against
Returns:
boolean true if this type is at full scope
See Also:
Scope.isFullScope(com.starteam.Item.Type)

refresh

public void refresh(Session session)
Description copied from class: Scope
Provides a scope the opportunity to initialize or refresh its state. As a result, some Items that were previously in scope may now be out of scope, and vice versa.

The view compare/merge engine calls refresh() once at the start of Session.compare(), and once for each call to Session.refresh().

Specified by:
refresh in class Scope
Parameters:
session - the session to refresh
See Also:
Scope.refresh(com.starteam.viewcomparemerge.Session)

getItemTypes

public TypeCollection getItemTypes()
Description copied from class: Scope
Get the list of item types that are included in this scope. Note that folders are always processed, whether or not the scope indicates that they should be included.

Specified by:
getItemTypes in class Scope
Returns:
The list of types to be processed.
See Also:
Scope.getItemTypes()

getIncludedRevision

public Item getIncludedRevision(Item item)
Description copied from class: Scope
Determines whether or not the given source item is in scope for the current view compare/merge operation, and, if so, returns the item revision that should be used for comparision.

During a compare operation, the getIncludedRevision() method is called for every source folder whose parent is in scope, and for every item whose type and parent folder are in scope.

Each implementation of Scope must guarantee that if getIncludedRevision() is called again on the same item, without an intervening call to refresh(), the result is the same between calls. That is, until a refresh() is called, a given item must be consistently in scope or out of scope.

Scope implementations may assume that getIncludedRevision() is called only for types that are in scope (and folders).

Specified by:
getIncludedRevision in class Scope
Parameters:
item - Item the item to test for inclusion
Returns:
Item the included revision, if any
See Also:
Scope.getIncludedRevision(com.starteam.Item)


StarTeam SDK 14.0, Build 21
Copyright © 2003-2012 Borland Software Corporation. All rights reserved.