org.gradle
Class StartParameter

java.lang.Object
  extended by org.gradle.logging.LoggingConfiguration
      extended by org.gradle.StartParameter
All Implemented Interfaces:
Serializable

public class StartParameter
extends org.gradle.logging.LoggingConfiguration
implements Serializable

StartParameter defines the configuration used by a GradleLauncher instance to execute a build. The properties of StartParameter generally correspond to the command-line options of Gradle. You pass a StartParameter instance to GradleLauncher.newInstance(StartParameter) when you create a new Gradle instance.

You can obtain an instance of a StartParameter by either creating a new one, or duplicating an existing one using newInstance() or newBuild().

See Also:
GradleLauncher, Serialized Form

Field Summary
static File DEFAULT_GRADLE_USER_HOME
          The default user home directory.
static String GRADLE_USER_HOME_PROPERTY_KEY
           
 
Constructor Summary
StartParameter()
          Creates a StartParameter with default values.
 
Method Summary
 void addInitScript(File initScriptFile)
          Adds the given file to the list of init scripts that are run before the build starts.
 boolean equals(Object obj)
           
 File getBuildFile()
          Returns the build file to use to select the default project.
 CacheUsage getCacheUsage()
           
 File getCurrentDir()
          Returns the directory to use to select the default project, and to search for the settings file.
 Set<String> getExcludedTaskNames()
          Returns the names of the tasks to be excluded from this build.
 File getGradleUserHomeDir()
          Returns the directory to use as the user home directory.
 List<File> getInitScripts()
          Returns all explicitly added init scripts that will be run before the build starts.
 Map<String,String> getMergedSystemProperties()
          Returns a newly constructed map that is the JVM system properties merged with the system property args.
 File getProjectCacheDir()
          Returns the project's cache dir.
 File getProjectDir()
          Returns the project dir to use to select the default project.
 Map<String,String> getProjectProperties()
           
 RefreshOptions getRefreshOptions()
          Returns the refresh options used for the build.
 File getSettingsFile()
          Returns the explicit settings file to use for the build, or null.
 Map<String,String> getSystemPropertiesArgs()
           
 List<String> getTaskNames()
          Returns the names of the tasks to execute in this build.
 int hashCode()
           
 boolean isBuildProjectDependencies()
          Returns true if project dependencies are to be built, false if they should not be.
 boolean isContinueOnFailure()
          Specifies whether the build should continue on task failure.
 boolean isDryRun()
           
 boolean isNoOpt()
           
 boolean isOffline()
          Specifies whether the build should be performed offline (ie without network access).
 boolean isProfile()
          Returns true if a profile report will be generated.
 boolean isSearchUpwards()
           
 boolean isUseEmptySettings()
          Returns whether an empty settings script will be used regardless of whether one exists in the default location.
 StartParameter newBuild()
          Creates the parameters for a new build, using these parameters as a template.
 StartParameter newInstance()
          Duplicates this StartParameter instance.
 void setBuildFile(File buildFile)
          Sets the build file to use to select the default project.
 StartParameter setBuildProjectDependencies(boolean build)
          Specifies whether project dependencies should be built.
 void setCacheUsage(CacheUsage cacheUsage)
           
 void setContinueOnFailure(boolean continueOnFailure)
          Specifies whether the build should continue on task failure.
 void setCurrentDir(File currentDir)
          Sets the directory to use to select the default project, and to search for the settings file.
 void setDryRun(boolean dryRun)
           
 void setExcludedTaskNames(Iterable<String> excludedTaskNames)
          Sets the tasks to exclude from this build.
 void setGradleUserHomeDir(File gradleUserHomeDir)
          Sets the directory to use as the user home directory.
 void setInitScripts(List<File> initScripts)
          Sets the list of init scripts to be run before the build starts.
 void setNoOpt(boolean noOpt)
           
 void setOffline(boolean offline)
          Specifies whether the build should be performed offline (ie without network access).
 void setProfile(boolean profile)
          Specifies if a profile report should be generated.
 void setProjectCacheDir(File projectCacheDir)
          Sets the project's cache location.
 void setProjectDir(File projectDir)
          Sets the project directory to use to select the default project.
 void setProjectProperties(Map<String,String> projectProperties)
           
 void setRefreshOptions(RefreshOptions refreshOptions)
          Supplies the refresh options to use for the build.
 void setSearchUpwards(boolean searchUpwards)
           
 void setSettingsFile(File settingsFile)
          Sets the settings file to use for the build.
 void setSystemPropertiesArgs(Map<String,String> systemPropertiesArgs)
           
 void setTaskNames(Iterable<String> taskNames)
          Sets the tasks to execute in this build.
 String toString()
           
 StartParameter useEmptySettings()
          Specifies that an empty settings script should be used.
 StartParameter useEmptySettingsScript()
          Deprecated. use useEmptySettings()
 
