1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.caleigo.core;
20
21
22 /*** IEntityAction objects are used to perform or trigger some kind of work
23 * or data calculation. It is the preffered way in the celgen application
24 * framework to encapsulate and handle business logic. <p>
25 *
26 * Using IEntityAction it is possible to make business-logic transperent for
27 * multiple types view solutions in the frameworks MVC design. The IEntityAction
28 * objects can be connected to the entity descriptor model making it pssible
29 * to integrate the business logic in the dynamic view structure in the swing
30 * based view implementation.
31 *
32 * @author Dennis Zikovic
33 * @version 1.00
34 *
35 *//*
36 *
37 * WHEN WHO WHY & WHAT
38 * ------------------------------------------------------------------------------
39 * 2002-09-09 Dennis Zikovic Creation
40 */
41 public interface IEntityAction
42 {
43
44 public static final int ENTITY = 0x0001;
45 public static final int SELECTION = 0x0002;
46 public static final int QUALIFIER = 0x0004;
47
48 public static final int READ_ONLY = 0x0010;
49 public static final int SYSTEM = 0x0020;
50
51 public static final int NEVER_EXPORT = 0x0100;
52 public static final int IDENTITY_EXPORT = 0x0200;
53 public static final int ASSOCIATION_EXPORT = 0x0400;
54
55 public static final int PRIMARY = 0x1000;
56 public static final int SECONDARY = 0x2000;
57 public static final int MISCELLANEOUS = 0x4000;
58 public static final int DRAG = 0x8000;
59
60
61
62 /*** Performs the actions logic using the provided IActionData object.
63 */
64 public void perform(IDataBundle data);
65
66 /*** Access method that returns the IActionDataDescriptor for the IActionData
67 * theat the called action needs to perform its logic payload.
68 */
69 public IDataBundleDescriptor getDataBundleDescriptor();
70
71 /*** Access method that returns the IEntityDescriptor object that the
72 * called action object is a part of.
73 */
74 public IEntityDescriptor getEntityDescriptor();
75
76 /*** Access method that returns the code name that can be used to identify
77 * the called IAction object.
78 */
79 public String getCodeName();
80
81 /*** Access method that returns a end-user presentable name that can be used
82 * as button and meny labels.
83 */
84 public String getDisplayName();
85
86 /*** Access method that returns a end-user presentable hint text that can be
87 * used as a help text or fly-by hint.
88 */
89 public String getDisplayHint();
90
91 /*** Access method that return true if the called action object has
92 * of the provided category flag set to true.
93 */
94 public boolean isInCategory(int category);
95
96
97 }