Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Core Data copyWithZone error (NSData encoded structs as attributes)



Hi list,

I'm using a custom object as one of my Core Data attributes. I'm using the
http://developer.apple.com/documentation/Cocoa/Conceptual/CoreData/Articles/cdNSAttributes.htmldocs
as a guide on how to do this, because my attribute is a non-supported
type (basically its a class that contains a c-struct)

In my NSManagedObject subclass I implement the awakeFromInsert method to
create a new instance of the object that represents my attribute and then
try to use:

-(void)setMethod(myCustomObject*)value
{
   [self willChangeValueForKey:@"attr"];
   [self setPrimitiveValue:value forKey:@"attr"];
   [self didChangeValueForKey:@"attr"];
   [self setValue:[NSKeyedArchiver archivedDataWithRootObject:attr]
                   forKey:@"attrAsData"];
}

My custom object contains a single data member which is a struct, and the
error I'm getting is:

-[myCustomObject copyWithZone:]: selector not recognized [self = 0x3a5010]



All I want to do is to be able to store custom objects in my Core Data Model
that contain structs, or more simply. I'd like to have attributes in my
entity that are NSData encoded c-structs (as I believe this is the only way
to make them persistent using Core Data).

I'm using a Obj-C wrapper around my struct at the moment, due to the
accessors requiring a custom object pointer. I'm new to this so could be
making a real mess of it. Any clarification would be appreciated.

Thanks.
_______________________________________________

Cocoa-dev mailing list (email@hidden)

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:
http://lists.apple.com/mailman/options/cocoa-dev/email@hidden

This email sent to email@hidden


Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.