Browse Source

Move AntEngine->Embeddor to follow suit with Avalon+Framework JSR naming conventions.

git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269052 13f79535-47bb-0310-9956-ffa450edef68
master
Peter Donald 24 years ago
parent
commit
a44c5e5b95
4 changed files with 112 additions and 153 deletions
  1. +13
    -13
      proposal/myrmidon/src/java/org/apache/ant/Main.java
  2. +0
    -34
      proposal/myrmidon/src/java/org/apache/ant/runtime/AntContextResources.java
  3. +7
    -15
      proposal/myrmidon/src/java/org/apache/myrmidon/components/embeddor/Embeddor.java
  4. +92
    -91
      proposal/myrmidon/src/java/org/apache/myrmidon/components/embeddor/MyrmidonEmbeddor.java

+ 13
- 13
proposal/myrmidon/src/java/org/apache/ant/Main.java View File

@@ -20,15 +20,14 @@ import java.util.HashMap;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Properties;
import org.apache.myrmidon.launcher.LauncherClassLoader; import org.apache.myrmidon.launcher.LauncherClassLoader;
import org.apache.ant.project.LogTargetToListenerAdapter; import org.apache.ant.project.LogTargetToListenerAdapter;
import org.apache.ant.project.Project; import org.apache.ant.project.Project;
import org.apache.ant.project.ProjectBuilder; import org.apache.ant.project.ProjectBuilder;
import org.apache.ant.project.ProjectEngine; import org.apache.ant.project.ProjectEngine;
import org.apache.ant.project.ProjectListener; import org.apache.ant.project.ProjectListener;
import org.apache.ant.runtime.AntEngine;
import org.apache.ant.runtime.DefaultAntEngine;
import org.apache.myrmidon.components.embeddor.Embeddor;
import org.apache.myrmidon.components.embeddor.MyrmidonEmbeddor;
import org.apache.myrmidon.api.JavaVersion; import org.apache.myrmidon.api.JavaVersion;
import org.apache.myrmidon.api.TaskContext; import org.apache.myrmidon.api.TaskContext;
import org.apache.myrmidon.api.DefaultTaskContext; import org.apache.myrmidon.api.DefaultTaskContext;
@@ -45,6 +44,7 @@ import org.apache.avalon.framework.camelot.CamelotUtil;
import org.apache.avalon.framework.camelot.Deployer; import org.apache.avalon.framework.camelot.Deployer;
import org.apache.avalon.framework.camelot.DeploymentException; import org.apache.avalon.framework.camelot.DeploymentException;
import org.apache.avalon.framework.logger.AbstractLoggable; import org.apache.avalon.framework.logger.AbstractLoggable;
import org.apache.avalon.framework.parameters.Parameters;
import org.apache.log.Hierarchy; import org.apache.log.Hierarchy;
import org.apache.log.Logger; import org.apache.log.Logger;
import org.apache.log.LogTarget; import org.apache.log.LogTarget;
@@ -275,10 +275,10 @@ public class Main
//that was set up by launcher. //that was set up by launcher.
if( null == homeDir ) homeDir = System.getProperty( "ant.home" ); if( null == homeDir ) homeDir = System.getProperty( "ant.home" );


final Properties properties = new Properties();
properties.setProperty( "ant.home", homeDir );
final Parameters parameters = new Parameters();
parameters.setParameter( "ant.home", homeDir );


if( null != taskLibDir ) properties.setProperty( "ant.path.task-lib", taskLibDir );
if( null != taskLibDir ) parameters.setParameter( "ant.path.task-lib", taskLibDir );


m_homeDir = (new File( homeDir )).getAbsoluteFile(); m_homeDir = (new File( homeDir )).getAbsoluteFile();
if( !m_homeDir.isDirectory() ) if( !m_homeDir.isDirectory() )
@@ -309,17 +309,17 @@ public class Main
//getLogger().debug( "Ant Lib Directory: " + m_libDir ); //getLogger().debug( "Ant Lib Directory: " + m_libDir );
//getLogger().debug( "Ant Task Lib Directory: " + m_taskLibDir ); //getLogger().debug( "Ant Task Lib Directory: " + m_taskLibDir );


final AntEngine antEngine = new DefaultAntEngine();
setupLogger( antEngine );
antEngine.setProperties( properties );
antEngine.initialize();
final Embeddor embeddor = new MyrmidonEmbeddor();
setupLogger( embeddor );
embeddor.parameterize( parameters );
embeddor.initialize();


