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

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `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

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `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