Groovy Documentation

org.gradle.api.file
[Java] Interface CopySpec

org.gradle.api.file.CopySpec
  org.gradle.api.tasks.util.PatternFilterable
      org.gradle.api.file.ContentFilterable
          org.gradle.api.file.CopySourceSpec
              org.gradle.api.file.CopyProcessingSpec
All Superinterfaces:
PatternFilterable, ContentFilterable, CopySourceSpec, CopyProcessingSpec

@HasInternalProtocol
public interface CopySpec
extends CopyProcessingSpec, CopySourceSpec, PatternFilterable

A set of specifications for copying files. This includes:

CopySpecs may be nested by passing a closure to one of the from methods. The closure creates a child CopySpec and delegates methods in the closure to the child. Child CopySpecs inherit any values specified in the parent. This allows constructs like:
 into('webroot')
 exclude('**/.svn/**')
 from('src/main/webapp') {
    include '**/*.jsp'
 }
 from('src/main/js') {
    include '**/*.js'
 }
 
In this example, the into and exclude specifications at the root level are inherited by the two child CopySpecs.
See Also:
Copy Task
Project.copy


Method Summary
CopySpec eachFile(Action action)

{@inheritDoc}

CopySpec eachFile(Closure closure)

{@inheritDoc}

CopySpec exclude(String... excludes)

{@inheritDoc}

CopySpec exclude(Iterable excludes)

{@inheritDoc}

CopySpec exclude(Spec excludeSpec)

{@inheritDoc}

CopySpec exclude(Closure excludeSpec)

{@inheritDoc}

CopySpec expand(Map properties)

{@inheritDoc}

CopySpec filesMatching(String pattern, Action action)

Configure the FileCopyDetails for each file whose path matches the specified Ant-style pattern.

CopySpec filesNotMatching(String pattern, Action action)

Configure the FileCopyDetails for each file whose path does not match the specified Ant-style pattern.

CopySpec filter(Map properties, Class filterType)

{@inheritDoc}

CopySpec filter(Class filterType)

{@inheritDoc}

CopySpec filter(Closure closure)

{@inheritDoc}

CopySpec from(Object... sourcePaths)

{@inheritDoc}

CopySpec from(Object sourcePath, Closure c)

{@inheritDoc}

DuplicatesStrategy getDuplicatesStrategy()

Returns the strategy to use when trying to copy more than one file to the same destination.

boolean getIncludeEmptyDirs()

Tells if empty target directories will be included in the copy.

CopySpec include(String... includes)

{@inheritDoc}

CopySpec include(Iterable includes)

{@inheritDoc}

CopySpec include(Spec includeSpec)

{@inheritDoc}

CopySpec include(Closure includeSpec)

{@inheritDoc}

CopySpec into(Object destPath)

{@inheritDoc}

CopySpec into(Object destPath, Closure configureClosure)

Creates and configures a child CopySpec with the given destination path.

boolean isCaseSensitive()

Specifies whether case-sensitive pattern matching should be used.

CopySpec rename(Closure closure)

{@inheritDoc}

CopySpec rename(String sourceRegEx, String replaceWith)

{@inheritDoc}

CopyProcessingSpec rename(Pattern sourceRegEx, String replaceWith)

{@inheritDoc}

void setCaseSensitive(boolean caseSensitive)

Specifies whether case-sensitive pattern matching should be used for this CopySpec.

void setDuplicatesStrategy(DuplicatesStrategy strategy)

The strategy to use when trying to copy more than one file to the same destination.

CopySpec setExcludes(Iterable excludes)

{@inheritDoc}

void setIncludeEmptyDirs(boolean includeEmptyDirs)

Controls if empty target directories should be included in the copy.

CopySpec setIncludes(Iterable includes)

{@inheritDoc}

CopySpec with(CopySpec... sourceSpecs)

Adds the given specs as a child of this spec.

 
Methods inherited from interface PatternFilterable
exclude, exclude, exclude, exclude, getExcludes, getIncludes, include, include, include, include, setExcludes, setIncludes
 
Methods inherited from interface CopySourceSpec
from, from
 
Methods inherited from interface CopyProcessingSpec
eachFile, eachFile, getDirMode, getFileMode, into, rename, rename, rename, setDirMode, setFileMode
 
Methods inherited from interface ContentFilterable
expand, filter, filter, filter
 

Method Detail

eachFile

public CopySpec eachFile(Action action)
{@inheritDoc}


eachFile

public CopySpec eachFile(Closure closure)
{@inheritDoc}


exclude

public CopySpec exclude(String... excludes)
{@inheritDoc}
See Also:
Pattern Format


exclude

public CopySpec exclude(Iterable excludes)
{@inheritDoc}
See Also:
Pattern Format