final ProjectBuilder builder = antEngine.getProjectBuilder();
final ProjectBuilder builder = embeddor.getProjectBuilder();


//create the project //create the project
final Project project = builder.build( buildFile ); final Project project = builder.build( buildFile );


final ProjectEngine engine = antEngine.getProjectEngine();
final ProjectEngine engine = embeddor.getProjectEngine();
engine.addProjectListener( listener ); engine.addProjectListener( listener );


BufferedReader reader = null; BufferedReader reader = null;
@@ -352,7 +352,7 @@ public class Main


} }


antEngine.dispose();
embeddor.dispose();
} }


/** /**


+ 0
- 34
proposal/myrmidon/src/java/org/apache/ant/runtime/AntContextResources.java View File

@@ -1,34 +0,0 @@
/*
* Copyright (C) The Apache Software Foundation. All rights reserved.
*
* This software is published under the terms of the Apache Software License
* version 1.1, a copy of which has been included with this distribution in
* the LICENSE file.
*/
package org.apache.ant.runtime;

/**
* Interface that holds constants used to access variables from context.
*
* @author <a href="mailto:donaldp@apache.org">Peter Donald</a>
*/
public interface AntContextResources
{
// the directory of ant
String HOME_DIR = "ant.install.dir";
// the bin directory of ant
String BIN_DIR = "ant.install.bin";

// the lib directory of ant
String LIB_DIR = "ant.install.lib";
// the tasklib directory of ant
String TASKLIB_DIR = "ant.install.task-lib";

// the directory to look for per user ant information
String USER_DIR = "ant.user.dir";
// the directory to look for per project ant information
String PROJECT_DIR = "ant.project.dir";
}

proposal/myrmidon/src/java/org/apache/ant/runtime/AntEngine.java → proposal/myrmidon/src/java/org/apache/myrmidon/components/embeddor/Embeddor.java View File

@@ -5,34 +5,26 @@
* version 1.1, a copy of which has been included with this distribution in * version 1.1, a copy of which has been included with this distribution in
* the LICENSE file. * the LICENSE file.
*/ */
package org.apache.ant.runtime;
package org.apache.myrmidon.components.embeddor;


import java.util.Properties;
import org.apache.ant.project.ProjectBuilder; import org.apache.ant.project.ProjectBuilder;
import org.apache.ant.project.ProjectEngine; import org.apache.ant.project.ProjectEngine;
import org.apache.avalon.framework.activity.Disposable; import org.apache.avalon.framework.activity.Disposable;
import org.apache.avalon.framework.activity.Initializable; import org.apache.avalon.framework.activity.Initializable;
import org.apache.avalon.framework.component.Component; import org.apache.avalon.framework.component.Component;
import org.apache.avalon.framework.parameters.Parameterizable;


