public class Checkout extends RootModuleVersionJobAbstractImpl
The main intent of this job is to checkout ModuleVersion's in the
reference graphs rooted at the root ModuleVersions's and matched by the
ReferencePathMatcher. It basically expects to be able to checkout any
ModuleVersion in a user workspace directory. If the intent of the user is
to replace the workspace directories currently occupied by other
Version's of the same Module's, WorkspaceManagerTool from
dragom-cli-tools can be used after the checkout tool to clean user workspace
directories for ModuleVersion's that are not reachable from the root
ModuleVersion's.
But this job nevertheless gracefully supports the case where the
WorkspacePlugin does not support multiple ModuleVersion's for the same
Module in user workspace directories by offering the user to switch the content
of those existing user workspace directories.
If among the selected ModuleVersion's to checkout there are Module's for which multiple ModuleVersion's are selected, the user will be asked to select which one will actually be checked out.
In order to do this, a List of the selected ModuleVersion's must be first
constructed by traversing the graph, and then the checkout operations can be
performed on the ModuleVersion's in the List. BuildReferenceGraph is
used for this purpose.
RootModuleVersionJobAbstractImpl.UnsyncChangesBehaviorindAvoidReentry, indDepthFirst, indHandleDynamicVersion, indHandleStaticVersion, indListModuleVersionRootChanged, listActionsPerformed, listModuleVersionRoot, moduleReentryAvoider, MSG_PATTERN_KEY_ACTIONS_PERFORMED, MSG_PATTERN_KEY_CANNOT_PROCEED_WITH_UNSYNC_LOCAL_CHANGES, MSG_PATTERN_KEY_CONFLICTS_WHILE_UPDATING, MSG_PATTERN_KEY_DO_YOU_WANT_TO_UPDATE_UNSYNC_REMOTE_CHANGES, MSG_PATTERN_KEY_INITIATING_TRAVERSAL_REFERENCE_GRAPH_ROOT_MODULE_VERSION, MSG_PATTERN_KEY_MODULE_VERSION_ALREADY_PROCESSED, MSG_PATTERN_KEY_MULTIPLE_WORKSPACE_DIRECTORIES_FOR_MODULE, MSG_PATTERN_KEY_NO_ACTIONS_PERFORMED, MSG_PATTERN_KEY_ROOT_MODULE_VERSION_NOT_KNOWN, MSG_PATTERN_KEY_TRAVERSAL_REFERENCE_GRAPH_ROOT_MODULE_VERSION_COMPLETED, MSG_PATTERN_KEY_UPDATE_CHANGED_ROOT_MODULE_VERSION, MSG_PATTERN_KEY_UPDATE_ROOT_MODULE_VERSION_TO_DEFAULT, MSG_PATTERN_KEY_UPDATE_ROOT_MODULE_VERSION_TO_WORKSPACE_DIRECTORY_VERSION, MSG_PATTERN_KEY_UPDATING, MSG_PATTERN_KEY_VERSION_DOES_NOT_EXIST, MSG_PATTERN_KEY_VISITING_LEAF_MODULE_VERSION, MSG_PATTERN_KEY_VISITING_LEAF_REFERENCE_MATCHED, referencePath, RUNTIME_PROPERTY_PROJECT_CODE, RUNTIME_PROPERTY_SYNC_WORKSPACE_DIR, unsyncChangesBehaviorLocal, unsyncChangesBehaviorRemote| Constructor and Description |
|---|
Checkout(List<org.azyva.dragom.model.ModuleVersion> listModuleVersionRoot)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
performJob()
We override the main method since we do not really reuse the base class'
functionality.
|
afterIterateListModuleVersionRoot, beforeIterateListModuleVersionRoot, beforeValidateListModuleVersionRoot, getProjectCode, getReferencePathMatcher, isListModuleVersionRootChanged, iterateListModuleVersionRoot, setIndAvoidReentry, setIndDepthFirst, setIndHandleDynamicVersion, setIndHandleStaticVersion, setIndListModuleVersionRootChanged, setReferencePathMatcherProvided, setUnsyncChangesBehaviorLocal, setUnsyncChangesBehaviorRemote, setupReferencePathMatcherForProjectCode, validateListModuleVersionRoot, visitMatchedModuleVersion, visitModuleVersionpublic Checkout(List<org.azyva.dragom.model.ModuleVersion> listModuleVersionRoot)
listModuleVersionRoot - List of root ModuleVersion's on which to initiate
the traversal of the reference graphs.public void performJob()
performJob in class RootModuleVersionJobAbstractImplCopyright © 2015–2016 AZYVA INC.. All rights reserved.