01: /*******************************************************************************
02: * Portions created by Sebastian Thomschke are copyright (c) 2005-2007 Sebastian
03: * Thomschke.
04: *
05: * All Rights Reserved. This program and the accompanying materials
06: * are made available under the terms of the Eclipse Public License v1.0
07: * which accompanies this distribution, and is available at
08: * http://www.eclipse.org/legal/epl-v10.html
09: *
10: * Contributors:
11: * Sebastian Thomschke - initial implementation.
12: *******************************************************************************/package net.sf.oval.configuration.annotation;
13:
14: import java.lang.annotation.Documented;
15: import java.lang.annotation.ElementType;
16: import java.lang.annotation.Retention;
17: import java.lang.annotation.RetentionPolicy;
18: import java.lang.annotation.Target;
19:
20: /**
21: * Specifies that the return value of the given method (usually
22: * a getter method) should be checked whenever the object
23: * is validated.<br>
24: * <b>Important 1:</b> This is only supported for non-void, non-parameterized methods.<br>
25: * <b>Important 2:</b> To retrieve the return value of the method OVal has to invoke
26: * the method during validation. Therefore you need to ensure that calling the method
27: * does not change the object state.<br>
28: *
29: * @author Sebastian Thomschke
30: */
31: @Documented
32: @Retention(RetentionPolicy.RUNTIME)
33: @Target({ElementType.METHOD})
34: public @interface IsInvariant {
35: //
36: }
|