Package org.apache.tools.ant.util.regexp

# Class RegexpMatcherFactory

java.lang.Object
org.apache.tools.ant.util.regexp.RegexpMatcherFactory

Direct Known Subclasses:
  `RegexpFactory`

    public class RegexpMatcherFactory
    extends java.lang.Object

Simple Factory Class that produces an implementation of RegexpMatcher based on the system property `ant.regexp.regexpimpl` and the classes available.

In a more general framework this class would be abstract and have a static newInstance method.

## Constructor Summary

Constructors
Constructor | Description
--- | ---
`RegexpMatcherFactory()` |

## Method Summary

Modifier and Type | Method | Description
--- | --- | ---
`protected RegexpMatcher` | `createInstance​(java.lang.String className)` | Create an instance of a matcher from a classname.
`RegexpMatcher` | `newRegexpMatcher()` | Create a new regular expression instance.
`RegexpMatcher` | `newRegexpMatcher​(Project p)` | Create a new regular expression instance.
`static boolean` | `regexpMatcherPresent​(Project project)` | Checks if a RegExp-Matcher is available.
`protected void` | `testAvailability​(java.lang.String className)` | Test if a particular class is available to be used.

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

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

## Constructor Details

### RegexpMatcherFactory

public RegexpMatcherFactory()

## Method Details

### newRegexpMatcher

public RegexpMatcher newRegexpMatcher() throws BuildException
Create a new regular expression instance.

Returns:
  the matcher
Throws:
  `BuildException` - on error

### newRegexpMatcher

public RegexpMatcher newRegexpMatcher​(Project p) throws BuildException
Create a new regular expression instance.

Parameters:
  `p` - Project whose ant.regexp.regexpimpl property will be used.
Returns:
  the matcher
Throws:
  `BuildException` - on error

### createInstance

protected RegexpMatcher createInstance​(java.lang.String className) throws BuildException
Create an instance of a matcher from a classname.

Parameters:
  `className` - a `String` value
Returns:
  a `RegexpMatcher` value
Throws:
  `BuildException` - if an error occurs

### testAvailability

protected void testAvailability​(java.lang.String className) throws BuildException
Test if a particular class is available to be used.

Parameters:
  `className` - a `String` value
Throws:
  `BuildException` - if an error occurs

### regexpMatcherPresent

public static boolean regexpMatcherPresent​(Project project)
Checks if a RegExp-Matcher is available.

Parameters:
  `project` - The project to check for (may be `null`)
Returns:
  `true` if available otherwise `false`