hudson.plugins.cloneworkspace
Class CloneWorkspaceSCM

java.lang.Object
  extended by hudson.scm.SCM
      extended by hudson.plugins.cloneworkspace.CloneWorkspaceSCM
All Implemented Interfaces:
hudson.ExtensionPoint, hudson.model.Describable<hudson.scm.SCM>

public class CloneWorkspaceSCM
extends hudson.scm.SCM

SCM that inherits the workspace from another build through WorkspaceSnapshot Derived from WorkspaceSnapshotSCM.

Author:
Kohsuke Kawaguchi, Andrew Bayer

Nested Class Summary
 class CloneWorkspaceSCM.CloneWorkspaceSCMRevisionState
           
static class CloneWorkspaceSCM.DescriptorImpl
           
 
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
hudson.ExtensionPoint.LegacyInstancesAreScopedToHudson
 
Field Summary
 java.lang.String criteria
          The criteria by which to choose the build to inherit from.
 java.lang.String parentJobName
          The job name from which we inherit the workspace.
 
Fields inherited from class hudson.scm.SCM
PERMISSIONS, TAG
 
Constructor Summary
CloneWorkspaceSCM(java.lang.String parentJobName, java.lang.String criteria)
           
 
Method Summary
 hudson.scm.SCMRevisionState calcRevisionsFromBuild(hudson.model.AbstractBuild build, hudson.Launcher launcher, hudson.model.TaskListener listener)
           
 boolean checkout(hudson.model.AbstractBuild build, hudson.Launcher launcher, hudson.FilePath workspace, hudson.model.BuildListener listener, java.io.File changelogFile)
           
protected  hudson.scm.PollingResult compareRemoteRevisionWith(hudson.model.AbstractProject<?,?> project, hudson.Launcher launcher, hudson.FilePath workspace, hudson.model.TaskListener listener, hudson.scm.SCMRevisionState _baseline)
           
 hudson.scm.ChangeLogParser createChangeLogParser()
           
 CloneWorkspaceSCM.DescriptorImpl getDescriptor()
           
static java.io.File getParentBuildFile(hudson.model.AbstractBuild b)
           
 hudson.plugins.cloneworkspace.CloneWorkspaceSCM.Snapshot resolve()
          Obtains the WorkspaceSnapshot object that this SCM points to, or throws ResolvedFailedException upon failing.
 
Methods inherited from class hudson.scm.SCM
_calcRevisionsFromBuild, _for, all, buildEnvVars, createEmptyChangeLog, getApi, getBrowser, getEffectiveBrowser, getModuleRoot, getModuleRoots, getType, nullify, poll, pollChanges, processWorkspaceBeforeDeletion, requiresWorkspaceForPolling, supportsPolling
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

parentJobName

public java.lang.String parentJobName
The job name from which we inherit the workspace.


criteria

public java.lang.String criteria
The criteria by which to choose the build to inherit from. Can be "Any" (meaning most recent completed build), "Not Failed" (meaning most recent unstable/stable build), or "Successful" (meaning most recent stable build).

Constructor Detail

CloneWorkspaceSCM

@DataBoundConstructor
public CloneWorkspaceSCM(java.lang.String parentJobName,
                                              java.lang.String criteria)
Method Detail

resolve

public hudson.plugins.cloneworkspace.CloneWorkspaceSCM.Snapshot resolve()
                                                                 throws hudson.plugins.cloneworkspace.CloneWorkspaceSCM.ResolvedFailedException
Obtains the WorkspaceSnapshot object that this SCM points to, or throws ResolvedFailedException upon failing.

Returns:
never null.
Throws:
hudson.plugins.cloneworkspace.CloneWorkspaceSCM.ResolvedFailedException

checkout

public boolean checkout(hudson.model.AbstractBuild build,
                        hudson.Launcher launcher,
                        hudson.FilePath workspace,
                        hudson.model.BuildListener listener,
                        java.io.File changelogFile)
                 throws java.io.IOException,
                        java.lang.InterruptedException
Specified by:
checkout in class hudson.scm.SCM
Throws:
java.io.IOException
java.lang.InterruptedException

createChangeLogParser

public hudson.scm.ChangeLogParser createChangeLogParser()
Specified by:
createChangeLogParser in class hudson.scm.SCM

getDescriptor

public CloneWorkspaceSCM.DescriptorImpl getDescriptor()
Specified by:
getDescriptor in interface hudson.model.Describable<hudson.scm.SCM>
Overrides:
getDescriptor in class hudson.scm.SCM

getParentBuildFile

public static java.io.File getParentBuildFile(hudson.model.AbstractBuild b)

calcRevisionsFromBuild

public hudson.scm.SCMRevisionState calcRevisionsFromBuild(hudson.model.AbstractBuild build,
                                                          hudson.Launcher launcher,
                                                          hudson.model.TaskListener listener)
                                                   throws java.io.IOException,
                                                          java.lang.InterruptedException
Specified by:
calcRevisionsFromBuild in class hudson.scm.SCM
Throws:
java.io.IOException
java.lang.InterruptedException

compareRemoteRevisionWith

protected hudson.scm.PollingResult compareRemoteRevisionWith(hudson.model.AbstractProject<?,?> project,
                                                             hudson.Launcher launcher,
                                                             hudson.FilePath workspace,
                                                             hudson.model.TaskListener listener,
                                                             hudson.scm.SCMRevisionState _baseline)
                                                      throws java.io.IOException,
                                                             java.lang.InterruptedException
Specified by:
compareRemoteRevisionWith in class hudson.scm.SCM
Throws:
java.io.IOException
java.lang.InterruptedException


Copyright © 2010. All Rights Reserved.