atg.versionmanager
Interface Branch

All Superinterfaces:
DevelopmentLine, ManagedElement

public interface Branch
extends DevelopmentLine

Branches comprise of a set of versions, one for each asset included in the branch.

A branch is created and managed by a version manager. A branch has an identifier that is unique across all development lines within the version manager.

Each version manager has a unique main branch that does not derive from another branch. All other branches have a "parent" branch. When a new branch is created, its contents are frozen at the current versions in the parent branch. The new branch will not automatically see any subsequent changes in the parent branch. Workspaces are derived from branches.

Changes to branches are made in workspaces that derive from the branch. Merging between branches must also be done in a workspace, when versions are merged into a working version.


Field Summary
static java.lang.String CLASS_VERSION
           
 
Method Summary
 Workspace merge(Workspace pWorkspace)
          Generate a workspace that contains changes merged from a workspace on another branch.
 atg.versionmanager.PurgeResult purge(long pExpirationTime, boolean pDryRun, java.util.Collection pIgnorableChildBranches)
          Permanently remove versions which are older than the time specified from this branch or simulate such removal if pDryRun is true.
 Workspace revertToWorkspace(Workspace pWorkspace)
          Generate a workspace that will undo changes from another, already checked-in, workspace.
 
Methods inherited from interface atg.versionmanager.DevelopmentLine
getAllAssetVersions, getAllAssetVersions, getAllAssetVersions, getAllAssetVersions, getAllAssetVersionsCount, getAsset, getAssets, getAssets, getAssetVersion, getChildLines, getCountOfChildLines, getCurrentAssetVersions, getCurrentAssetVersions, getCurrentAssetVersions, getCurrentAssetVersions, getCurrentAssetVersionsCount, getDateCreated, getDeletedAssetVersions, getDeletedAssetVersions, getDeletedAssetVersions, getDeletedAssetVersions, getDeletedAssetVersionsCount, getID, getParentBranch, getParentLine
 
Methods inherited from interface atg.versionmanager.ManagedElement
getDisplayName, getName, getURI, getVersionManager
 

Field Detail

CLASS_VERSION

static final java.lang.String CLASS_VERSION
See Also:
Constant Field Values
Method Detail

revertToWorkspace

Workspace revertToWorkspace(Workspace pWorkspace)
                            throws VersionException
Generate a workspace that will undo changes from another, already checked-in, workspace. Source workspace must be a child of this branch.

Parameters:
pWorkspace - Contains changes that we'll undo
Returns:
Workspace containing undo changes.
Throws:
VersionException - thrown if problem reverting

merge

Workspace merge(Workspace pWorkspace)
                throws VersionException
Generate a workspace that contains changes merged from a workspace on another branch.

Parameters:
pWorkspace - Contains changes to merge
Returns:
Workspace containing merge changes
Throws:
VersionException - thrown if problem merging

purge

atg.versionmanager.PurgeResult purge(long pExpirationTime,
                                     boolean pDryRun,
                                     java.util.Collection pIgnorableChildBranches)
                                     throws VersionException
Permanently remove versions which are older than the time specified from this branch or simulate such removal if pDryRun is true.

Parameters:
pExpirationTime - expiration time, in number of milliseconds since January 1, 1970, 00:00:00 GMT
pDryRun - simulate a purge to get the results without doing the actual purge.
pIgnorableChildBranches - child branches which can be ignored for the purpose of purge, note this should be either an empty collection or null when pDryRun is false. For an actual run child branches are not allowed to be ignored.
Returns:
A map of RepositoryVersionContainer to number of asset versions that was purged or would be purged (if pDryRun is true)
Throws:
VersionException - thrown if problem merging