exclude

public CopySpec exclude(Spec excludeSpec)
{@inheritDoc}
See Also:
Pattern Format


exclude

public CopySpec exclude(Closure excludeSpec)
{@inheritDoc}
See Also:
Pattern Format


expand

public CopySpec expand(Map properties)
{@inheritDoc}


filesMatching

@Incubating
public CopySpec filesMatching(String pattern, Action action)
Configure the FileCopyDetails for each file whose path matches the specified Ant-style pattern. This is equivalent to using eachFile() and selectively applying a configuration based on the file's path.
Parameters:
pattern - Ant-style pattern used to match against files' relative paths
action - action called for the FileCopyDetails of each file matching pattern
Returns:
this


filesNotMatching

@Incubating
public CopySpec filesNotMatching(String pattern, Action action)
Configure the FileCopyDetails for each file whose path does not match the specified Ant-style pattern. This is equivalent to using eachFile() and selectively applying a configuration based on the file's path.
Parameters:
pattern - Ant-style pattern used to match against files' relative paths
action - action called for the FileCopyDetails of each file that does not match pattern
Returns:
this


filter

public CopySpec filter(Map properties, Class filterType)
{@inheritDoc}


filter

public CopySpec filter(Class filterType)
{@inheritDoc}


filter

public CopySpec filter(Closure closure)
{@inheritDoc}


from

public CopySpec from(Object... sourcePaths)
{@inheritDoc}


from

public CopySpec from(Object sourcePath, Closure c)
{@inheritDoc}


getDuplicatesStrategy

@Incubating
public DuplicatesStrategy getDuplicatesStrategy()
Returns the strategy to use when trying to copy more than one file to the same destination.

The value can be set with a case insensitive string of the enum value (e.g. 'exclude' for DuplicatesStrategy#EXCLUDE#EXCLUDE).

This strategy can be overridden for individual files by using eachFile(org.gradle.api.Action) or filesMatching(String, org.gradle.api.Action).

Returns:
the strategy to use for files included by this copy spec.
See Also:
DuplicatesStrategy


getIncludeEmptyDirs

public boolean getIncludeEmptyDirs()
Tells if empty target directories will be included in the copy.
Returns:
true if empty target directories will be included in the copy, false otherwise


include

public CopySpec include(String... includes)
{@inheritDoc}
See Also:
Pattern Format


include

public CopySpec include(Iterable includes)
{@inheritDoc}
See Also:
Pattern Format


include

public CopySpec include(Spec includeSpec)
{@inheritDoc}
See Also:
Pattern Format


include

public CopySpec include(Closure includeSpec)
{@inheritDoc}
See Also:
Pattern Format


into

public CopySpec into(Object destPath)
{@inheritDoc}


into

public CopySpec into(Object destPath, Closure configureClosure)
Creates and configures a child CopySpec with the given destination path. The destination is evaluated as per Project.file.
Parameters:
destPath - Path to the destination directory for a Copy
configureClosure - The closure to use to configure the child CopySpec.
Returns:
this


isCaseSensitive

public boolean isCaseSensitive()
Specifies whether case-sensitive pattern matching should be used.
Returns:
true for case-sensitive matching.


rename

public CopySpec rename(Closure closure)
{@inheritDoc}


rename

public CopySpec rename(String sourceRegEx, String replaceWith)
{@inheritDoc}


rename

public CopyProcessingSpec rename(Pattern sourceRegEx, String replaceWith)
{@inheritDoc}


setCaseSensitive

public void setCaseSensitive(boolean caseSensitive)
Specifies whether case-sensitive pattern matching should be used for this CopySpec.
Parameters:
caseSensitive - true for case-sensitive matching.


setDuplicatesStrategy

@Incubating
public void setDuplicatesStrategy(@Nullable DuplicatesStrategy strategy)
The strategy to use when trying to copy more than one file to the same destination. Set to null to use the default strategy, which is inherited from the parent copy spec, if any, or DuplicatesStrategy#INCLUDE#INCLUDE if this copy spec has no parent.


setExcludes

public CopySpec setExcludes(Iterable excludes)
{@inheritDoc}
See Also:
Pattern Format


setIncludeEmptyDirs

public void setIncludeEmptyDirs(boolean includeEmptyDirs)
Controls if empty target directories should be included in the copy.
Parameters:
includeEmptyDirs - true if empty target directories should be included in the copy, false otherwise


setIncludes

public CopySpec setIncludes(Iterable includes)
{@inheritDoc}
See Also:
Pattern Format


with

public CopySpec with(CopySpec... sourceSpecs)
Adds the given specs as a child of this spec.
Parameters:
sourceSpecs - The specs to add
Returns:
this


 

Gradle API 1.8