/** /**
* Interface to the Ant runtime.
* Interface through which you embed Myrmidon into applications.
* *
* @author <a href="mailto:donaldp@apache.org">Peter Donald</a> * @author <a href="mailto:donaldp@apache.org">Peter Donald</a>
*/ */
public interface AntEngine
extends Component, Initializable, Disposable
public interface Embeddor
extends Component, Parameterizable, Initializable, Disposable
{ {
/**
* Setup basic properties of engine.
* Called before init() and can be used to specify alternate components in system.
*
* @param properties the properties
*/
void setProperties( Properties properties );

/** /**
* Retrieve builder for runtime. * Retrieve builder for runtime.
* Valid after init() call
* Valid after initialize() call
* *
* @return the ProjectBuilder * @return the ProjectBuilder
*/ */
@@ -40,7 +32,7 @@ public interface AntEngine


/** /**
* Retrieve project engine for runtime. * Retrieve project engine for runtime.
* Valid after init() call
* Valid after initialize() call
* *
* @return the ProjectBuilder * @return the ProjectBuilder
*/ */

proposal/myrmidon/src/java/org/apache/ant/runtime/DefaultAntEngine.java → proposal/myrmidon/src/java/org/apache/myrmidon/components/embeddor/MyrmidonEmbeddor.java View File

@@ -5,68 +5,69 @@
* version 1.1, a copy of which has been included with this distribution in * version 1.1, a copy of which has been included with this distribution in
* the LICENSE file. * the LICENSE file.
*/ */
package org.apache.ant.runtime;
package org.apache.myrmidon.components.embeddor;


import java.io.File; import java.io.File;
import java.util.Properties;
import org.apache.ant.AntException; import org.apache.ant.AntException;
import org.apache.myrmidon.components.configurer.Configurer;
import org.apache.ant.convert.engine.ConverterEngine; import org.apache.ant.convert.engine.ConverterEngine;
import org.apache.ant.project.ProjectBuilder; import org.apache.ant.project.ProjectBuilder;
import org.apache.ant.project.ProjectEngine; import org.apache.ant.project.ProjectEngine;
import org.apache.myrmidon.api.JavaVersion;
import org.apache.ant.tasklet.engine.DataTypeEngine; import org.apache.ant.tasklet.engine.DataTypeEngine;
import org.apache.ant.tasklet.engine.TaskletEngine; import org.apache.ant.tasklet.engine.TaskletEngine;
import org.apache.ant.tasklet.engine.TskDeployer; import org.apache.ant.tasklet.engine.TskDeployer;
import org.apache.avalon.framework.logger.AbstractLoggable;
import org.apache.avalon.framework.component.Component;
import org.apache.avalon.framework.component.Composable;
import org.apache.avalon.framework.component.DefaultComponentManager;
import org.apache.avalon.excalibur.io.FileUtil;
import org.apache.avalon.framework.activity.Initializable; import org.apache.avalon.framework.activity.Initializable;
import org.apache.avalon.framework.camelot.CamelotUtil; import org.apache.avalon.framework.camelot.CamelotUtil;
import org.apache.avalon.framework.camelot.DefaultFactory; import org.apache.avalon.framework.camelot.DefaultFactory;
import org.apache.avalon.framework.camelot.Deployer; import org.apache.avalon.framework.camelot.Deployer;
import org.apache.avalon.framework.camelot.Factory; import org.apache.avalon.framework.camelot.Factory;
import org.apache.avalon.excalibur.io.FileUtil;
import org.apache.avalon.framework.component.Component;
import org.apache.avalon.framework.component.Composable;
import org.apache.avalon.framework.component.DefaultComponentManager;
import org.apache.avalon.framework.logger.AbstractLoggable;
import org.apache.avalon.framework.parameters.Parameters;
import org.apache.avalon.framework.parameters.Parameterizable;
import org.apache.myrmidon.api.JavaVersion;
import org.apache.myrmidon.components.configurer.Configurer;


/** /**
* Default implementation of Ant runtime. * Default implementation of Ant runtime.
* *
* @author <a href="mailto:donaldp@apache.org">Peter Donald</a> * @author <a href="mailto:donaldp@apache.org">Peter Donald</a>
*/ */
public class DefaultAntEngine
public class MyrmidonEmbeddor
extends AbstractLoggable extends AbstractLoggable
implements AntEngine, Initializable
implements Embeddor
{ {
protected ConverterEngine m_converterEngine;
protected DataTypeEngine m_dataTypeEngine;
protected TaskletEngine m_taskletEngine;
protected ProjectEngine m_projectEngine;
protected ProjectBuilder m_builder;
protected TskDeployer m_deployer;
protected Configurer m_configurer;
protected Factory m_factory;
protected DefaultComponentManager m_componentManager;
protected Properties m_properties;
protected Properties m_defaults;
protected File m_homeDir;
protected File m_binDir;
protected File m_libDir;
protected File m_taskLibDir;
private ConverterEngine m_converterEngine;
private DataTypeEngine m_dataTypeEngine;
private TaskletEngine m_taskEngine;
private ProjectEngine m_projectEngine;
private ProjectBuilder m_builder;
private TskDeployer m_deployer;
private Configurer m_configurer;
private Factory m_factory;
private DefaultComponentManager m_componentManager;
private Parameters m_parameters;
private Parameters m_defaults;
private File m_homeDir;
private File m_binDir;
private File m_libDir;
private File m_taskLibDir;
/** /**
* Setup basic properties of engine.
* Setup basic properties of engine.
* Called before init() and can be used to specify alternate components in system. * Called before init() and can be used to specify alternate components in system.
* *
* @param properties the properties * @param properties the properties
*/ */
public void setProperties( final Properties properties )
public void parameterize( final Parameters parameters )
{ {
m_properties = properties;
m_parameters = parameters;
} }


/** /**
@@ -100,7 +101,7 @@ public class DefaultAntEngine
throws Exception throws Exception
{ {
//setup default properties //setup default properties
m_defaults = createDefaultProperties();
m_defaults = createDefaultParameters();


//create all the components //create all the components
m_factory = new DefaultFactory(); m_factory = new DefaultFactory();
@@ -126,50 +127,50 @@ public class DefaultAntEngine
{ {
m_converterEngine = null; m_converterEngine = null;
m_dataTypeEngine = null; m_dataTypeEngine = null;
m_taskletEngine = null;
m_taskEngine = null;
m_projectEngine = null; m_projectEngine = null;
m_builder = null; m_builder = null;
m_deployer = null; m_deployer = null;
m_configurer = null; m_configurer = null;
m_factory = null; m_factory = null;
m_componentManager = null; m_componentManager = null;
m_properties = null;
m_parameters = null;
m_defaults = null; m_defaults = null;
m_homeDir = null; m_homeDir = null;
m_binDir = null; m_binDir = null;
m_libDir = null; m_libDir = null;
m_taskLibDir = null; m_taskLibDir = null;
} }
/** /**
* Create default properties which includes default names of all components. * Create default properties which includes default names of all components.
* Overide this in sub-classes to change values. * Overide this in sub-classes to change values.
* *
* @return the Properties
* @return the Parameters
*/ */
protected Properties createDefaultProperties()
private Parameters createDefaultParameters()
{ {
final Properties defaults = new Properties();
final Parameters defaults = new Parameters();


//create all the default properties for files/directories //create all the default properties for files/directories
defaults.setProperty( "ant.path.bin", "bin" );
defaults.setProperty( "ant.path.lib", "lib" );
defaults.setProperty( "ant.path.task-lib", "lib" );
defaults.setParameter( "ant.path.bin", "bin" );
defaults.setParameter( "ant.path.lib", "lib" );
defaults.setParameter( "ant.path.task-lib", "lib" );


//create all the default properties for components //create all the default properties for components
defaults.setProperty( "ant.comp.converter",
defaults.setParameter( "ant.comp.converter",
"org.apache.ant.convert.engine.DefaultConverterEngine" ); "org.apache.ant.convert.engine.DefaultConverterEngine" );
defaults.setProperty( "ant.comp.datatype",
defaults.setParameter( "ant.comp.datatype",
"org.apache.ant.tasklet.engine.DefaultDataTypeEngine" ); "org.apache.ant.tasklet.engine.DefaultDataTypeEngine" );
defaults.setProperty( "ant.comp.tasklet",
defaults.setParameter( "ant.comp.task",
"org.apache.ant.tasklet.engine.DefaultTaskletEngine" ); "org.apache.ant.tasklet.engine.DefaultTaskletEngine" );
defaults.setProperty( "ant.comp.project",
defaults.setParameter( "ant.comp.project",
"org.apache.ant.project.DefaultProjectEngine" ); "org.apache.ant.project.DefaultProjectEngine" );
defaults.setProperty( "ant.comp.builder",
defaults.setParameter( "ant.comp.builder",
"org.apache.ant.project.DefaultProjectBuilder" ); "org.apache.ant.project.DefaultProjectBuilder" );
defaults.setProperty( "ant.comp.deployer",
defaults.setParameter( "ant.comp.deployer",
"org.apache.ant.tasklet.engine.DefaultTskDeployer" ); "org.apache.ant.tasklet.engine.DefaultTskDeployer" );
defaults.setProperty( "ant.comp.configurer",
defaults.setParameter( "ant.comp.configurer",
"org.apache.myrmidon.components.configurer.DefaultConfigurer" ); "org.apache.myrmidon.components.configurer.DefaultConfigurer" );


return defaults; return defaults;
@@ -180,13 +181,13 @@ public class DefaultAntEngine
* *
* @return the ComponentManager * @return the ComponentManager
*/ */
protected DefaultComponentManager createComponentManager()
private DefaultComponentManager createComponentManager()
{ {
final DefaultComponentManager componentManager = new DefaultComponentManager(); final DefaultComponentManager componentManager = new DefaultComponentManager();


componentManager.put( "org.apache.ant.tasklet.engine.TaskletEngine", m_taskletEngine );
componentManager.put( "org.apache.ant.tasklet.engine.TaskletEngine", m_taskEngine );
componentManager.put( "org.apache.ant.project.ProjectEngine", m_projectEngine ); componentManager.put( "org.apache.ant.project.ProjectEngine", m_projectEngine );
componentManager.put( "org.apache.ant.convert.engine.ConverterEngine",
componentManager.put( "org.apache.ant.convert.engine.ConverterEngine",
m_converterEngine ); m_converterEngine );
componentManager.put( "org.apache.ant.convert.Converter", m_converterEngine ); componentManager.put( "org.apache.ant.convert.Converter", m_converterEngine );
componentManager.put( "org.apache.ant.tasklet.engine.DataTypeEngine", m_dataTypeEngine ); componentManager.put( "org.apache.ant.tasklet.engine.DataTypeEngine", m_dataTypeEngine );
@@ -203,30 +204,30 @@ public class DefaultAntEngine
* *
* @exception Exception if an error occurs * @exception Exception if an error occurs
*/ */
protected void createComponents()
private void createComponents()
throws Exception throws Exception
{ {
String component = null; String component = null;


component = getProperty( "ant.comp.converter" );
component = getParameter( "ant.comp.converter" );
m_converterEngine = (ConverterEngine)createComponent( component, ConverterEngine.class ); m_converterEngine = (ConverterEngine)createComponent( component, ConverterEngine.class );


component = getProperty( "ant.comp.datatype" );
component = getParameter( "ant.comp.datatype" );
m_dataTypeEngine = (DataTypeEngine)createComponent( component, DataTypeEngine.class ); m_dataTypeEngine = (DataTypeEngine)createComponent( component, DataTypeEngine.class );
component = getProperty( "ant.comp.tasklet" );
m_taskletEngine = (TaskletEngine)createComponent( component, TaskletEngine.class );
component = getProperty( "ant.comp.project" );
component = getParameter( "ant.comp.task" );
m_taskEngine = (TaskletEngine)createComponent( component, TaskletEngine.class );
component = getParameter( "ant.comp.project" );
m_projectEngine = (ProjectEngine)createComponent( component, ProjectEngine.class ); m_projectEngine = (ProjectEngine)createComponent( component, ProjectEngine.class );


component = getProperty( "ant.comp.builder" );
component = getParameter( "ant.comp.builder" );
m_builder =(ProjectBuilder)createComponent( component, ProjectBuilder.class ); m_builder =(ProjectBuilder)createComponent( component, ProjectBuilder.class );


component = getProperty( "ant.comp.deployer" );
component = getParameter( "ant.comp.deployer" );
m_deployer = (TskDeployer)createComponent( component, TskDeployer.class ); m_deployer = (TskDeployer)createComponent( component, TskDeployer.class );


component = getProperty( "ant.comp.configurer" );
component = getParameter( "ant.comp.configurer" );
m_configurer = (Configurer)createComponent( component, Configurer.class ); m_configurer = (Configurer)createComponent( component, Configurer.class );
} }


@@ -235,13 +236,13 @@ public class DefaultAntEngine
* *
* @exception Exception if an error occurs * @exception Exception if an error occurs
*/ */
protected void setupComponents()
private void setupComponents()
throws Exception throws Exception
{ {
setupComponent( m_factory ); setupComponent( m_factory );
setupComponent( m_converterEngine ); setupComponent( m_converterEngine );
setupComponent( m_dataTypeEngine ); setupComponent( m_dataTypeEngine );
setupComponent( m_taskletEngine );
setupComponent( m_taskEngine );
setupComponent( m_projectEngine ); setupComponent( m_projectEngine );
setupComponent( m_builder ); setupComponent( m_builder );
setupComponent( m_deployer ); setupComponent( m_deployer );
@@ -254,7 +255,7 @@ public class DefaultAntEngine
* @param component the component * @param component the component
* @exception Exception if an error occurs * @exception Exception if an error occurs
*/ */
protected void setupComponent( final Component component )
private void setupComponent( final Component component )
throws Exception throws Exception
{ {
setupLogger( component ); setupLogger( component );
@@ -273,38 +274,38 @@ public class DefaultAntEngine
/** /**
* Setup all the files attributes. * Setup all the files attributes.
*/ */
protected void setupFiles()
private void setupFiles()
{ {
String filepath = null; String filepath = null;


filepath = getProperty( "ant.home" );
filepath = getParameter( "ant.home" );
m_homeDir = (new File( filepath )).getAbsoluteFile(); m_homeDir = (new File( filepath )).getAbsoluteFile();
checkDirectory( m_homeDir, "ant-home" ); checkDirectory( m_homeDir, "ant-home" );


filepath = getProperty( "ant.path.bin" );
filepath = getParameter( "ant.path.bin" );
m_binDir = resolveDirectory( filepath, "bin-dir" ); m_binDir = resolveDirectory( filepath, "bin-dir" );
filepath = getProperty( "ant.path.lib" );
filepath = getParameter( "ant.path.lib" );
m_libDir = resolveDirectory( filepath, "lib-dir" ); m_libDir = resolveDirectory( filepath, "lib-dir" );


filepath = getProperty( "ant.path.task-lib" );
filepath = getParameter( "ant.path.task-lib" );
m_taskLibDir = resolveDirectory( filepath, "task-lib-dir" ); m_taskLibDir = resolveDirectory( filepath, "task-lib-dir" );
} }


/** /**
* Retrieve value of named property.
* Retrieve value of named property.
* First access passed in properties and then the default properties. * First access passed in properties and then the default properties.
* *
* @param name the name of property * @param name the name of property
* @return the value of property or null * @return the value of property or null
*/ */
protected String getProperty( final String name )
private String getParameter( final String name )
{ {
String value = m_properties.getProperty( name );
String value = m_parameters.getParameter( name, null );


if( null == value ) if( null == value )
{ {
value = m_defaults.getProperty( name );
value = m_defaults.getParameter( name, null );
} }


return value; return value;
@@ -318,7 +319,7 @@ public class DefaultAntEngine
* @return the created File * @return the created File
* @exception AntException if an error occurs * @exception AntException if an error occurs
*/ */
protected File resolveDirectory( final String dir, final String name )
private File resolveDirectory( final String dir, final String name )
throws AntException throws AntException
{ {
final File file = FileUtil.resolveFile( m_homeDir, dir ); final File file = FileUtil.resolveFile( m_homeDir, dir );
@@ -332,9 +333,9 @@ public class DefaultAntEngine
* @param file the File * @param file the File
* @param name the name of file type (used in error messages) * @param name the name of file type (used in error messages)
*/ */
protected void checkDirectory( final File file, final String name )
private void checkDirectory( final File file, final String name )
throws AntException throws AntException
{
{
if( !file.exists() ) if( !file.exists() )
{ {
throw new AntException( name + " (" + file + ") does not exist" ); throw new AntException( name + " (" + file + ") does not exist" );
@@ -351,10 +352,10 @@ public class DefaultAntEngine
* *
* @return the current JVM version * @return the current JVM version
*/ */
protected JavaVersion getJavaVersion()
private JavaVersion getJavaVersion()
{ {
JavaVersion version = JavaVersion.JAVA1_0; JavaVersion version = JavaVersion.JAVA1_0;
try try
{ {
Class.forName( "java.lang.Void" ); Class.forName( "java.lang.Void" );
@@ -363,9 +364,9 @@ public class DefaultAntEngine
version = JavaVersion.JAVA1_2; version = JavaVersion.JAVA1_2;
Class.forName( "java.lang.StrictMath" ); Class.forName( "java.lang.StrictMath" );
version = JavaVersion.JAVA1_3; version = JavaVersion.JAVA1_3;
}
}
catch( final ClassNotFoundException cnfe ) {} catch( final ClassNotFoundException cnfe ) {}
return version; return version;
} }


@@ -377,7 +378,7 @@ public class DefaultAntEngine
* @return the created object * @return the created object
* @exception AntException if an error occurs * @exception AntException if an error occurs
*/ */
protected Object createComponent( final String component, final Class clazz )
private Object createComponent( final String component, final Class clazz )
throws AntException throws AntException
{ {
try try
@@ -386,25 +387,25 @@ public class DefaultAntEngine


if( !clazz.isInstance( object ) ) if( !clazz.isInstance( object ) )
{ {
throw new AntException( "Object " + component + " is not an instance of " +
throw new AntException( "Object " + component + " is not an instance of " +
clazz ); clazz );
} }


return object; return object;
} }
catch( final IllegalAccessException iae ) catch( final IllegalAccessException iae )
{
throw new AntException( "Non-public constructor for " + clazz + " " + component,
{
throw new AntException( "Non-public constructor for " + clazz + " " + component,
iae ); iae );
} }
catch( final InstantiationException ie ) catch( final InstantiationException ie )
{ {
throw new AntException( "Error instantiating class for " + clazz + " " + component,
throw new AntException( "Error instantiating class for " + clazz + " " + component,
ie ); ie );
} }
catch( final ClassNotFoundException cnfe ) catch( final ClassNotFoundException cnfe )
{ {
throw new AntException( "Could not find the class for " + clazz +
throw new AntException( "Could not find the class for " + clazz +
" (" + component + ")", cnfe ); " (" + component + ")", cnfe );
} }
} }

Loading…
Cancel
Save