Package org.gradle.api.tasks
Class WriteProperties
- java.lang.Object
-
- org.gradle.api.internal.AbstractTask
-
- org.gradle.api.DefaultTask
-
- org.gradle.api.tasks.WriteProperties
-
- All Implemented Interfaces:
Comparable<Task>
,org.gradle.api.internal.DynamicObjectAware
,org.gradle.api.internal.TaskInternal
,ExtensionAware
,Task
,org.gradle.util.Configurable<Task>
@Incubating @CacheableTask public class WriteProperties extends DefaultTask
Writes aProperties
in a way that the results can be expected to be reproducible.There are a number of differences compared to how properties are stored:
- no timestamp comment is generated at the beginning of the file
- the lines in the resulting files are separated by a pre-set separator (defaults to '\n') instead of the system default line separator
- the properties are sorted alphabetically
Like with
Properties
, Unicode characters are escaped when using the default Latin-1 (ISO-8559-1) encoding.- Since:
- 3.3
- See Also:
Properties.store(OutputStream, String)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.gradle.api.Task
Task.Namer
-
-
Field Summary
-
Fields inherited from interface org.gradle.api.Task
TASK_ACTION, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE
-
-
Constructor Summary
Constructors Constructor Description WriteProperties()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
getComment()
Returns the optional comment to add at the beginning of the properties file.String
getEncoding()
Returns the encoding used to write the properties file.String
getLineSeparator()
Returns the line separator to be used when creating the properties file.File
getOutputFile()
Returns the output file to write the properties to.Map<String,String>
getProperties()
Returns an immutable view of properties to be written to the properties file.void
properties(Map<String,Object> properties)
Adds multiple properties to be written to the properties file.void
property(String name, Object value)
Adds a property to be written to the properties file.void
setComment(String comment)
Sets the optional comment to add at the beginning of the properties file.void
setEncoding(String encoding)
Sets the encoding used to write the properties file.void
setLineSeparator(String lineSeparator)
Sets the line separator to be used when creating the properties file.void
setOutputFile(File outputFile)
Sets the output file to write the properties to.void
setOutputFile(Object outputFile)
Sets the output file to write the properties to.void
setProperties(Map<String,Object> properties)
Sets all properties to be written to the properties file replacing any existing properties.void
writeProperties()
-
Methods inherited from class org.gradle.api.DefaultTask
newInputDirectory, newInputFile, newOutputDirectory, newOutputFile
-
Methods inherited from class org.gradle.api.internal.AbstractTask
addValidator, appendParallelSafeAction, compareTo, configure, deleteAllActions, dependsOn, dependsOnTaskDidWork, doFirst, doFirst, doFirst, doLast, doLast, doLast, execute, finalizedBy, getActions, getAnt, getAsDynamicObject, getConvention, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExecuter, getExtensions, getFinalizedBy, getGroup, getIdentityPath, getImpliesSubProjects, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOnlyIf, getOutputs, getPath, getProject, getServices, getShouldRunAfter, getStandardOutputCapture, getState, getTaskActions, getTaskDependencies, getTemporaryDir, getTemporaryDirFactory, getValidators, hasProperty, injectIntoNewInstance, isEnabled, isHasCustomActions, leftShift, mustRunAfter, onlyIf, onlyIf, prependParallelSafeAction, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setExecuter, setFinalizedBy, setGroup, setImpliesSubProjects, setMustRunAfter, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, toString
-
-
-
-
Method Detail
-
getProperties
@Incubating @Input public Map<String,String> getProperties()
Returns an immutable view of properties to be written to the properties file.- Since:
- 3.3
-
setProperties
public void setProperties(Map<String,Object> properties)
Sets all properties to be written to the properties file replacing any existing properties.- See Also:
properties(Map)
,property(String, Object)
-
property
@Incubating public void property(String name, Object value)
Adds a property to be written to the properties file.A property's value will be coerced to a
String
withString#valueOf(Object)
or aCallable
returning a value to be coerced into aString
.Values are not allowed to be null.
- Parameters:
name
- Name of the propertyvalue
- Value of the property- Since:
- 3.4
-
properties
@Incubating public void properties(Map<String,Object> properties)
Adds multiple properties to be written to the properties file.This is a convenience method for calling
property(String, Object)
multiple times.- Parameters:
properties
- Properties to be added- Since:
- 3.4
- See Also:
property(String, Object)
-
getLineSeparator
@Input public String getLineSeparator()
Returns the line separator to be used when creating the properties file. Defaults to `\n`.
-
setLineSeparator
public void setLineSeparator(String lineSeparator)
Sets the line separator to be used when creating the properties file.
-
getComment
@Input @Optional public String getComment()
Returns the optional comment to add at the beginning of the properties file.
-
setComment
public void setComment(String comment)
Sets the optional comment to add at the beginning of the properties file.
-
getEncoding
@Input public String getEncoding()
Returns the encoding used to write the properties file. Defaults to ISO_8859_1. If set to anything different, unicode escaping is turned off.
-
setEncoding
public void setEncoding(String encoding)
Sets the encoding used to write the properties file. Defaults to ISO_8859_1. If set to anything different, unicode escaping is turned off.
-
getOutputFile
@OutputFile public File getOutputFile()
Returns the output file to write the properties to.
-
setOutputFile
public void setOutputFile(File outputFile)
Sets the output file to write the properties to.- Since:
- 4.0
-
setOutputFile
public void setOutputFile(Object outputFile)
Sets the output file to write the properties to.
-
writeProperties
public void writeProperties() throws IOException
- Throws:
IOException
-
-