Re: Cayenne Data Views Sandboxed

From: Andriy Shapochka (ashapochk..otmail.com)
Date: Fri Oct 17 2003 - 06:59:52 EDT

  • Next message: Andriy Shapochka: "Cayenne Data View Modeler sandboxed"

    > 1. EventDispatcher. Any reason why you are not using EventManager from
    > cayenne.event package? I can name a few myself :-), but we are (will
    > be) working on fixing those. Don't know if you remember this recent
    > discussion:
    >
    > http://objectstyle.org/cayenne/lists/cayenne-devel/2003/10/0009.html

    Well, I just went for the time-proven and lightweight approach.
    In rich clients everybody is firing all sorts of events all the time.
    So much the better for faster and simpler designs. I should
    think over using cayenne.event.EventManager now, when I have had a
    closer look into it. The one serious drawback of cayenne EventManager
    is its postEvent(...) was declared synchronized, though. Any time-consuming
    listener threatens to paralyze the entire (!) EventManager for long.
    A trick similar to the one I use in dataview.EventDispatcher.dispatch(...)
    (which is not synchronized but in parts) might help solve the problem
    of thread-safety and avoid the possibility of petrification :)))
    at the same time.

    > 2. DataObjectUtils. This will likely become a part of DataObject
    > itself. E.g. CayenneDataObject already has "readNestedProperty" method
    > that allows retrieving both persistent and non-persistent properties
    > and span relationships (though until 1.0.1 it had a bug in reading
    > non-persistent properties). I think it would make sense to define such
    > method in DataObject interface, and add something for "write..". I
    > guess we switch from DataObjectUtils once we do that.

    We are thinking along the same lines here! I did not want to modify
    DataObjects themselves at the time of the Cayenne release, but as the
    functionality was desperately needed by Data Views, had to create
    DataObjectUtils as a temporary solution. Such an addition to the
    DataObject interface will be very important and can be used by tools
    and libraries to work with DataObjects in uniform way without
    knowledge of a particular DataObject subtype.

    > 3. Data View Modeler. Oh, this is beautiful... GUI tools is definitely
    > what makes Cayenne to stand out of the crowd. Do you see any
    > possibility to make it a part of CayenneModeler, instead of a separate
    > application? If this means making the rest of the modeler look as slick
    > as the screenshots you have, I am all for it :-). If the two apps are
    > just too far apart in architecture, I wonder if we could at least
    > create a single workbench app serving as a launcher of both tools. The
    > idea is to make it simple for the users...

    Agreed absolutely. GUIs win the crowds and the present-day IT thrones :))).
    Especially now, looking at the growing tendency to replace
    web clients with the rich ones, the assertion sounds only too true.
    If nothing hinders me, today I am going to sandbox Data View Modeler.
    It is not finished yet (needs ten to forteen days to complete),
    even so it is ready for demonstration and if not its functionality in full,
    the GUI design is 90% done and works. As soon as the code and the
    working jar is in CVS I notify the community additionally.
    The other issues you touched here (integration with Cayenne Modeler,
    further directions of development of our GUI tools) well deserve
    a separate letter, I am going to write later today or on Sunday.

    > 4. Validation. You may have seen the patch from Vabricio for
    > DataContext-level validation:
    >
    > http://objectstyle.org/cayenne/lists/cayenne-devel/2003/09/0066.html
    >
    > It is not applied yet, but it is going to be soon. I wonder if dataview
    > validation can be integrated with this somehow?
    >
    > Thanks
    > Andrus

    I will definitely think how the growing Cayenne validation facilities can be
    used
    in Data Views conceptually and on the level of implementation. There is also
    work in progress on the validation project in the Apache community that
    worth
    attention. Validation is a very important feature (often neglected,
    more's the pity), so I plan to try and design it carefully.

    Andriy.



    This archive was generated by hypermail 2.0.0 : Fri Oct 17 2003 - 06:54:11 EDT