org.jvnet.hudson.test
Class ExtractResourceWithChangesSCM

java.lang.Object
  extended by hudson.scm.SCM
      extended by hudson.scm.NullSCM
          extended by org.jvnet.hudson.test.ExtractResourceWithChangesSCM
All Implemented Interfaces:
ExtensionPoint, Describable<SCM>

public class ExtractResourceWithChangesSCM
extends NullSCM

SCM useful for testing that extracts the given resource as a zip file.

Author:
Kohsuke Kawaguchi

Nested Class Summary
 
Nested classes/interfaces inherited from class hudson.scm.NullSCM
NullSCM.DescriptorImpl
 
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudson
 
Field Summary
 
Fields inherited from class hudson.scm.SCM
PERMISSIONS, TAG
 
Constructor Summary
ExtractResourceWithChangesSCM(URL firstZip, URL secondZip)
           
ExtractResourceWithChangesSCM(URL firstZip, URL secondZip, String moduleRoot)
           
 
Method Summary
 boolean checkout(AbstractBuild<?,?> build, Launcher launcher, FilePath workspace, BuildListener listener, File changeLogFile)
          Obtains a fresh workspace of the module(s) into the specified directory of the specified machine.
 ChangeLogParser createChangeLogParser()
          The returned object will be used to parse changelog.xml.
 FilePath getModuleRoot(FilePath workspace)
           
 void saveToChangeLog(File changeLogFile, ExtractChangeLogParser.ExtractChangeLogEntry changeLog)
           
 
Methods inherited from class hudson.scm.NullSCM
calcRevisionsFromBuild, compareRemoteRevisionWith
 
Methods inherited from class hudson.scm.SCM
_calcRevisionsFromBuild, _for, all, buildEnvVars, createEmptyChangeLog, getApi, getBrowser, getDescriptor, getEffectiveBrowser, getModuleRoot, getModuleRoots, 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
 

Constructor Detail

ExtractResourceWithChangesSCM

public ExtractResourceWithChangesSCM(URL firstZip,
                                     URL secondZip)

ExtractResourceWithChangesSCM

public ExtractResourceWithChangesSCM(URL firstZip,
                                     URL secondZip,
                                     String moduleRoot)
Method Detail

getModuleRoot

public FilePath getModuleRoot(FilePath workspace)
Overrides:
getModuleRoot in class SCM

checkout

public boolean checkout(AbstractBuild<?,?> build,
                        Launcher launcher,
                        FilePath workspace,
                        BuildListener listener,
                        File changeLogFile)
                 throws IOException,
                        InterruptedException
Description copied from class: SCM
Obtains a fresh workspace of the module(s) into the specified directory of the specified machine.

The "update" operation can be performed instead of a fresh checkout if feasible.

This operation should also capture the information necessary to tag the workspace later.

Overrides:
checkout in class NullSCM
launcher - Abstracts away the machine that the files will be checked out.
workspace - a directory to check out the source code. May contain left-over from the previous build.
changeLogFile - Upon a successful return, this file should capture the changelog. When there's no change, this file should contain an empty entry. See SCM.createEmptyChangeLog(File, BuildListener, String).
Returns:
false if the operation fails. The error should be reported to the listener. Otherwise return the changes included in this update (if this was an update.)

Using the return value to indicate success/failure should be considered deprecated, and implementations are encouraged to throw AbortException to indicate a failure.

Throws:
InterruptedException - interruption is usually caused by the user aborting the build. this exception will cause the build to be aborted.
IOException

createChangeLogParser

public ChangeLogParser createChangeLogParser()
Description copied from class: SCM
The returned object will be used to parse changelog.xml.

Overrides:
createChangeLogParser in class NullSCM

saveToChangeLog

public void saveToChangeLog(File changeLogFile,
                            ExtractChangeLogParser.ExtractChangeLogEntry changeLog)
                     throws IOException
Throws:
IOException


Copyright © 2004-2013. All Rights Reserved.