You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ant.apache.org by do...@apache.org on 2001/06/12 15:39:00 UTC
cvs commit: jakarta-ant/proposal/myrmidon/src/java/org/apache/myrmidon/components/executor DefaultExecutor.java AspectAwareExecutor.java
donaldp 01/06/12 06:38:59
Modified: proposal/myrmidon/src/java/org/apache/myrmidon/components/executor
DefaultExecutor.java AspectAwareExecutor.java
Log:
Update to use new ExecutionFrame construct.
Revision Changes Path
1.10 +33 -26 jakarta-ant/proposal/myrmidon/src/java/org/apache/myrmidon/components/executor/DefaultExecutor.java
Index: DefaultExecutor.java
===================================================================
RCS file: /home/cvs/jakarta-ant/proposal/myrmidon/src/java/org/apache/myrmidon/components/executor/DefaultExecutor.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- DefaultExecutor.java 2001/06/05 07:54:33 1.9
+++ DefaultExecutor.java 2001/06/12 13:38:58 1.10
@@ -35,10 +35,7 @@
implements Executor, Composable
{
private Configurer m_configurer;
- private TypeFactory m_factory;
- private ComponentManager m_componentManager;
-
/**
* Retrieve relevent services needed to deploy.
*
@@ -48,34 +45,24 @@
public void compose( final ComponentManager componentManager )
throws ComponentException
{
- //cache CM so it can be used while executing tasks
- m_componentManager = componentManager;
-
m_configurer = (Configurer)componentManager.lookup( Configurer.ROLE );
-
- final TypeManager typeManager = (TypeManager)componentManager.lookup( TypeManager.ROLE );
- try { m_factory = typeManager.getFactory( Task.ROLE ); }
- catch( final TypeException te )
- {
- throw new ComponentException( "Unable to retrieve factory from TypeManager", te );
- }
}
- public void execute( final Configuration taskModel, final TaskContext context )
+ public void execute( final Configuration taskModel, final ExecutionFrame frame )
throws TaskException
{
getLogger().debug( "Creating" );
- final Task task = createTask( taskModel.getName() );
- setupLogger( task );
+ final Task task = createTask( taskModel.getName(), frame );
+ doLoggable( task, taskModel, frame.getLogger() );
getLogger().debug( "Contextualizing" );
- doContextualize( task, taskModel, context );
+ doContextualize( task, taskModel, frame.getContext() );
getLogger().debug( "Composing" );
- doCompose( task, taskModel );
+ doCompose( task, taskModel, frame.getComponentManager() );
getLogger().debug( "Configuring" );
- doConfigure( task, taskModel, context );
+ doConfigure( task, taskModel, frame.getContext() );
getLogger().debug( "Initializing" );
doInitialize( task, taskModel );
@@ -88,12 +75,13 @@
doDispose( task, taskModel );
}
- protected final Task createTask( final String name )
+ protected final Task createTask( final String name, final ExecutionFrame frame )
throws TaskException
{
try
{
- return (Task)m_factory.create( name );
+ final TypeFactory factory = frame.getTypeManager().getFactory( Task.ROLE );
+ return (Task)factory.create( name );
}
catch( final TypeException te )
{
@@ -111,16 +99,18 @@
{
throw new TaskException( "Error configuring task " + taskModel.getName() + " at " +
taskModel.getLocation() + "(Reason: " +
- throwable.getMessage() + ")" );
+ throwable.getMessage() + ")", throwable );
}
}
- protected final void doCompose( final Task task, final Configuration taskModel )
+ protected final void doCompose( final Task task,
+ final Configuration taskModel,
+ final ComponentManager componentManager )
throws TaskException
{
if( task instanceof Composable )
{
- try { ((Composable)task).compose( m_componentManager ); }
+ try { ((Composable)task).compose( componentManager ); }
catch( final Throwable throwable )
{
throw new TaskException( "Error composing task " + taskModel.getName() + " at " +
@@ -131,8 +121,8 @@
}
protected final void doContextualize( final Task task,
- final Configuration taskModel,
- final TaskContext context )
+ final Configuration taskModel,
+ final TaskContext context )
throws TaskException
{
try
@@ -160,6 +150,23 @@
{
throw new TaskException( "Error disposing task " + taskModel.getName() + " at " +
taskModel.getLocation() + "(Reason: " +
+ throwable.getMessage() + ")", throwable );
+ }
+ }
+ }
+
+ protected final void doLoggable( final Task task,
+ final Configuration taskModel,
+ final Logger logger )
+ throws TaskException
+ {
+ if( task instanceof Loggable )
+ {
+ try { ((Loggable)task).setLogger( logger ); }
+ catch( final Throwable throwable )
+ {
+ throw new TaskException( "Error setting logger for task " + taskModel.getName() +
+ " at " + taskModel.getLocation() + "(Reason: " +
throwable.getMessage() + ")", throwable );
}
}
1.4 +11 -9 jakarta-ant/proposal/myrmidon/src/java/org/apache/myrmidon/components/executor/AspectAwareExecutor.java
Index: AspectAwareExecutor.java
===================================================================
RCS file: /home/cvs/jakarta-ant/proposal/myrmidon/src/java/org/apache/myrmidon/components/executor/AspectAwareExecutor.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- AspectAwareExecutor.java 2001/06/08 09:10:45 1.3
+++ AspectAwareExecutor.java 2001/06/12 13:38:58 1.4
@@ -14,6 +14,7 @@
import org.apache.avalon.framework.configuration.Configuration;
import org.apache.avalon.framework.parameters.Parameters;
import org.apache.avalon.framework.configuration.DefaultConfiguration;
+import org.apache.log.Logger;
import org.apache.myrmidon.api.Task;
import org.apache.myrmidon.api.TaskContext;
import org.apache.myrmidon.api.TaskException;
@@ -48,12 +49,12 @@
m_aspectManager = (AspectManager)componentManager.lookup( AspectManager.ROLE );
}
- public void execute( final Configuration taskModel, final TaskContext context )
+ public void execute( final Configuration taskModel, final ExecutionFrame frame )
throws TaskException
{
try
{
- executeTask( taskModel, context );
+ executeTask( taskModel, frame );
}
catch( final TaskException te )
{
@@ -64,29 +65,30 @@
}
}
- private void executeTask( Configuration taskModel, final TaskContext context )
+ private void executeTask( Configuration taskModel, final ExecutionFrame frame )
throws TaskException
{
taskModel = getAspectManager().preCreate( taskModel );
taskModel = prepareAspects( taskModel );
getLogger().debug( "Pre-Create" );
- final Task task = createTask( taskModel.getName() );
+ final Task task = createTask( taskModel.getName(), frame );
getAspectManager().postCreate( task );
getLogger().debug( "Pre-Loggable" );
- getAspectManager().preLoggable( getLogger() );
- setupLogger( task );
+ final Logger logger = frame.getLogger();
+ getAspectManager().preLoggable( logger );
+ doLoggable( task, taskModel, logger );
getLogger().debug( "Contextualizing" );
- doContextualize( task, taskModel, context );
+ doContextualize( task, taskModel, frame.getContext() );
getLogger().debug( "Composing" );
- doCompose( task, taskModel );
+ doCompose( task, taskModel, frame.getComponentManager() );
getLogger().debug( "Configuring" );
getAspectManager().preConfigure( taskModel );
- doConfigure( task, taskModel, context );
+ doConfigure( task, taskModel, frame.getContext() );
getLogger().debug( "Initializing" );
doInitialize( task, taskModel );