Mercurial > projects > dstep
comparison dstep/foundation/NSHTTPCookie.d @ 16:19885b43130e
Huge update, the bridge actually works now
author | Jacob Carlborg <doob@me.com> |
---|---|
date | Sun, 03 Jan 2010 22:06:11 +0100 |
parents | 89f3c3ef1fd2 |
children | b9de51448c6b |
comparison
equal
deleted
inserted
replaced
15:7ff919f595d5 | 16:19885b43130e |
---|---|
4 * Version: Initial created: Aug 3, 2009 | 4 * Version: Initial created: Aug 3, 2009 |
5 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0) | 5 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0) |
6 */ | 6 */ |
7 module dstep.foundation.NSHTTPCookie; | 7 module dstep.foundation.NSHTTPCookie; |
8 | 8 |
9 import dstep.AvailabilityMacros; | |
10 import dstep.foundation.NSArray; | 9 import dstep.foundation.NSArray; |
11 import dstep.foundation.NSDate; | 10 import dstep.foundation.NSDate; |
12 import dstep.foundation.NSDictionary; | 11 import dstep.foundation.NSDictionary; |
13 import dstep.foundation.NSHTTPCookieInternal; | 12 import dstep.foundation.NSObjCRuntime; |
14 import dstep.foundation.NSObject; | 13 import dstep.foundation.NSObject; |
15 import dstep.foundation.NSString; | 14 import dstep.foundation.NSString; |
16 import dstep.foundation.NSURL; | 15 import dstep.foundation.NSURL; |
17 import dstep.objc.bridge.Bridge; | 16 import dstep.objc.bridge.Bridge; |
18 import dstep.objc.objc : id; | 17 import dstep.objc.objc; |
18 | |
19 | |
19 | 20 |
20 import bindings = dstep.foundation.NSHTTPCookie_bindings; | 21 import bindings = dstep.foundation.NSHTTPCookie_bindings; |
21 | 22 |
22 const NSString NSHTTPCookieName; | 23 private |
23 const NSString NSHTTPCookieValue; | 24 { |
24 const NSString NSHTTPCookieOriginURL; | 25 NSString NSHTTPCookieName_; |
25 const NSString NSHTTPCookieVersion; | 26 NSString NSHTTPCookieValue_; |
26 const NSString NSHTTPCookieDomain; | 27 NSString NSHTTPCookieOriginURL_; |
27 const NSString NSHTTPCookiePath; | 28 NSString NSHTTPCookieVersion_; |
28 const NSString NSHTTPCookieSecure; | 29 NSString NSHTTPCookieDomain_; |
29 const NSString NSHTTPCookieExpires; | 30 NSString NSHTTPCookiePath_; |
30 const NSString NSHTTPCookieComment; | 31 NSString NSHTTPCookieSecure_; |
31 const NSString NSHTTPCookieCommentURL; | 32 NSString NSHTTPCookieExpires_; |
32 const NSString NSHTTPCookieDiscard; | 33 NSString NSHTTPCookieComment_; |
33 const NSString NSHTTPCookieMaximumAge; | 34 NSString NSHTTPCookieCommentURL_; |
34 const NSString NSHTTPCookiePort; | 35 NSString NSHTTPCookieDiscard_; |
35 | 36 NSString NSHTTPCookieMaximumAge_; |
36 static this () | 37 NSString NSHTTPCookiePort_; |
37 { | 38 } |
38 NSHTTPCookieName = new NSString(bindings.NSHTTPCookieName); | 39 |
39 NSHTTPCookieValue = new NSString(bindings.NSHTTPCookieValue); | 40 NSString NSHTTPCookieName () |
40 NSHTTPCookieOriginURL = new NSString(bindings.NSHTTPCookieOriginURL); | 41 { |
41 NSHTTPCookieVersion = new NSString(bindings.NSHTTPCookieVersion); | 42 if (NSHTTPCookieName_) |
42 NSHTTPCookieDomain = new NSString(bindings.NSHTTPCookieDomain); | 43 return NSHTTPCookieName_; |
43 NSHTTPCookiePath = new NSString(bindings.NSHTTPCookiePath); | 44 |
44 NSHTTPCookieSecure = new NSString(bindings.NSHTTPCookieSecure); | 45 return NSHTTPCookieName_ = new NSString(bindings.NSHTTPCookieName); |
45 NSHTTPCookieExpires = new NSString(bindings.NSHTTPCookieExpires); | 46 } |
46 NSHTTPCookieComment = new NSString(bindings.NSHTTPCookieComment); | 47 |
47 NSHTTPCookieCommentURL = new NSString(bindings.NSHTTPCookieCommentURL); | 48 NSString NSHTTPCookieValue () |
48 NSHTTPCookieDiscard = new NSString(bindings.NSHTTPCookieDiscard); | 49 { |
49 NSHTTPCookieMaximumAge = new NSString(bindings.NSHTTPCookieMaximumAge); | 50 if (NSHTTPCookieValue_) |
50 NSHTTPCookiePort = new NSString(bindings.NSHTTPCookiePort); | 51 return NSHTTPCookieValue_; |
52 | |
53 return NSHTTPCookieValue_ = new NSString(bindings.NSHTTPCookieValue); | |
54 } | |
55 | |
56 NSString NSHTTPCookieOriginURL () | |
57 { | |
58 if (NSHTTPCookieOriginURL_) | |
59 return NSHTTPCookieOriginURL_; | |
60 | |
61 return NSHTTPCookieOriginURL_ = new NSString(bindings.NSHTTPCookieOriginURL); | |
62 } | |
63 | |
64 NSString NSHTTPCookieVersion () | |
65 { | |
66 if (NSHTTPCookieVersion_) | |
67 return NSHTTPCookieVersion_; | |
68 | |
69 return NSHTTPCookieVersion_ = new NSString(bindings.NSHTTPCookieVersion); | |
70 } | |
71 | |
72 NSString NSHTTPCookieDomain () | |
73 { | |
74 if (NSHTTPCookieDomain_) | |
75 return NSHTTPCookieDomain_; | |
76 | |
77 return NSHTTPCookieDomain_ = new NSString(bindings.NSHTTPCookieDomain); | |
78 } | |
79 | |
80 NSString NSHTTPCookiePath () | |
81 { | |
82 if (NSHTTPCookiePath_) | |
83 return NSHTTPCookiePath_; | |
84 | |
85 return NSHTTPCookiePath_ = new NSString(bindings.NSHTTPCookiePath); | |
86 } | |
87 | |
88 NSString NSHTTPCookieSecure () | |
89 { | |
90 if (NSHTTPCookieSecure_) | |
91 return NSHTTPCookieSecure_; | |
92 | |
93 return NSHTTPCookieSecure_ = new NSString(bindings.NSHTTPCookieSecure); | |
94 } | |
95 | |
96 NSString NSHTTPCookieExpires () | |
97 { | |
98 if (NSHTTPCookieExpires_) | |
99 return NSHTTPCookieExpires_; | |
100 | |
101 return NSHTTPCookieExpires_ = new NSString(bindings.NSHTTPCookieExpires); | |
102 } | |
103 | |
104 NSString NSHTTPCookieComment () | |
105 { | |
106 if (NSHTTPCookieComment_) | |
107 return NSHTTPCookieComment_; | |
108 | |
109 return NSHTTPCookieComment_ = new NSString(bindings.NSHTTPCookieComment); | |
110 } | |
111 | |
112 NSString NSHTTPCookieCommentURL () | |
113 { | |
114 if (NSHTTPCookieCommentURL_) | |
115 return NSHTTPCookieCommentURL_; | |
116 | |
117 return NSHTTPCookieCommentURL_ = new NSString(bindings.NSHTTPCookieCommentURL); | |
118 } | |
119 | |
120 NSString NSHTTPCookieDiscard () | |
121 { | |
122 if (NSHTTPCookieDiscard_) | |
123 return NSHTTPCookieDiscard_; | |
124 | |
125 return NSHTTPCookieDiscard_ = new NSString(bindings.NSHTTPCookieDiscard); | |
126 } | |
127 | |
128 NSString NSHTTPCookieMaximumAge () | |
129 { | |
130 if (NSHTTPCookieMaximumAge_) | |
131 return NSHTTPCookieMaximumAge_; | |
132 | |
133 return NSHTTPCookieMaximumAge_ = new NSString(bindings.NSHTTPCookieMaximumAge); | |
134 } | |
135 | |
136 NSString NSHTTPCookiePort () | |
137 { | |
138 if (NSHTTPCookiePort_) | |
139 return NSHTTPCookiePort_; | |
140 | |
141 return NSHTTPCookiePort_ = new NSString(bindings.NSHTTPCookiePort); | |
51 } | 142 } |
52 | 143 |
53 class NSHTTPCookie : NSObject | 144 class NSHTTPCookie : NSObject |
54 { | 145 { |
55 mixin ObjcWrap; | 146 mixin (ObjcWrap); |
147 | |
148 this () | |
149 { | |
150 super(typeof(this).alloc.init.objcObject); | |
151 } | |
152 | |
153 typeof(this) init () | |
154 { | |
155 return invokeObjcSelf!(typeof(this), "init"); | |
156 } | |
56 | 157 |
57 Object initWithProperties (NSDictionary properties) | 158 Object initWithProperties (NSDictionary properties) |
58 { | 159 { |
59 return invokeObjcSelf!(Object, "initWithProperties:", NSDictionary)(properties); | 160 return invokeObjcSelf!(Object, "initWithProperties:", NSDictionary)(properties); |
60 } | 161 } |
61 | 162 |
62 this (NSDictionary properties) | 163 this (NSDictionary properties) |
63 { | 164 { |
64 objcObject = Bridge.invokeObjcClassMethod!(id, "alloc")(objcClass); | 165 typeof(this).alloc.initWithProperties(properties); |
65 id result = Bridge.invokeObjcMethod!(id, "initWithProperties:", NSDictionary)(objcObject, properties); | |
66 | |
67 if (result) | |
68 objcObject = ret; | |
69 | |
70 dObject = this; | |
71 } | 166 } |
72 | 167 |
73 static Object cookieWithProperties (NSDictionary properties) | 168 static Object cookieWithProperties (NSDictionary properties) |
74 { | 169 { |
75 return invokeObjcSelfClass!(Object, "cookieWithProperties:", NSDictionary)(properties); | 170 return invokeObjcSuperClass!(Object, "cookieWithProperties:", NSDictionary)(properties); |
76 } | 171 } |
77 | 172 |
78 static NSDictionary requestHeaderFieldsWithCookies (NSArray cookies) | 173 static NSDictionary requestHeaderFieldsWithCookies (NSArray cookies) |
79 { | 174 { |
80 return invokeObjcSelfClass!(NSDictionary, "requestHeaderFieldsWithCookies:", NSArray)(cookies); | 175 return invokeObjcSuperClass!(NSDictionary, "requestHeaderFieldsWithCookies:", NSArray)(cookies); |
81 } | 176 } |
82 | 177 |
83 static NSArray cookiesWithResponseHeaderFields (NSDictionary headerFields, NSURL URL) | 178 static NSArray cookiesWithResponseHeaderFields (NSDictionary headerFields, NSURL URL) |
84 { | 179 { |
85 return invokeObjcSelfClass!(NSArray, "cookiesWithResponseHeaderFields:forURL:", NSDictionary, NSURL)(headerFields, URL); | 180 return invokeObjcSuperClass!(NSArray, "cookiesWithResponseHeaderFields:forURL:", NSDictionary, NSURL)(headerFields, URL); |
86 } | 181 } |
87 | 182 |
88 NSDictionary properties () | 183 NSDictionary properties () |
89 { | 184 { |
90 return invokeObjcSelf!(NSDictionary, "properties"); | 185 return invokeObjcSelf!(NSDictionary, "properties"); |