#import "SapphireGenre.h" #import "CoreDataSupportFunctions.h" @implementation SapphireGenre + (SapphireGenre *)genre:(NSString *)genre inContext:(NSManagedObjectContext *)moc { NSPredicate *predicate = [NSPredicate predicateWithFormat:@"name == %@", genre]; NSArray *array = doFetchRequest(SapphireGenreName, moc, predicate); if([array count]) return [array objectAtIndex:0]; return nil; } + (SapphireGenre *)createGenre:(NSString *)genre inContext:(NSManagedObjectContext *)moc { SapphireGenre *ret = [SapphireGenre genre:genre inContext:moc]; if(ret != nil) return ret; ret = [NSEntityDescription insertNewObjectForEntityForName:SapphireGenreName inManagedObjectContext:moc]; ret.name = genre; return ret; } - (NSString *)filesValue { return @"movies"; } - (NSString *)fileNameValue { return @"title"; } - (NSString *)metaFilesValue; { return @"movies.@distinctUnionOfSets.files"; } - (NSArray *)defaultFileSort:(NSArray *)files { return [files sortedArrayUsingSelector:@selector(titleCompare:)]; } - (NSString *)path { return [super.path stringByAppendingPathComponent:self.name]; } @end