Re: cache synchronization

From: Andrus Adamchik (andru..bjectstyle.org)
Date: Sat Dec 17 2005 - 16:52:06 EST

  • Next message: Todd O'Bryan: "Looks and Feels?"

    I think you have more than one DataContext in the app? If so the
    delegate method will be tripped by an update in a peer DataContext in
    the SAME VM.

    If this is the case you may replace a delegate with a
    SnapshotEventListener (so you'd know whether the event was local or
    remote by looking at the event object "source" and "postedBy"
    properties).

    In 1.1 you'd do something like this:

    class MyListener implements SnapshotEventListener {
    ...
    }

    DataDomain domain = ...
    EventManager.getDefaultManager().addNonBlockingListener(
                         new MyListener(),
                         "snapshotsChanged",
                         SnapshotEvent.class,
                         domain.getSharedSnapshotCache
    ().getSnapshotEventSubject(),
                         domain.getSharedSnapshotCache());

    BTW, debugging this issue helped me to identify and fix an evil event
    loop in 1.2 (it is not present in 1.1.3) - http://objectstyle.org/
    jira/secure/ViewIssue.jspa?key=CAY-410

    Andrus

    On Dec 15, 2005, at 4:58 PM, Claudio Rosati wrote:

    > Hi Andrus.
    >
    > Here what you asked (I've just made a remote modification first,
    > followed by
    > a local one. Each modification called 5 times the shouldMergeChanges
    > method.):



    This archive was generated by hypermail 2.0.0 : Sat Dec 17 2005 - 16:52:08 EST