package eis.eis2java.annotation; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; import eis.eis2java.translation.Java2Parameter; import eis.eis2java.translation.Parameter2Java; import eis.iilang.Action; /** * Annotation for methods that perform an action. The method must be public and * is allowed to take any arguments for which a {@link Parameter2Java} * translator has been registered. The method may also return a value of any * type for which a {@link Java2Parameter} translator has been registered. * * @author Lennard de Rijk */ @Retention(RetentionPolicy.RUNTIME) @Target(ElementType.METHOD) public @interface AsAction { /** The name of the action when specified as an {@link Action}. */ String name(); }