Browse Source

Starting to define/test aspect interface.

git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269093 13f79535-47bb-0310-9956-ffa450edef68
master
Peter Donald 24 years ago
parent
commit
29ee64b271
2 changed files with 103 additions and 0 deletions
  1. +60
    -0
      proposal/myrmidon/src/java/org/apache/myrmidon/aspects/AbstractAspectHandler.java
  2. +43
    -0
      proposal/myrmidon/src/java/org/apache/myrmidon/aspects/AspectHandler.java

+ 60
- 0
proposal/myrmidon/src/java/org/apache/myrmidon/aspects/AbstractAspectHandler.java View File

@@ -0,0 +1,60 @@
/*
* 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.myrmidon.aspects;

import org.apache.avalon.framework.configuration.Configuration;
import org.apache.log.Logger;
import org.apache.myrmidon.api.Task;
import org.apache.myrmidon.api.TaskException;

/**
* AspectHandler is the interface through which aspects are handled.
*
* @author <a href="mailto:conor@apache.org">Conor MacNeill</a>
* @author <a href="mailto:donaldp@apache.org">Peter Donald</a>
*/
public abstract class AbstractAspectHandler
implements AspectHandler
{
public Configuration preCreate( final Configuration configuration )
throws TaskException
{
return configuration;
}

public void postCreate( final Task task )
throws TaskException
{
}

public void preLoggable( final Logger logger )
throws TaskException
{
}

public void preConfigure()
throws TaskException
{
}

public void preExecute()
throws TaskException
{
}

public void preDestroy()
throws TaskException
{
}

public boolean error( final TaskException te )
throws TaskException
{
return false;
}
}

+ 43
- 0
proposal/myrmidon/src/java/org/apache/myrmidon/aspects/AspectHandler.java View File

@@ -0,0 +1,43 @@
/*
* 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.myrmidon.aspects;

import org.apache.avalon.framework.configuration.Configuration;
import org.apache.log.Logger;
import org.apache.myrmidon.api.Task;
import org.apache.myrmidon.api.TaskException;

/**
* AspectHandler is the interface through which aspects are handled.
*
* @author <a href="mailto:conor@apache.org">Conor MacNeill</a>
* @author <a href="mailto:donaldp@apache.org">Peter Donald</a>
*/
public interface AspectHandler
{
Configuration preCreate( Configuration configuration )
throws TaskException;

void postCreate( Task task )
throws TaskException;

void preLoggable( Logger logger )
throws TaskException;

void preConfigure()
throws TaskException;

void preExecute()
throws TaskException;

void preDestroy()
throws TaskException;

boolean error( TaskException te )
throws TaskException;
}

Loading…
Cancel
Save