1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
   | 
  - (NSString *)defaultCachePathForKey:(NSString *)key {    	return [self cachePathForKey:key inPath:self.diskCachePath]; }
 
  - (NSString *)cachePathForKey:(NSString *)key inPath:(NSString *)path {        NSString *filename = [self cachedFileNameForKey:key];        return [path stringByAppendingPathComponent:filename]; }
 
  - (NSString *)cachedFileNameForKey:(NSString *)key {    const char *str = [key UTF8String];    if (str == NULL) {        str = "";    }            unsigned char r[CC_MD5_DIGEST_LENGTH];            CC_MD5(str, (CC_LONG)strlen(str), r);        NSString *filename = [NSString stringWithFormat:@"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%@",                          r[0], r[1], r[2], r[3], r[4], r[5], r[6], r[7], r[8], r[9], r[10],                          r[11], r[12], r[13], r[14], r[15], [[key pathExtension] isEqualToString:@""] ? @"" : [NSString stringWithFormat:@".%@", [key pathExtension]]];
     return filename; }
 
 
  |