KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > javax > persistence > Enumerated


1 /*
2  * The contents of this file are subject to the terms
3  * of the Common Development and Distribution License
4  * (the "License"). You may not use this file except
5  * in compliance with the License.
6  *
7  * You can obtain a copy of the license at
8  * glassfish/bootstrap/legal/CDDLv1.0.txt or
9  * https://glassfish.dev.java.net/public/CDDLv1.0.html.
10  * See the License for the specific language governing
11  * permissions and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL
14  * HEADER in each file and include the License file at
15  * glassfish/bootstrap/legal/CDDLv1.0.txt. If applicable,
16  * add the following below this CDDL HEADER, with the
17  * fields enclosed by brackets "[]" replaced with your
18  * own identifying information: Portions Copyright [yyyy]
19  * [name of copyright owner]
20  */

21 package javax.persistence;
22
23 import java.lang.annotation.Target JavaDoc;
24 import java.lang.annotation.Retention JavaDoc;
25 import static java.lang.annotation.ElementType.FIELD JavaDoc;
26 import static java.lang.annotation.ElementType.METHOD JavaDoc;
27 import static java.lang.annotation.RetentionPolicy.RUNTIME JavaDoc;
28 import static javax.persistence.EnumType.ORDINAL;
29
30 /**
31  * Specifies that a persistent property or field should be
32  * persisted as a enumerated type. It may be used in conjunction
33  * with the {@link Basic} annotation.
34  *
35  * <pre>
36  * Example:
37  *
38  * public enum EmployeeStatus {FULL_TIME, PART_TIME, CONTRACT}
39  *
40  * public enum SalaryRate {JUNIOR, SENIOR, MANAGER, EXECUTIVE}
41  *
42  * &#064;Entity public class Employee {
43  * public EmployeeStatus getStatus() {...}
44  * &#064;Enumerated(STRING)
45  * public SalaryRate getPayScale() {...}
46  * ...
47  * }
48  * </pre>
49  *
50  * @since Java Persistence 1.0
51  */

52 @Target JavaDoc({METHOD, FIELD})
53 @Retention JavaDoc(RUNTIME)
54 public @interface Enumerated {
55
56     /** (Optional) The type used in mapping an enum type. */
57     EnumType value() default ORDINAL;
58 }
59
Popular Tags