Package org.apache.maven.shared.model.fileset.mappers

# Class GlobPatternMapper

java.lang.Object
org.apache.maven.shared.model.fileset.mappers.GlobPatternMapper

All Implemented Interfaces:
  `FileNameMapper`

Direct Known Subclasses:
  `PackageNameMapper`, `UnPackageNameMapper`

public class GlobPatternMapper extends Object implements FileNameMapper
Implementation of FileNameMapper that does simple wildcard pattern replacements.

This does simple translations like *.foo -> *.bar where the prefix to .foo will be left unchanged. It only handles a single * character, use regular expressions for more complicated situations.

This is one of the more useful Mappers, it is used by `javac` for example.

Version:
  $Id: GlobPatternMapper.java 1721579 2015-12-23 21:08:39Z khmarbaise $

## Field Summary

Fields
Modifier and Type
Field
Description
`protected String`
`fromPostfix`
Part of "from" pattern after the *.
`protected String`
`fromPrefix`
Part of "from" pattern before the *.
`protected int`
`postfixLength`
Length of the postfix ("from" pattern).
`protected int`
`prefixLength`
Length of the prefix ("from" pattern).
`protected String`
`toPostfix`
Part of "to" pattern after the *.
`protected String`
`toPrefix`
Part of "to" pattern before the *.

## Constructor Summary

Constructors
Constructor
Description
`GlobPatternMapper()`

## Method Summary

Modifier and Type
Method
Description
`protected String`
`extractVariablePart(String name)`
Returns the part of the given string that matches the * in the "from" pattern.
`String`
`mapFileName(String sourceFileName)`
Returns the target filename for the given source file.
`void`
`setCaseSensitive(boolean caseSensitive)`
Attribute specifing whether to ignore the case difference in the names.
`void`
`setFrom(String from)`
Sets the from part of the transformation rule.
`void`
`setHandleDirSep(boolean handleDirSep)`
Attribute specifing whether to ignore the difference between / and \ (the two common directory characters).
`void`
`setTo(String to)`
Sets the to part of the transformation rule.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### fromPrefix

protected String fromPrefix
Part of "from" pattern before the *.

### fromPostfix

protected String fromPostfix
Part of "from" pattern after the *.

### prefixLength

protected int prefixLength
Length of the prefix ("from" pattern).

### postfixLength

protected int postfixLength
Length of the postfix ("from" pattern).

### toPrefix

protected String toPrefix
Part of "to" pattern before the *.

### toPostfix

protected String toPostfix
Part of "to" pattern after the *.

## Constructor Details

### GlobPatternMapper

public GlobPatternMapper()

## Method Details

### setHandleDirSep

public void setHandleDirSep(boolean handleDirSep)
Attribute specifing whether to ignore the difference between / and \ (the two common directory characters).

Parameters:
  `handleDirSep` - a boolean, default is false.

### setCaseSensitive

public void setCaseSensitive(boolean caseSensitive)
Attribute specifing whether to ignore the case difference in the names.

Parameters:
  `caseSensitive` - a boolean, default is false.

### setFrom

public void setFrom(String from)
Sets the from part of the transformation rule.

Specified by:
  `setFrom` in interface `FileNameMapper`
Parameters:
  `from` - The source.

### setTo

public void setTo(String to)
Sets the to part of the transformation rule.

Specified by:
  `setTo` in interface `FileNameMapper`
Parameters:
  `to` - The destination.

### mapFileName

public String mapFileName(String sourceFileName)
Returns the target filename for the given source file.

if the given rule doesn't apply to the source file, implementation must return null. SourceFileScanner will then omit the source file in question.

Specified by:
  `mapFileName` in interface `FileNameMapper`
Parameters:
  `sourceFileName` - the name of the source file relative to some given basedirectory.
Returns:
  the target filename for the given source file.

### extractVariablePart

protected String extractVariablePart(String name)
Returns the part of the given string that matches the * in the "from" pattern.

Parameters:
  `name` - the source file name
Returns:
  the variable part of the name