FileDocCategorySizeDatePackage
WLRmic.javaAPI DocApache Ant 1.703991Wed Dec 13 06:16:20 GMT 2006org.apache.tools.ant.taskdefs.rmic

WLRmic

public class WLRmic extends DefaultRmicAdapter
The implementation of the rmic for WebLogic
since
Ant 1.4

Fields Summary
public static final String
WLRMIC_CLASSNAME
The classname of the weblogic rmic
public static final String
COMPILER_NAME
the name of this adapter for users to select
public static final String
ERROR_NO_WLRMIC_ON_CLASSPATH
The error string to use if not able to find the weblogic rmic
public static final String
ERROR_WLRMIC_FAILED
The error string to use if not able to start the weblogic rmic
public static final String
WL_RMI_STUB_SUFFIX
The stub suffix
public static final String
WL_RMI_SKEL_SUFFIX
The skeleton suffix
Constructors Summary
Methods Summary
public booleanexecute()
Carry out the rmic compilation.

return
true if the compilation succeeded
throws
BuildException on error


                         
         
        getRmic().log("Using WebLogic rmic", Project.MSG_VERBOSE);
        Commandline cmd = setupRmicCommand(new String[] {"-noexit"});

        AntClassLoader loader = null;
        try {
            // Create an instance of the rmic
            Class c = null;
            if (getRmic().getClasspath() == null) {
                c = Class.forName(WLRMIC_CLASSNAME);
            } else {
                loader
                    = getRmic().getProject().createClassLoader(getRmic().getClasspath());
                c = Class.forName(WLRMIC_CLASSNAME, true, loader);
            }
            Method doRmic = c.getMethod("main",
                                        new Class [] {String[].class});
            doRmic.invoke(null, new Object[] {cmd.getArguments()});
            return true;
        } catch (ClassNotFoundException ex) {
            throw new BuildException(ERROR_NO_WLRMIC_ON_CLASSPATH, getRmic().getLocation());
        } catch (Exception ex) {
            if (ex instanceof BuildException) {
                throw (BuildException) ex;
            } else {
                throw new BuildException(ERROR_WLRMIC_FAILED, ex,
                                         getRmic().getLocation());
            }
        } finally {
            if (loader != null) {
                loader.cleanup();
            }
        }
    
public java.lang.StringgetSkelClassSuffix()
Get the suffix for the rmic skeleton classes

return
the skeleton suffix

        return WL_RMI_SKEL_SUFFIX;
    
public java.lang.StringgetStubClassSuffix()
Get the suffix for the rmic stub classes

return
the stub suffix

        return WL_RMI_STUB_SUFFIX;