Not a hibernate guru, either, though I had the chance to use it on a
project the last several months.
As far as I can tell, there is no equivalent concept in hibernate-land.
Robert
On Dec 14, 2008, at 12/145:02 PM , Lawrence Gerstley wrote:
Hello,
I want to thank Andrus and all for this and all of the helpful
answers. This is probably the most amicable and helpful group I've
ever encountered.
This worked great. It's answered a big question that I had for
awhile, and makes complete sense in the larger application scheme.
Not being a Hibernate expert, I don't know if there is an equivalent
concept to these nested contexts. I'm actually hopeful that there
isn't, as I'm lately asked to defend using Cayenne over Hibernate,
and this would be compelling. Gotta do more homework.
Many thanks again,
Lawrence
==================================
Lawrence Gerstley, Ph.D.
lawg...@gmail.com
On Dec 11, 2008, at 11:02 PM, Andrus Adamchik wrote:
Hi Lawrence,
Now, I don't think that I want to move CONCEPT1 to the
DIALOGCHILDCONTEXT when I open the dialog--doesn't that mean that
Actually that's exactly what you want to do. Don't think of it as
"move" though, think of it as getting a clone of the original
object, kind of like an SVN branch:
CONCEPT1 localObject =
DataObjectUtils.objectForPk(DIALOGCHILDCONTEXT,
editorConcept1.getObjectId());
I'd have to move it back when I close said dialog?
Here an SCM (SVN or other) analogy may also be useful. You won't be
moving it back, but rather merging your "branch" back to the
parent. This is not as scary as it sounds:
DIALOGCHILDCONTEXT.commitChangesToParent();
Andrus
On Dec 12, 2008, at 7:26 AM, Lawrence Gerstley wrote:
Hello,
I've been using Cayenne quite successfully for sometime in
creating my Eclipse RCP applications, but there is something that
has flummoxed me for sometime, and was wondering about best
practices. I've been creating a childDataContext (let's call in
EDITORCHILDCTXT) every time I open up an EditorPart, so that it
can use the Eclipse dirty/save model. This works fine, but a
problem arises when I have dialogs in the editor. If I was
editing, say, an ontological concept--let's call in CONCEPT, and
it has 0-many PROPERTY, I might have a dialog window pop-up to
create that property. The first thing I want to do in such a
dialog is to create a CANDIDATE_PROPERTY, and add it to CONCEPT1.
To do this, I would create a childDataContext (called
DIALOGCHILDCTXT) as a child of EDITORCHILDCTXT.
Now, ideally, I'd create and register a new PROPERTY and add it to
the CONCEPT1 (something like "addToConceptProperties"). The
problem, of course, is that the newly created PROPERTY1 is in
DIALOGCHILDCONTEXT, and CONCEPT1 is in EDITORCHILDCTXT. The
desired behavior is to be able to use a <Cancel> button in the
dialog, rollback and close DIALOGCHILDCONTEXT, losing the PROPERTY
information, but leaving any changes to CONCEPT1 in
EDITORCHILDCTXT intact, and commit only if the user confirms a
save in that editor.
Now, I don't think that I want to move CONCEPT1 to the
DIALOGCHILDCONTEXT when I open the dialog--doesn't that mean that
I'd have to move it back when I close said dialog? Or do I want to
get another copy of CONCEPT1 in the DIALOGCHILDCTXT to use for the
addition of the new PROPERTY, and if I do that, how can I inform
CONCEPT1 in the EDITORCHILDCTXT that it has a new PROPERTY, but
not lose any of its other changes? Or, does this type of paradigm
just not work here? Or, finally, am I just missing something
terribly obvious, and have made a fool of myself. :)
I've gone back and read some of your 2007 discussions about
connecting relationships between different contexts, and combed
through the documentation, but really can't determine how to do
this without forcing premature commits, breaking the editor dirty/
save paradigm. If you have any thoughts, I'd love to hear them!
Many thanks,
Lawrence
==================================
lawg...@gmail.com