Re: Cayenne & Flex

From: Malcolm Edgar (malcolm.edga..mail.com)
Date: Fri Jun 16 2006 - 05:48:55 EDT

  • Next message: Tore Halset: "Re: raw dataport"

    Andrus Adamchik wrote:
    >
    >
    >> ((Integer) DataObjectUtils.pkForObject(this)).intValue();
    >
    >
    > An equivalent shorter form will be this:
    >
    > DataObjectUtils.intPkForObject(this));
    >
    >
    >> ObjectId objectId = new ObjectId("Contact", CONTACT_ID_PK_COLUMN,
    >> id);
    >> setObjectId(objectId);
    >
    >
    > Theoretically this should work as Cayenne checks for manual id changes
    > on commit and does the right thing. The catch is that the old id is
    > used as a key to look up the registered object in DataContext, so there
    > may be undesired side effects. A cleaner way may look like this:
    >
    > this.objectId.getReplacementIdMap().put(CONTACT_ID_PK_COLUMN, new
    > Integer(id));
    >
    > Andrus
    >
    > On Jun 16, 2006, at 5:14 AM, Malcolm Edgar wrote:
    >
    >> Hi All,
    >>
    >> I am looking at using Cayenne with Flex. Flex provides a Data
    >> Services layer
    >> which transforms Java object into matching JavaScript classes. As Flex
    >> needs to get and set the object id values, I want to know if what I
    >> am doing
    >> below is the correct pattern?
    >>
    >> regards Malcolm Edgar
    >>
    >>
    >> package samples.contact;
    >> ..
    >>
    >> public class Contact extends _Contact
    >> {
    >> public int getContactId() {
    >> return ((Integer) DataObjectUtils.pkForObject(this)).intValue ();
    >> }
    >>
    >> public void setContactId(int id) {
    >> ObjectId objectId = new ObjectId("Contact", CONTACT_ID_PK_COLUMN,
    >> id);
    >> setObjectId(objectId);
    >> }
    >>
    >> }
    >
    >
    >

    Thanks for that. It is working well so far, these products will be a
    pretty sweat combination.

    regards Malcolm Edgar



    This archive was generated by hypermail 2.0.0 : Fri Jun 16 2006 - 05:49:20 EDT