1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 package javax.jdo.listener;
24
25 /**
26 * This interface is implemented by listeners to be notified of
27 * clear events.
28 * @version 2.0
29 * @since 2.0
30 */
31 public interface ClearLifecycleListener
32 extends InstanceLifecycleListener {
33
34 /**
35 * This method is called before the implementation calls the instance
36 * method {@link ClearCallback#jdoPreClear} and before it clears the values
37 * in the instance to their Java default values. This happens during
38 * an application call to evict, and in afterCompletion for commit
39 * with RetainValues false and rollback with RestoreValues false.
40 * <P>The method is called during any state transition to hollow.
41 * Non-persistent, non-transactional fields should be cleared
42 * in this method. Associations between this instance and others
43 * in the runtime environment should be cleared.
44 * <P>This method is not modified by the enhancer, so access to fields
45 * is not mediated.
46 * @param event the clear event.
47 * @since 2.0
48 */
49 void preClear (InstanceLifecycleEvent event);
50
51 /**
52 * This method is called after the {@link ClearCallback#jdoPreClear}
53 * method is invoked on the instance and the fields have been cleared
54 * by the JDO implementation.
55 * @param event the clear event.
56 * @since 2.0
57 */
58 void postClear (InstanceLifecycleEvent event);
59 }