net.sourceforge.stripes.action
Annotation Type After


@Retention(value=RUNTIME)
@Target(value=METHOD)
@Inherited
@Documented
public @interface After

Specifies that the annotated method should be run after the specified LifecycleStage(s). More than one LifecycleStage can be specified, in which case the method will be run after each stage completes. If no LifecycleStage is specified then the default is to execute the method after LifecycleStage.EventHandling. LifecycleStage.RequestInit cannot be specified because there is no ActionBean to run a method on before the ActionBean has been resolved!

The method may have any name, any access specifier (public, private etc.) and must take no arguments. Methods may return values; if the value is a Resolution it will be used immediately to terminate the request. Any other values returned will be ignored.

Examples:

 // Runs only after the event handling method has been run
 @After
 public void doStuff() {
    ...
 }

 // Runs after binding and validation have completed
 @After(stages = LifecycleStage.BindingAndValidation)
 public void doPostValidationStuff() {
    ...
 }

 // Runs twice, once after each validation-related stage
 @After(stages = {LifecycleStage.BindingAndValidation, LifecycleStage.CustomValidation})
 public void doMorePostValidationStuff() {
    ...
 }
 

Since:
Stripes 1.3
Author:
Jeppe Cramon
See Also:
Before, BeforeAfterMethodInterceptor

Optional Element Summary
 String[] on
          Allows the method to be restricted to one or more events.
 LifecycleStage[] stages
          One or more lifecycle stages after which the method should be called.
 

stages

public abstract LifecycleStage[] stages
One or more lifecycle stages after which the method should be called.

Default:
net.sourceforge.stripes.controller.LifecycleStage.EventHandling

on

public abstract String[] on
Allows the method to be restricted to one or more events. By default the method will be executed on all events. Can be used to specify one or more events to apply the method to (e.g. on={"save", "update"}), or to specify one or more events not to apply the method to (e.g. on="!delete").

Default:
{}


? Copyright 2005-2006, Stripes Development Team.