package de.uhilger.transit; import static java.lang.annotation.ElementType.METHOD; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; /** * Annotation to denote access for a method. * * Transit will allow access for methods with Access.Type.ALLOW and * for methods without an Access annotation * * Methods with an Access.Type.RESTRICT annotation are not accessible * via Transit * * @author Copyright (c) Ulrich Hilger, http://uhilger.de * @author Published under the terms and conditions of * the GNU General Public License */ @Target( { METHOD } ) @Retention( RetentionPolicy.RUNTIME ) public @interface Access { /** API method access types as distinguished by this interface */ enum Type{ALLOW, RESTRICT} /** type of database column */ Type type() default Type.ALLOW; }