Changeset 625

Show
Ignore:
Timestamp:
07/05/08 21:53:45 (6 months ago)
Author:
gbooker
Message:

Inform super dir if we were modified so it can clean out its cache

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/CoreData/SapphireFrappliance/MetaData/SapphireMObjects/SapphireDirectoryMetaData.m

    r623 r625  
    283283        NSEnumerator *nameEnum = [names objectEnumerator]; 
    284284        NSString *name; 
     285        BOOL modified = NO; 
    285286        while((name = [nameEnum nextObject]) != nil) 
    286287        { 
     
    331332                                [linkedFiles removeObject:name]; 
    332333                        } 
     334                        /*      It's not always modified, but rather than figuring out all the cases where it is or isn't 
     335                                just set it to YES for a rare case and figure it out later if it's an issue*/ 
     336                        modified = YES; 
    333337                } 
    334338                else if([fm isDirectory:filePath]) 
    335339                { 
    336340                        if(![dirs containsObject:name]) 
     341                        { 
    337342                                [SapphireDirectoryMetaData createDirectoryWithPath:filePath parent:self inContext:moc]; 
     343                                modified = YES; 
     344                        } 
    338345                        [dirs removeObject:name]; 
    339346                } 
     
    344351                                SapphireFileMetaData *file = [SapphireFileMetaData createFileWithPath:filePath parent:self inContext:moc]; 
    345352                                [importArray addObject:file]; 
     353                                modified = YES; 
    346354                        } 
    347355                        else 
     
    354362                } 
    355363        } 
     364         
     365        if(modified) 
     366                [self clearPredicateCache]; 
    356367         
    357368        nameEnum = [files objectEnumerator]; 
     
    595606- (void)refreshAllObjects 
    596607{ 
    597         if([self isFault]
     608        if([self isFault] || delegate != nil
    598609                return; 
    599610        NSManagedObjectContext *moc = [self managedObjectContext];