Package org.apache.tools.ant.util.facade

# Class FacadeTaskHelper

java.lang.Object
org.apache.tools.ant.util.facade.FacadeTaskHelper

    public class FacadeTaskHelper
    extends java.lang.Object

Helper class for facade implementations - encapsulates treatment of explicit implementation choices, magic properties and implementation specific command line arguments.

Since:
  Ant 1.5

## Constructor Summary

Constructors
Constructor | Description
--- | ---
`FacadeTaskHelper​(java.lang.String defaultValue)` |
`FacadeTaskHelper​(java.lang.String defaultValue, java.lang.String magicValue)` |

## Method Summary

Modifier and Type | Method | Description
--- | --- | ---
`void` | `addImplementationArgument​(ImplementationSpecificArgument arg)` | Command line argument.
`java.lang.String[]` | `getArgs()` | Retrieves the command line arguments enabled for the current facade implementation.
`java.lang.String` | `getExplicitChoice()` | Retrieves the explicit user choice.
`java.lang.String` | `getImplementation()` | Retrieves the implementation.
`Path` | `getImplementationClasspath​(Project project)` | The classpath to use when loading the implementation.
`boolean` | `hasBeenSet()` | Tests whether the implementation has been chosen by the user (either via a magic property or explicitly.
`void` | `setImplementation​(java.lang.String userChoice)` | Used for explicit user choices.
`void` | `setMagicValue​(java.lang.String magicValue)` | Used to set the value of the magic property.

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

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

## Constructor Details

### FacadeTaskHelper

public FacadeTaskHelper​(java.lang.String defaultValue)

Parameters:
  `defaultValue` - The default value for the implementation. Must not be null.

### FacadeTaskHelper

public FacadeTaskHelper​(java.lang.String defaultValue, java.lang.String magicValue)

Parameters:
  `defaultValue` - The default value for the implementation. Must not be null.
  `magicValue` - the value of a magic property that may hold a user. choice. May be null.

## Method Details

### setMagicValue

public void setMagicValue​(java.lang.String magicValue)
Used to set the value of the magic property.

Parameters:
  `magicValue` - the value of a magic property that may hold a user.

### setImplementation

public void setImplementation​(java.lang.String userChoice)
Used for explicit user choices.

Parameters:
  `userChoice` - the explicitly chosen implementation.

### getImplementation

public java.lang.String getImplementation()
Retrieves the implementation.

Returns:
  the implementation.

### getExplicitChoice

public java.lang.String getExplicitChoice()
Retrieves the explicit user choice.

Returns:
  the explicit user choice.

### addImplementationArgument

public void addImplementationArgument​(ImplementationSpecificArgument arg)
Command line argument.

Parameters:
  `arg` - an argument to add.

### getArgs

public java.lang.String[] getArgs()
Retrieves the command line arguments enabled for the current facade implementation.

Returns:
  an array of command line arguments.

### hasBeenSet

public boolean hasBeenSet()
Tests whether the implementation has been chosen by the user (either via a magic property or explicitly.

Returns:
  true if magic or user choice has be set.
Since:
  Ant 1.5.2

### getImplementationClasspath

public Path getImplementationClasspath​(Project project)
The classpath to use when loading the implementation.

Parameters:
  `project` - the current project
Returns:
  a Path instance that may be appended to
Since:
  Ant 1.8.0