/ private_include / CFNetwork / CFURLRequest.h
CFURLRequest.h
 1  #ifndef __CFURLREQUEST__
 2  #define __CFURLREQUEST__
 3  
 4  #include <CoreFoundation/CFData.h>
 5  #include <CoreFoundation/CFString.h>
 6  #include <CoreFoundation/CFURL.h>
 7  #include <CoreFoundation/CFStream.h>
 8  #include <CoreFoundation/CFArray.h>
 9  #include <CFNetwork/CFHTTPMessage.h>
10  #include <stdlib.h>
11  
12  #if PRAGMA_ONCE
13  #pragma once
14  #endif
15  
16  typedef CF_ENUM(UInt32, CFURLRequestCachePolicy) {
17      CFURLRequestUseProtocolCachePolicy                = 0,
18      CFURLRequestReloadIgnoringLocalCacheData          = 1,
19      CFURLRequestReloadIgnoringLocalAndRemoteCacheData = 4,
20      CFURLRequestReloadIgnoringCacheData               = CFURLRequestReloadIgnoringLocalCacheData,
21      CFURLRequestReturnCacheDataElseLoad               = 2,
22      CFURLRequestReturnCacheDataDontLoad               = 3,
23      CFURLRequestReloadRevalidatingCacheData           = 5,
24  };
25  
26  typedef CF_ENUM(UInt32, CFURLRequestNetworkServiceType) {
27      CFURLNetworkServiceTypeDefault    = 0,
28      CFURLNetworkServiceTypeVoIP       = 1,
29      CFURLNetworkServiceTypeVideo      = 2,
30      CFURLNetworkServiceTypeBackground = 3,
31      CFURLNetworkServiceTypeVoice      = 4
32  };
33  
34  __BEGIN_DECLS
35  
36  typedef const struct _CFURLRequest *CFURLRequestRef;
37  typedef struct _CFURLRequest *CFMutableURLRequestRef;
38  
39  CFStringRef CFURLRequestCopyDebugDescription(CFURLRequestRef req);
40  void __CFURLRequestLog(CFURLRequestRef req);
41  extern int __CFURLRequestLogging;
42  
43  CFURLRequestRef CFURLRequestCreate(CFAllocatorRef allocator, CFURLRef url, CFURLRequestCachePolicy policy, CFTimeInterval timeout);
44  CFURLRequestRef CFURLRequestCreateCopy(CFAllocatorRef allocator, CFURLRequestRef request);
45  CFURLRef CFURLRequestGetURL(CFURLRequestRef request);
46  CFURLRequestCachePolicy CFURLRequestGetCachePolicy(CFURLRequestRef request);
47  CFTimeInterval CFURLRequestGetTimeout(CFURLRequestRef request);
48  CFURLRef CFURLRequestCopyMainDocumentURL(CFURLRequestRef request);
49  CFURLRequestNetworkServiceType CFURLRequestGetServiceType(CFURLRequestRef request);
50  Boolean CFURLRequestAllowsCellularAccess(CFURLRequestRef request);
51  CFStringRef CFURLRequestCopyHTTPMethod(CFURLRequestRef request);
52  CFStringRef CFURLRequestCopyHTTPVersion(CFURLRequestRef request);
53  CFStringRef CFURLRequestCopyValueForHTTPField(CFURLRequestRef request, CFStringRef field);
54  CFArrayRef CFURLRequestCopyHTTPFields(CFURLRequestRef request);
55  CFArrayRef CFURLRequestCopyHTTPValues(CFURLRequestRef request);
56  CFDictionaryRef CFURLRequestCopyAllHTTPFields(CFURLRequestRef request);
57  CFDataRef CFURLRequestGetHTTPBody(CFURLRequestRef request);
58  CFReadStreamRef CFURLRequestGetHTTPBodyStream(CFURLRequestRef request);
59  Boolean CFURLRequestShouldHandleCookes(CFURLRequestRef request);
60  Boolean CFURLRequestShouldUseHTTPPipelining(CFURLRequestRef request);
61  CFIndex CFURLRequestFirstFieldIndex(CFURLRequestRef request, CFStringRef key, CFIndex start);
62  CFStringRef CFURLRequestGetHeaderFieldValue(CFURLRequestRef request, CFStringRef key);
63  
64  void _CFURLSetMutable(CFURLRequestRef request, Boolean canMutate);
65  
66  CFMutableURLRequestRef CFURLRequestCreateMutableCopy(CFAllocatorRef allocator, CFURLRequestRef request);
67  Boolean CFURLRequestSetURL(CFMutableURLRequestRef request, CFURLRef url);
68  Boolean CFURLRequestSetCachePolicy(CFMutableURLRequestRef request, CFURLRequestCachePolicy policy);
69  Boolean CFURLRequestSetTimeout(CFMutableURLRequestRef request, CFTimeInterval timeout);
70  Boolean CFURLRequestSetMainDocumentURL(CFMutableURLRequestRef request, CFURLRef url);
71  Boolean CFURLRequestSetNetworkServiceType(CFMutableURLRequestRef request, CFURLRequestNetworkServiceType type);
72  Boolean CFURLRequestSetAllowsCellularAccess(CFMutableURLRequestRef request, Boolean allowed);
73  Boolean CFURLRequestSetHTTPMethod(CFMutableURLRequestRef request, CFStringRef method);
74  CFIndex CFURLRequestAddValueForHTTPField(CFMutableURLRequestRef request, CFStringRef field, CFStringRef value);
75  Boolean CFURLRequestSetHTTPFields(CFMutableURLRequestRef request, CFArrayRef keys, CFArrayRef values);
76  Boolean CFURLRequestRemoveHTTPField(CFMutableURLRequestRef request, CFIndex index);
77  Boolean CFURLRequestReplaceHTTPField(CFMutableURLRequestRef request, CFIndex index, CFStringRef value);
78  Boolean CFURLRequestSetHTTPBody(CFMutableURLRequestRef request, CFDataRef data);
79  Boolean CFURLRequestSetHTTPBodyStream(CFMutableURLRequestRef request, CFReadStreamRef stream);
80  Boolean CFURLRequestHandleCookies(CFMutableURLRequestRef request, Boolean enabled);
81  Boolean CFURLRequestUseHTTPPipelining(CFMutableURLRequestRef request, Boolean enabled);
82  
83  CFHTTPMessageRef CFHTTPMessageCreateRequestFromURLRequest(CFAllocatorRef allocator, CFURLRequestRef request);
84  
85  CFURLRequestRef _CFURLRequestCreateFromParcel(CFAllocatorRef allocator, CFPropertyListRef parcel);
86  CFPropertyListRef _CFURLRequestCreateParcel(CFURLRequestRef request);
87  
88  __END_DECLS
89  
90  
91  #endif