Re: Modification and deletion of data objects

From: Andrus Adamchik (andru..bjectstyle.org)
Date: Wed Jul 22 2009 - 06:15:29 EDT

  • Next message: Andrus Adamchik: "Re: updating..."

    In your business object you will need to know 3 things to map it to a
    Cayenne object: entity name, id, state (new or already persistent).
    Then you can do something like this (pseudo code of course):

    X businessObject = ...;
    DataObject cayenneObject;
    Class cayenneObjectClass = context.getEntityResolver().
             
    getClassDescriptor(businessObject.getEntityName()).getObjectClass();
    if(bObject.isNew()) {
       cayenneObject = context.newObject(cayenneObjectClass);
    }
    else {
       cayenneObject = DataObjectUtils.objectForPK(cayenneObjectClass,
    businessObject.getId());
    }

    // merge fields...

    Hope I answered the right question.

    Andrus

    On Jul 22, 2009, at 7:47 AM, sridhar devatha wrote:

    > Hi,
    >
    > I have view layer, business layer and data access layer. Each have
    > separate
    > class for carrying data. But, in data access layer, the object /
    > class used
    > for carrying data is respective data objects. I don't send these
    > objects
    > beyond my data access layer. Rather I create business objects
    > populated with
    > data object data. When the business functions call data access layer
    > for any
    > of the CRUD operations, they pass these business objects. I convert
    > these
    > business objects to data objects(So, I will create data object every
    > time I
    > need to convert business object to data object. So, what happens
    > when the
    > two data objects(one dataobject is created while retrieving data. We
    > send
    > the data as business object to business layer. one data object is
    > created
    > when the user returns the modified data in the form of business
    > object) of
    > the same class exist with the same data? How can I modify and delete
    > the
    > respective rows of these data objects? Please answer any body. I did
    > not
    > find any example that does the modification.
    >
    >
    > Yours Sincerely,
    > Devatha Sridhar



    This archive was generated by hypermail 2.0.0 : Wed Jul 22 2009 - 06:16:10 EDT