01: /*-
02: * See the file LICENSE for redistribution information.
03: *
04: * Copyright (c) 2002,2008 Oracle. All rights reserved.
05: *
06: * $Id: Persistent.java,v 1.6.2.2 2008/01/07 15:14:20 cwl Exp $
07: */
08:
09: package com.sleepycat.persist.model;
10:
11: import static java.lang.annotation.ElementType.TYPE;
12: import static java.lang.annotation.RetentionPolicy.RUNTIME;
13:
14: import java.lang.annotation.Documented;
15: import java.lang.annotation.Retention;
16: import java.lang.annotation.Target;
17:
18: /**
19: * Identifies a persistent class that is not an {@link Entity} class or a
20: * {@link <a href="Entity.html#simpleTypes">simple type</a>}.
21: *
22: * @author Mark Hayes
23: */
24: @Documented
25: @Retention(RUNTIME)
26: @Target(TYPE)
27: public @interface Persistent {
28:
29: /**
30: * Identifies a new version of a class when an incompatible class change
31: * has been made.
32: *
33: * @see Entity#version
34: */
35: int version() default 0;
36:
37: /**
38: * Specifies the class that is proxied by this {@link PersistentProxy}
39: * instance.
40: *
41: * @see PersistentProxy
42: */
43: Class proxyFor() default void.class;
44: }
|