Re: Overridding -[NSPersistentDocument managedObjectContext]
Re: Overridding -[NSPersistentDocument managedObjectContext]
- Subject: Re: Overridding -[NSPersistentDocument managedObjectContext]
- From: Ron Lue-Sang <email@hidden>
- Date: Mon, 27 Oct 2008 12:25:35 -0700
Hi Jerry,
Scroll down…
On Oct 27, 2008, at 10:49 AM, Jerry Krinock wrote:
Documentation for -[NSPersistentDocument managedObjectContext] states:
"If a managed object context for the receiver does not exist, one is
created automatically. You override this method to customize the
creation of the persistence stack."
Well, the first sentence leaves me in a bit of quandary when I try
and follow the second. Something like this won't work:
- (NSManagedObjectContext*)managedObjectContext {
if (![super managedObjectContext]) {
// Create a new MOC...
// Oops, sorry, this branch will never execute.
}
return [self managedObjectContext] ;
}
So it seems like I need to instead use my own instance variable,
myMOC. Something like this should work:
- (NSManagedObjectContext*)managedObjectContext {
if (![self myMOC]) {
NSManagedObjectContext* newMOC ;
//
// ... code to alloc, initialize and configure newMOC
//
[self setMyMOC:newMOC] ;
[myMOC release] ;
}
return [self myMOC] ;
}
But it seems odd that now super's instance variable
managedObjectContext will just sit there forever, pointing to nil.
Is this the proper intended usage?
Yes, that's the intended usage. Use your own storage or call super.
--------------------------
RONZILLA
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden