|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Interface of an Data-Bean, normaly use SkidBean
where all nessacary
methods are implemented. This interface is a workaround if polymorpy is nessecary and to
implement the Remote-Interface automatically. Therefor all Beans are accessible via RMI.
Important: Key values which are accessible via the BeanBroker
have to be defined following the Java-Beans-Convention using the getXXXX
methods for key-generation.
Remark: All attribues used by the Object which
are not intended to be persitent have to be declared transient
and restored
by default or the parameterless constructor.
Remark: A System-Object cannot be modified and carries the created-Timestamp 0
SkidBean
,
BeanBroker
Method Summary | |
void |
addEvent(SkidBeanInterface event)
Adding an Event and replicating it to all suscribed Objects. |
java.lang.Object |
clone()
Clones the Object and does all the settings neccesary to be assigned as a new SkidBean. |
void |
flush()
Save all modifications (if any) and checks if the update is possible (timestamp of the BeanBroker). |
long |
getAge()
Timestamp "Age" of the Bean (= current version by the Modified-Timestamp). |
BeanBroker |
getBroker()
Get Link to the BeanBroker (one per VM). |
java.lang.String[] |
getChangeHistory()
Produces a discription of the last changes which can be undone. |
long |
getCreated()
Timestamp "Created" of the Bean. |
SkidEvent[] |
getEvent(long newer)
Returns the Events for this bean which are newer than the given time |
SkidBeanFilter |
getFilter()
Returns a Filter for this (and all parent) class. |
java.lang.String |
getIdentifier()
Get the Identifier of the Bean which shall be unique worldwide for different Objects (like different Plans with luckily the same Name) and common for identical Objects (like a Person reentered), do not use manually. |
int |
getKey()
(Unique) Primary Key of the Bean. |
BeanLink[] |
getLink(BeanLinkFilter filter)
Returns a set of Links defined by an filterobject. |
java.lang.reflect.Method[] |
getMethods()
Returns an array containing Method objects reflecting all the public member methods of the class or interface represented by this Class object, including those declared by the class or interface and and those inherited from superclasses and superinterfaces. |
long |
getModified()
Timestamp "Modified" of the Bean. |
java.lang.String |
getName()
Returns the name of the Bean which shold be human readable and may be unique in some cases, but this is not strictly required. |
java.lang.Object |
getObject()
Returns the wrapped Object (if wrapped by a container) or the Bean (if it's no wrapper) |
byte |
getUpdatePolicy()
Get's the update policy defined by the UPDATE_* constants. |
boolean |
init(int pKey,
BeanBroker broker)
All Keys of the Bean which are established at the first insert to the BeanBroker, do not use manually. |
java.lang.Object |
invoke(java.lang.String name,
java.lang.Object[] args,
boolean modify)
Invokes the underlying method represented by this Method object, on the specified object with the specified parameters. |
boolean |
isChanged()
Has the Bean been changed? |
boolean |
isNew()
Ist das Bean neu? |
boolean |
isReadOnly()
Ist the Bean read only? |
boolean |
putLink(BeanLink link)
Adds a Relaition between Beans |
void |
setAge()
Sets the Age to the Modified timestamp, therefor IsChanged = false, do not use manually! |
void |
suscribeEvent(SkidBeanInterface producer,
SkidBeanInterface event)
Adding an Event-Pattern and suscribing this type of event. |
boolean |
undo(int steps)
Undo the last steps changes (0 = all,
-1 no undo but ask if any undos possible). |
Method Detail |
public BeanBroker getBroker()
public byte getUpdatePolicy()
UPDATE_*
constants.asgaard.skid.SkidBeanInterface.UPDATE_ALL
,
asgaard.skid.SkidBeanInterface.UPDATE_WEAK
,
asgaard.skid.SkidBeanInterface.UPDATE_STRONG
public java.lang.String getIdentifier()
public java.lang.String getName()
public int getKey() throws SkidException
public long getCreated() throws SkidException
System#currentTimeMillis
public long getModified() throws SkidException
System#currentTimeMillis
public long getAge() throws SkidException
System#currentTimeMillis
public void setAge()
asgaard.skid.BeanBroker#put
public BeanLink[] getLink(BeanLinkFilter filter) throws java.lang.Exception
null
) all Links of this Bean are searched.filter
- the filterobjectBeanLinkFilter
public boolean putLink(BeanLink link) throws java.lang.Exception
link
- one relationpublic void addEvent(SkidBeanInterface event)
event
- the kond of the event (not null
)public void suscribeEvent(SkidBeanInterface producer, SkidBeanInterface event)
producer
- of the event (not null
)event
- the kond of the event (not null
)public SkidEvent[] getEvent(long newer)
newer
- than the given timepublic boolean init(int pKey, BeanBroker broker)
insertBean
.pKey
- the generated unique primary keybroker
- defines the owning brokerasgaard.skid.BeanBroker.insertBean
public boolean isChanged()
public boolean isNew()
public boolean isReadOnly()
public java.lang.Object getObject()
public SkidBeanFilter getFilter()
public java.lang.reflect.Method[] getMethods() throws java.lang.SecurityException
java.lang.reflect.Method#getMethods
public java.lang.Object invoke(java.lang.String name, java.lang.Object[] args, boolean modify) throws java.lang.IllegalAccessException, java.lang.IllegalArgumentException, java.lang.reflect.InvocationTargetException, java.lang.NullPointerException, java.lang.NoSuchMethodException
name
- the name of the Methodargs
- the Argumentsmodify
- call the modify-method too? (not including undo)Method.invoke(java.lang.Object, java.lang.Object[])
public void flush() throws java.lang.Exception
public java.lang.String[] getChangeHistory()
public boolean undo(int steps)
steps
changes (0
= all,
-1
no undo but ask if any undos possible). The call of the
flush()
methods resets the UNDO-mechanism and clear all relied information.steps
- cont of changes to undopublic java.lang.Object clone() throws java.lang.CloneNotSupportedException
flush()
,
asgaard.skid.BeanBroker#put
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |