## org.apache.tools.ant.taskdefs.rmic
Class RmicAdapterFactory

    java.lang.Object
      org.apache.tools.ant.taskdefs.rmic.RmicAdapterFactory

    public final class RmicAdapterFactory

extends java.lang.Object

Creates the necessary rmic adapter, given basic criteria.

Since:
  1.4

Field Summary
`static java.lang.String` `DEFAULT_COMPILER` If the compiler has this name use a default compiler.
`static java.lang.String` `ERROR_NOT_RMIC_ADAPTER` The error message to be used when the class is not an rmic adapter.
`static java.lang.String` `ERROR_UNKNOWN_COMPILER` The error message to be used when the compiler cannot be found.

Method Summary
`static RmicAdapter` `getRmic(java.lang.String rmicType, Task task)` Based on the parameter passed in, this method creates the necessary factory desired.
`static RmicAdapter` `getRmic(java.lang.String rmicType, Task task, Path classpath)` Based on the parameter passed in, this method creates the necessary factory desired.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### ERROR_UNKNOWN_COMPILER

    public static final java.lang.String ERROR_UNKNOWN_COMPILER

  The error message to be used when the compiler cannot be found.

  See Also:
    Constant Field Values

### ERROR_NOT_RMIC_ADAPTER

    public static final java.lang.String ERROR_NOT_RMIC_ADAPTER

  The error message to be used when the class is not an rmic adapter.

  See Also:
    Constant Field Values

### DEFAULT_COMPILER

    public static final java.lang.String DEFAULT_COMPILER

  If the compiler has this name use a default compiler.

  See Also:
    Constant Field Values

Method Detail

### getRmic

    public static RmicAdapter getRmic(java.lang.String rmicType,
                                      Task task)
                               throws BuildException

  Based on the parameter passed in, this method creates the necessary factory desired.

  The current mapping for rmic names are as follows:

  - sun = SUN's rmic
  - kaffe = Kaffe's rmic
  - a fully qualified classname = the name of a rmic adapter
  - weblogic = weblogic compiler
  - forking = Sun's RMIC by forking a new JVM

  Parameters:
    `rmicType` - either the name of the desired rmic, or the full classname of the rmic's adapter.
    `task` - a task to log through.
  Returns:
    the compiler adapter
  Throws:
    `BuildException` - if the rmic type could not be resolved into a rmic adapter.

### getRmic

    public static RmicAdapter getRmic(java.lang.String rmicType,
                                      Task task,
                                      Path classpath)
                               throws BuildException

  Based on the parameter passed in, this method creates the necessary factory desired.

  The current mapping for rmic names are as follows:

  - sun = SUN's rmic
  - kaffe = Kaffe's rmic
  - a fully qualified classname = the name of a rmic adapter
  - weblogic = weblogic compiler
  - forking = Sun's RMIC by forking a new JVM

  Parameters:
    `rmicType` - either the name of the desired rmic, or the full classname of the rmic's adapter.
    `task` - a task to log through.
    `classpath` - the classpath to use when looking up an adapter class
  Returns:
    the compiler adapter
  Throws:
    `BuildException` - if the rmic type could not be resolved into a rmic adapter.
  Since:
    Ant 1.8.0