1 2010-03-12 Sebastien Pouliot <sebastien@ximian.com>
3 * WebClient_2_1.cs: Directly set 'progress' delegate field
4 * WebRequest_2_1.cs: Avoid using reflection (since it was not
7 2010-03-03 Andreia Gaita <avidigal@novell.com>
9 * InternalWebRequestStreamWrapper.cs: don't add a newline to the
10 request data, whatever uses the data should be the one adding
11 newlines if they need it (i.e., moon's ff bridge needs it, the
14 2010-02-25 Rolf Bjarne Kvinge <RKvinge@novell.com>
16 * WebClient_2_1.cs: Emit DownloadProgressChanged events on the correct
19 2010-02-23 Sebastien Pouliot <sebastien@ximian.com>
21 * HttpWebRequest_2_1.cs: Accept and ContentType properties do not
22 behave like Silverlight 2.0 (not related to browser/client stacks)
23 * WebHeaderCollection_2_1.cs: Range is now accepted in SL3 (not
24 related to browser/client stacks)
25 * WebRequest_2_1.cs: Fix registration to work on domains (new)
26 and scheme (more correctly wrt new unit tests).
28 2010-02-16 Sebastien Pouliot <sebastien@ximian.com>
30 * WebClient_2_1.cs: Keep a copy of 'userToken' since we need to
31 supply it when calling OnDownloadProgressChanged
32 * WebRequest_2_1.cs (SetupProgressDelegate): Simplify signature
34 2010-01-29 Rolf Bjarne Kvinge <RKvinge@novell.com>
36 * WebClient_2_1.cs: Ensure the WriteStreamClosed event is emitted on
37 the correct thread (by using the stored SynchronizationContext).
39 * InternalWebRequestStreamWrapper.cs: Add a WebClientData field which
40 is passed to the WriteStreamClosedCallback.
42 2010-01-28 Rolf Bjarne Kvinge <RKvinge@novell.com>
44 * WebClient_2_1.cs: The async events must be invoked on a threadpool
45 thread if the async method wasn't executed on the main thread, so save
46 the synchronization context when the async method is called, and post
47 the event to that synchronization context when done. This is also
48 required when the async methods are executed on the main thread, since
49 HttpWebRequest callbacks are now always executed on a threadpool thread.
51 2010-01-25 Sebastien Pouliot <sebastien@ximian.com>
53 * UdpAnySourceMulticastClient.cs: New. Stub for SL4
54 * UdpSingleSourceMulticastClient.cs: New. Stub for SL4
56 2010-01-13 Sebastien Pouliot <sebastien@ximian.com>
58 * HttpWebRequest_2_1.cs: Throw for CookieContainer. It is
59 implemented only in the client http stack (and for a limited
60 time in the browser stack too ;-)
61 * InternalWebRequestStreamWrapper.cs: Keep the MemoryStream data
62 available after closing/disposing (by user) since our own code
63 will need it later (e.g. when posting like DRT287)
64 * WebHeaderCollection_2_1.cs: Provide an argument to
65 ArgumentException. Found by Gendarme's ArgumentException
66 InstantiateArgumentExceptionCorrectlyRule
68 2010-01-12 Sebastien Pouliot <sebastien@ximian.com>
70 * WebRequest_2_1.cs: Rework registration wrt the two, browser
71 and client, stacks offered in SL3. Only global works now.
73 2010-01-11 Sebastien Pouliot <sebastien@ximian.com>
75 * InternalWebRequestStreamWrapper.cs: New. Moved (and adapted)
76 from Moonlight System.Windows.Browser assembly.
77 * InternalWebResponseStreamWrapper.cs: New. Moved (and adapted)
78 from Moonlight System.Windows.Browser assembly.
79 * WebClient_2_1.cs: Remove custom delegate declaration (Gendarme's
80 AvoidDeclaringCustomDelegatesRule). Remove locking over a variable
81 (Gendarme's ReviewLockUsedOnlyForOperationsOnVariablesRule).
82 Avoid potential race with event handlers (Gendarme's
83 ProtectCallsToEventDelegatesRule). Implement OnWriteStreamClosed
84 * WebRequest_2_1.cs: Signature change from delegate to
85 Action<long,long,object>. Found using Gendarme's
86 AvoidDeclaringCustomDelegatesRule
88 2009-12-12 Rolf Bjarne Kvinge <RKvinge@novell.com>
90 * WebClient_2_1.cs: When creating the request we need to copy over
91 any headers the user set on us. We also need to wrap
92 InvalidOperationExceptions in WebExceptions.
94 2009-12-04 Sebastien Pouliot <sebastien@ximian.com>
96 * HttpStatusCode_2_1.cs: Remove. SL3 provides all status code
97 since they are used for the client stack
98 * WebClient_2_1.cs: Add Credentials property and change
99 ResponseHeaders property to public
100 * WebRequest_2_1.cs: Add Credentials property
102 2009-12-04 Sebastien Pouliot <sebastien@ximian.com>
104 * DnsEndPoint_2_1.cs: Moved to System.dll since it's also part
107 2009-12-04 Sebastien Pouliot <sebastien@ximian.com>
109 * HttpWebRequest_2_1.cs: Add CookieCollection, need to be
110 implemented in the client stack
111 * HttpWebResponse_2_1.cs: CookieContainer is virtual. Add FIXME
112 to move (a real) implementation into the client stack
113 * WebRequest_2_1.cs: Add Create(string) overload (SL3)
115 2009-09-24 Sebastien Pouliot <sebastien@ximian.com>
117 * Dns_2_1.cs: New. Smaller version of Dns.cs that offers just
118 enough for DnsEndPoint support
120 2009-09-24 Sebastien Pouliot <sebastien@ximian.com>
122 * DnsEndPoint_2_1.cs: Remove (now) unneeded method
124 2009-07-16 Sebastien Pouliot <sebastien@ximian.com>
126 * WebHeaderCollection_2_1.cs: Seal type.
128 2009-06-17 Sebastien Pouliot <sebastien@ximian.com>
130 * WebClient_2_1.cs: Fix BaseAddress and remove dual base[Address|
133 2009-06-05 Sebastien Pouliot <sebastien@ximian.com>
135 * WebClient_2_1.cs: Make sure *CompletedEventArgs gets called
136 even in case an exception occurs before the BeginGetResponse
137 call. Adjust API for OpenReadCompletedEventArgs.
139 2009-06-04 Sebastien Pouliot <sebastien@ximian.com>
141 * WebClient_2_1.cs: Remove the creation of threads and use the
142 async methods provided by WebRequest (and its friends). Use an
143 internal object to lock on (not this). Remove comments from the
144 original (mono) WebClient since the code has diverged so much.
145 Fix DRT#326 (hopefully others too or at least more than it breaks)
147 2009-06-01 Sebastien Pouliot <sebastien@ximian.com>
149 * HttpWebRequest_2_1.cs: Avoid possible NRE while settings a
151 * WebResponse_2_1.cs: Use StringComparer.OrdinalIgnoreCase on
152 the prefix Dictionary
154 2009-05-26 Sebastien Pouliot <sebastien@ximian.com>
156 * WebClient_2_1.cs: Add internal WebHeaderCollection. Change
157 signature for OpenPolicyReadAsync to take an addtional object
158 * WebResponse_2_1.cs: Add internal WebHeaderCollection
160 2009-05-22 Sebastien Pouliot <sebastien@ximian.com>
162 * WebClient_2_1.cs: Add an internal OpenPolicyReadAsync. Check
163 result in ProcessResponse and throw if not Ok (200).
164 * WebRequest_2_1.cs: Add an internal overload to BeginGetResponse
165 from where we can handle downloading the policy.
167 2009-05-14 Sebastien Pouliot <sebastien@ximian.com>
169 * DnsEndPoint_2_1.cs: Add method to return an IPEndPoint from a
170 DnsEndPoint that match the requested AddressFamily
172 2009-05-12 Sebastien Pouliot <sebastien@ximian.com>
174 * WebHeaderCollection_2_1.cs: Headers are case insensitive but we
175 must keep them in their original form since AllKeys property will
176 report them that way and user code (like DRT#288) can depends on
179 2009-05-11 Sebastien Pouliot <sebastien@ximian.com>
181 * WebHeaderCollection_2_1.cs: Headers are removed only in special
182 cases and never when the "this" property is used. Call ToLower
183 in SetHeader too in order to avoid typos.
185 2009-05-11 Sebastien Pouliot <sebastien@ximian.com>
187 * HttpWebRequest_2_1.cs: Fix Accept and ContentType properties
188 to use, with special care, the Headers property
189 * WebHeaderCollection_2_1.cs (SetHeader): Add or remove header.
191 2009-05-10 Sebastien Pouliot <sebastien@ximian.com>
193 * HttpWebRequest_2_1.cs: Move Headers property logic here (as
194 shown by adding more unit tests)
195 * WebClient_2_1.cs: Add comment that Headers are not validated
197 * WebHeaderCollection_2_1.cs: Add a SetHeader method that can
198 work around the normal validations that the "this" property
201 2009-05-09 Sebastien Pouliot <sebastien@ximian.com>
203 * WebHeaderCollection_2_1.cs: When associated with a WebRequest
204 the header collection items needs to be validated since not all
205 headers will be valid. Part of fix for DRT#532
207 2009-04-16 Sebastien Pouliot <sebastien@ximian.com>
209 * HttpWebRequest_2_1.cs: Rework the throwing of NIE so gui-compare
210 does not report them (since they are the "right" behavior)
211 * WebClient_2_1.cs: Fix BaseAddress property to return the URI to
212 the XAP file. Implement protected GetWebRequest which will make an
213 absolute URI from a relative one (using BaseAddress). That remove
214 the need of the previous hack.
215 * WebRequest_2_1.cs: Remove previous hack
217 2009-04-11 Sebastien Pouliot <sebastien@ximian.com>
219 * WebClient_2_1.cs: WebClient allows relative URI...
220 * WebRequest_2_1.cs: ...while WebRequest does not by default.
221 Also uncomment a few checks for new test cases
223 2009-04-11 Sebastien Pouliot <sebastien@ximian.com>
225 * DnsEndPoint_2_1.cs: Adjust exceptions wrt unit tests
226 * HttpWebRequest_2_1.cs: Fix Headers property wrt unit tests:
227 * WebClient_2_1.cs: Fix some properties
228 * WebHeaderCollection_2_1.cs: Adjust exceptions wrt unit tests
229 * WebRequest_2_1.cs: Add RegisterPrefix functionality and add
230 missing checks (fix unit tests)
232 2009-04-09 Sebastien Pouliot <sebastien@ximian.com>
234 * DnsEndPoint_2_1.cs: Fix header.
235 * HttpStatusCode_2_1.cs: New. SL2 (short) version of the enum
236 * HttpWebRequest_2_1.cs: Add missing members
237 * WebExceptionStatus_2_1.cs: New. SL2 (short) version of the enum
238 * WebHeaderCollection_2_1.cs: Implement S.C.IEnumerable
240 2009-03-11 Rolf Bjarne Kvinge <RKvinge@novell.com>
242 * WebClient_2_1.cs: OnOpenReadCompleted and OnDownloadStringCompleted:
243 make sure we don't pass any exceptions back to native code.
245 2009-03-04 Rolf Bjarne Kvinge <RKvinge@novell.com>
247 * WebClient_2_1.cs: Stub out missing methods.
248 * WriteStreamClosedEventArgs_2_1.cs:
249 * WriteStreamClosedEventHandler_2_1.cs: Added.
251 2009-02-05 Geoff Norton <gnorton@novell.com>
253 * WebClient_2_1.cs: Use g_timeout_add instead of g_idle_add here until
254 SyncContext is ready, as its less prone to starvation.
256 2009-02-05 Geoff Norton <gnorton@novell.com>
258 * WebClient_2_1.cs: CancelAsync calls Thread.Interrupt so needs to be
259 SecuritySafeCritical for now.
261 2009-01-26 Rolf Bjarne Kvinge <rkvinge@novell.com>
263 * WebClient_2_1.cs: Ensure we don't let exceptions go to native code.
264 * HttpWebRequest_2_1.cs: Add AllowReadStreamBuffering.
266 2009-01-21 Geoff Norton <gnorton@novell.com>
268 * WebClient_2_1.cs: Make the ManualResetEvent local to the callback
269 because a WebClient can be reused causing a wait-handle race here
270 allowing a delegate to get collected causing a crash.
272 2009-01-21 Chris Toshok <toshok@ximian.com>
274 * WebClient_2_1.cs: add 1 method back in, CancelAsync.
276 2009-01-12 Geoff Norton <gnorton@novell.com>
278 * WebClient_2.1.cs: SL2 webclient supports BaseAddress.
280 2008-10-16 Jb Evain <jbevain@novell.com>
282 * WebHeaderCollection_2_1.cs: update to SL2 api.
284 2008-10-16 Jb Evain <jbevain@novell.com>
286 * WebResponse_2_1.cs: update API to SL2.
288 2008-08-21 Stephane Delcroix <sdelcroix@novell.com>
290 * WebClient_2_1.cs: set the address on OpenReadCompletedEventArgs
293 2008-08-21 Stephane Delcroix <sdelcroix@novell.com>
295 * WebClient_2_1.cs: enable the DownloadStringAsync code
297 2008-08-19 Geoff Norton <gnorton@novell.com>
299 * WebClient_2_1.cs: Keep a reference to the tick callback until its completed.
301 2008-08-18 Geoff Norton <gnorton@novell.com>
303 * WebRequest_2_1.cs: Set a delegate callback for BrowserHttpWebRequest
305 * WebClient_2_1.cs: Refactor the OnDownloadedChanged method, as its already
306 emitting on the right thread. Clean up the OnOpenReadCompleted method.
307 Set a delegate callback for BrowserHttpWebRequest to updated Progress.
309 2008-08-17 Geoff Norton <gnorton@novell.com>
311 * WebRequest_2_1.cs: We support relative URI's now.
313 2008-08-14 Geoff Norton <gnorton@novell.com>
315 * WebClient_2_1.cs: A dirty hack to emit the events on the proper thread
316 until we can figure out exactly how to leverage Dispatcher over here.
318 2008-06-18 Stephane Delcroix <sdelcroix@novell.com>
320 * WebRequest_2_1.cs: Load BrowserHttpWebRequest from the right assembly
322 2008-06-10 Stephane Delcroix <sdelcroix@novell.com>
324 * DnsEndPoint_2_1.cs: embed an IPAddress and rely on IPEndPoint
327 2008-06-04 Stephane Delcroix <sdelcroix@novell.com>
329 * DnsEndPoint_2_1.cs: new DnsEndPoint class for SL2b1
331 2008-04-13 Jb Evain <jbevain@novell.com>
333 * *_2_1.cs: move the specific 2.1 System.Net code to the