mirror of
https://github.com/zhigang1992/RestKit.git
synced 2026-04-01 22:42:51 +08:00
57 lines
2.5 KiB
Objective-C
57 lines
2.5 KiB
Objective-C
//
|
|
// RKPathUtilities.h
|
|
// RestKit
|
|
//
|
|
// Created by Blake Watters on 12/9/11.
|
|
// Copyright (c) 2009-2012 RestKit. All rights reserved.
|
|
//
|
|
|
|
#import <Foundation/Foundation.h>
|
|
|
|
/**
|
|
Returns the path to the Application Data directory for the executing application. On iOS, this is a sandboxed path specific for the executing application. On OS X, this is an application specific path under NSApplicationSupportDirectory (i.e. ~/Application Support).
|
|
|
|
@return The full path to the application data directory.
|
|
*/
|
|
NSString * RKApplicationDataDirectory(void);
|
|
|
|
/**
|
|
Returns a path to the root caches directory used by RestKit for storage. On iOS, this is a sanboxed path specific for the executing application. On OS X, this is an application specific path under NSCachesDirectory (i.e. ~/Library/Caches).
|
|
|
|
@return The full path to the Caches directory.
|
|
*/
|
|
NSString * RKCachesDirectory(void);
|
|
|
|
/**
|
|
Ensures that a directory exists at a given path by checking for the existence of the directory and creating it if it does not exist.
|
|
|
|
@param path The path to ensure a directory exists at.
|
|
@param error On input, a pointer to an error object.
|
|
@returns A Boolean value indicating if the directory exists.
|
|
*/
|
|
BOOL RKEnsureDirectoryExistsAtPath(NSString *path, NSError **error);
|
|
|
|
/**
|
|
Convenience method for generating a path against the properties of an object. Takes an `NSString` with property names prefixed with a colon and interpolates the values of the properties specified and returns the generated path.
|
|
|
|
For example, given an `article` object with an `articleID` property whose value is `@12345`, `RKPathFromPatternWithObject(@"articles/:articleID", article)` would return `@"articles/12345"`.
|
|
|
|
This functionality is the basis for path generation in the `RKRouter` class.
|
|
|
|
@param pathPattern An `SOCPattern` string containing zero or more colon-prefixed property names.
|
|
@param object The object to interpolate the properties against
|
|
@return A new `NSString` object with the values of the given object interpolated for the colon-prefixed properties name in the given pattern string.
|
|
@see RKPathMatcher
|
|
@see SOCPattern
|
|
*/
|
|
NSString * RKPathFromPatternWithObject(NSString *pathPattern, id object);
|
|
|
|
/**
|
|
Returns a MIME Type for a given path by using the Core Services framework.
|
|
|
|
For example, given a string with the path `@"/Users/blake/Documents/monkey.json"` `@"application/json"` would be returned as the MIME Type.
|
|
|
|
@return The expected MIME Type of the resource identified by the path or nil if unknown.
|
|
*/
|
|
NSString * RKMIMETypeFromPathExtension(NSString *path);
|