package org.distributeme.annotation; import org.distributeme.core.routing.Router; import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** * <p>Route class.</p> * * @author another * @version $Id: $Id */ @Retention (RetentionPolicy.SOURCE) @Target({ElementType.TYPE,ElementType.METHOD}) @Documented public @interface Route { /** * Class implementing the router interface. * @return */ Class<? extends Router> routerClass(); /** * Custom parameter which is used for proper router initialization/customization. Default value is empty string. * @return */ String routerParameter() default ""; /** * Alternative to router parameter a configuration name can be provided. The configuration should be router specific. * If both, configurationName and routerParameter are provided, configurationName overrides. * @return */ String configurationName() default ""; }