• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Crash as NSPersistentDocument creates its persistence stack
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Crash as NSPersistentDocument creates its persistence stack


  • Subject: Re: Crash as NSPersistentDocument creates its persistence stack
  • From: mmalc Crawford <email@hidden>
  • Date: Wed, 24 Dec 2008 00:03:57 -0800


On Dec 23, 2008, at 4:44 PM, Jerry Krinock wrote:

The NSPersistentDocument documentation doesn't give much detail -- "... an NSPersistenDocument creates its own ready-to-use persistence stack". I presume that it uses -mergedModelFromBundles:?

<http://developer.apple.com/documentation/Cocoa/Reference/ApplicationKit/Classes/NSPersistentDocument_Class/Reference/Reference.html#//apple_ref/doc/uid/TP30001179-CJBJBIHA >

managedObjectModel
Returns the receiver’s managed object model.

- (id)managedObjectModel

Return Value
The receiver’s managed object model, used to configure the receiver’s persistent store coordinator.


Discussion
By default the Core Data framework creates a merged model from all models in the application bundle ([NSBundle mainBundle]). You can override this method to return a specific model to use to create persistent stores. A typical implementation might include code similar to the following fragment:


NSBundle *bundle = [NSBundle bundleForClass:[self class]];
NSString *path = [bundle pathForResource:@"MyModel" ofType:@"mom"];
NSURL *url = [NSURL fileURLWithPath:path];
NSManagedObjectModel *model = [[NSManagedObjectModel alloc] initWithContentsOfURL:url];
Normally you would cache the model as an instance variable. If all your document instances use the same model, however, you can increase the efficiency of this method by caching a single instance, as illustrated in the following example.


- (id)managedObjectModel {
static id sharedModel = nil;
if (sharedModel == nil) {
sharedModel = [[super managedObjectModel] retain];
}
return sharedModel;
}
Special Considerations
In applications built on Mac OS X v10.4, by default the Core Data framework creates a merged model from all the models found in the application bundle and the frameworks against which the application is linked.


Availability
	• Available in Mac OS X v10.4 and later.


mmalc

_______________________________________________

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


  • Follow-Ups:
    • Re: Crash as NSPersistentDocument creates its persistence stack
      • From: Jerry Krinock <email@hidden>
References: 
 >Crash as NSPersistentDocument creates its persistence stack (From: Jerry Krinock <email@hidden>)

  • Prev by Date: Re: FastCGI and cocoa
  • Next by Date: displaying custom menu popups with any button?
  • Previous by thread: Crash as NSPersistentDocument creates its persistence stack
  • Next by thread: Re: Crash as NSPersistentDocument creates its persistence stack
  • Index(es):
    • Date
    • Thread