Methods inherited from class org.gradle.logging.LoggingConfiguration
getLogLevel, getShowStacktrace, isColorOutput, setColorOutput, setLogLevel, setShowStacktrace
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

GRADLE_USER_HOME_PROPERTY_KEY

public static final String GRADLE_USER_HOME_PROPERTY_KEY
See Also:
Constant Field Values

DEFAULT_GRADLE_USER_HOME

public static final File DEFAULT_GRADLE_USER_HOME
The default user home directory.

Constructor Detail

StartParameter

public StartParameter()
Creates a StartParameter with default values. This is roughly equivalent to running Gradle on the command-line with no arguments.

Method Detail

setProjectCacheDir

public void setProjectCacheDir(File projectCacheDir)
Sets the project's cache location. Set to null to use the default location.


getProjectCacheDir

public File getProjectCacheDir()
Returns the project's cache dir.

Returns:
project's cache dir, or null if the default location is to be used.

newInstance

public StartParameter newInstance()
Duplicates this StartParameter instance.

Returns:
the new parameters.

newBuild

public StartParameter newBuild()

Creates the parameters for a new build, using these parameters as a template. Copies the environmental properties from this parameter (eg gradle user home dir, etc), but does not copy the build specific properties (eg task names).

Returns:
The new parameters.

equals

public boolean equals(Object obj)
Overrides:
equals in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

getBuildFile

public File getBuildFile()
Returns the build file to use to select the default project. Returns null when the build file is not used to select the default project.

Returns:
The build file. May be null.

setBuildFile

public void setBuildFile(File buildFile)
Sets the build file to use to select the default project. Use null to disable selecting the default project using the build file.

Parameters:
buildFile - The build file. May be null.

useEmptySettings

public StartParameter useEmptySettings()
Specifies that an empty settings script should be used. This means that even if a settings file exists in the conventional location, or has been previously specified by setSettingsFile(java.io.File), it will not be used. If setSettingsFile(java.io.File) is called after this, it will supersede calling this method.

Returns:
this

useEmptySettingsScript

@Deprecated
public StartParameter useEmptySettingsScript()
Deprecated. use useEmptySettings()

Deprecated. Use useEmptySettings().


isUseEmptySettings

public boolean isUseEmptySettings()
Returns whether an empty settings script will be used regardless of whether one exists in the default location.

Returns:
Whether to use empty settings or not.

getTaskNames

public List<String> getTaskNames()
Returns the names of the tasks to execute in this build. When empty, the default tasks for the project will be executed.

Returns:
the names of the tasks to execute in this build. Never returns null.

setTaskNames

public void setTaskNames(Iterable<String> taskNames)

Sets the tasks to execute in this build. Set to an empty list, or null, to execute the default tasks for the project. The tasks are executed in the order provided, subject to dependency between the tasks.

Parameters:
taskNames - the names of the tasks to execute in this build.

getExcludedTaskNames

public Set<String> getExcludedTaskNames()
Returns the names of the tasks to be excluded from this build. When empty, no tasks are excluded from the build.

Returns:
The names of the excluded tasks. Returns an empty set if there are no such tasks.

setExcludedTaskNames

public void setExcludedTaskNames(Iterable<String> excludedTaskNames)
Sets the tasks to exclude from this build.

Parameters:
excludedTaskNames - The task names. Can be null.

getCurrentDir

public File getCurrentDir()
Returns the directory to use to select the default project, and to search for the settings file.

Returns:
The current directory. Never returns null.

setCurrentDir

public void setCurrentDir(File currentDir)
Sets the directory to use to select the default project, and to search for the settings file. Set to null to use the default current directory.

Parameters:
currentDir - The directory. Should not be null.

isSearchUpwards

public boolean isSearchUpwards()

setSearchUpwards

public void setSearchUpwards(boolean searchUpwards)

getProjectProperties

public Map<String,String> getProjectProperties()

setProjectProperties

public void setProjectProperties(Map<String,String> projectProperties)

getSystemPropertiesArgs

public Map<String,String> getSystemPropertiesArgs()

setSystemPropertiesArgs

public void setSystemPropertiesArgs(Map<String,String> systemPropertiesArgs)

getMergedSystemProperties

public Map<String,String> getMergedSystemProperties()
Returns a newly constructed map that is the JVM system properties merged with the system property args.

System property args take precedency overy JVM system properties.

Returns:
The merged system properties

getGradleUserHomeDir

public File getGradleUserHomeDir()
Returns the directory to use as the user home directory.

Returns:
The home directory.

setGradleUserHomeDir

public void setGradleUserHomeDir(File gradleUserHomeDir)
Sets the directory to use as the user home directory. Set to null to use the default directory.

Parameters:
gradleUserHomeDir - The home directory. May be null.

isBuildProjectDependencies

public boolean isBuildProjectDependencies()
Returns true if project dependencies are to be built, false if they should not be. The default is true.


setBuildProjectDependencies

public StartParameter setBuildProjectDependencies(boolean build)
Specifies whether project dependencies should be built. Defaults to true.

Returns:
this

getCacheUsage

public CacheUsage getCacheUsage()

setCacheUsage

public void setCacheUsage(CacheUsage cacheUsage)

isDryRun

public boolean isDryRun()

setDryRun

public void setDryRun(boolean dryRun)

isNoOpt

public boolean isNoOpt()

setNoOpt

public void setNoOpt(boolean noOpt)

setSettingsFile

public void setSettingsFile(File settingsFile)
Sets the settings file to use for the build. Use null to use the default settings file.

Parameters:
settingsFile - The settings file to use. May be null.

getSettingsFile

public File getSettingsFile()
Returns the explicit settings file to use for the build, or null. Will return null if the default settings file is to be used. However, if isUseEmptySettings() returns true, then no settings file at all will be used.

Returns:
The settings file. May be null.
See Also:
isUseEmptySettings()

addInitScript

public void addInitScript(File initScriptFile)
Adds the given file to the list of init scripts that are run before the build starts. This list is in addition to the default init scripts.

Parameters:
initScriptFile - The init scripts.

setInitScripts

public void setInitScripts(List<File> initScripts)
Sets the list of init scripts to be run before the build starts. This list is in addition to the default init scripts.

Parameters:
initScripts - The init scripts.

getInitScripts

public List<File> getInitScripts()
Returns all explicitly added init scripts that will be run before the build starts. This list does not contain the user init script located in ${user.home}/.gradle/init.gradle, even though that init script will also be run.

Returns:
list of all explicitly added init scripts.

setProjectDir

public void setProjectDir(File projectDir)
Sets the project directory to use to select the default project. Use null to use the default criteria for selecting the default project.

Parameters:
projectDir - The project directory. May be null.

getProjectDir

public File getProjectDir()
Returns the project dir to use to select the default project. Returns null when the build file is not used to select the default project

Returns:
The project dir. May be null.

setProfile

public void setProfile(boolean profile)
Specifies if a profile report should be generated.

Parameters:
profile - true if a profile report should be generated

isProfile

public boolean isProfile()
Returns true if a profile report will be generated.


isContinueOnFailure

public boolean isContinueOnFailure()
Specifies whether the build should continue on task failure. The default is false.


setContinueOnFailure

public void setContinueOnFailure(boolean continueOnFailure)
Specifies whether the build should continue on task failure. The default is false.


isOffline

public boolean isOffline()
Specifies whether the build should be performed offline (ie without network access).


setOffline

public void setOffline(boolean offline)
Specifies whether the build should be performed offline (ie without network access).


setRefreshOptions

public void setRefreshOptions(RefreshOptions refreshOptions)
Supplies the refresh options to use for the build.


getRefreshOptions

public RefreshOptions getRefreshOptions()
Returns the refresh options used for the build.


toString

public String toString()
Overrides:
toString in class Object