ulrich
2014-11-11 c387eb785bb4ee1f715ea7921e3b0fc4c193aee2
commit | author | age
c387eb 1 /*
U 2  *  BaseLink - Generic object relational mapping
3  *  Copyright (C) 2011  Ulrich Hilger, http://uhilger.de
4  *
5  *  This program is free software: you can redistribute it and/or modify
6  *  it under the terms of the GNU General Public License as published by
7  *  the Free Software Foundation, either version 3 of the License, or
8  *  (at your option) any later version.
9  *
10  *  This program is distributed in the hope that it will be useful,
11  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  *  GNU General Public License for more details.
14  *
15  *  You should have received a copy of the GNU General Public License
16  *  along with this program.  If not, see http://www.gnu.org/licenses/
17  */
18
19 package de.uhilger.baselink;
20
21 import static java.lang.annotation.ElementType.METHOD;
22
23 import java.lang.annotation.Retention;
24 import java.lang.annotation.RetentionPolicy;
25 import java.lang.annotation.Target;
26
27 /**
28  * Annotation to denote a database column. 
29  * This annotation is meant to be used with the getter method.
30  * 
31  * @author Copyright (c) Ulrich Hilger, http://uhilger.de
32  * @author Published under the terms and conditions of
33  * the <a href="http://www.gnu.org/licenses/" target="_blank">GNU General Public License</a>
34  */
35 @Target( { METHOD } ) 
36 @Retention( RetentionPolicy.RUNTIME ) 
37 public @interface DBColumn {
38   /** column types as distinguished by this interface */
39     enum Type{STANDARD, BLOB}
40     /** name of database column */
41     String name();
42     /** type of database column */
43     Type type() default Type.STANDARD;
44 }