1 package com.loribel.commons.business.abstraction;
2
3 import com.loribel.commons.abstraction.*;
4
5 /***
6 * Abstraction of a BusinessObject.
7 *
8 * @author Grégory Borelli
9 */
10 public interface GB_BusinessObject
11 extends
12 GB_SimpleBusinessObjectSet,
13 GB_BOValueOwner,
14 GB_MementoCompliant,
15 GB_MyPropertyOwner
16 {
17 public abstract static class MY_PROPERTY
18 {
19 public static String APPLY = "APPLY";
20 public static String UPDATE = "UPDATE";
21 public static String MODIFY = "MODIFY";
22 }
23
24 /***
25 * Fire a MyPropertyEvent for Apply property.
26 */
27 void doApply();
28
29 /***
30 * Fire a MyPropertyEvent for Update property.
31 */
32 void doUpdate();
33
34 }