01: /*
02: * Copyright 2001-2007 Geert Bevin <gbevin[remove] at uwyn dot com>
03: * Distributed under the terms of either:
04: * - the common development and distribution license (CDDL), v1.0; or
05: * - the GNU Lesser General Public License, v2.1 or later
06: * $Id: Pathinfo.java 3634 2007-01-08 21:42:24Z gbevin $
07: */
08: package com.uwyn.rife.engine.annotations;
09:
10: import java.lang.annotation.Documented;
11: import java.lang.annotation.Retention;
12: import java.lang.annotation.RetentionPolicy;
13: import java.lang.annotation.Target;
14:
15: /**
16: * Declares the URL pathinfo for an element.
17: *
18: * @author Geert Bevin (gbevin[remove] at uwyn dot com)
19: * @version $Revision: 3634 $
20: * @since 1.5
21: */
22: @Retention(RetentionPolicy.RUNTIME)
23: @Target({})
24: @Documented
25: public @interface Pathinfo {
26: /**
27: * The possible pathinfo mapping policies. A <code>LOOSE</code> policy
28: * executes the element even if none of the mappings match. A
29: * <code>STRICT</code> policy only executes the element if at least one
30: * mapping matches.
31: * @since 1.5
32: */
33: public enum MappingPolicy {
34: LOOSE, STRICT
35: }
36:
37: /**
38: * The collection of pathinfo mappings for this pathinfo.
39: * @since 1.5
40: */
41: Mapping[] mappings();
42:
43: /**
44: * Indicates the pathinfo mapping policy.
45: * @since 1.5
46: */
47: MappingPolicy policy() default MappingPolicy.LOOSE;
48: }
|