2004-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
[mono.git] / mcs / class / System.Web / System.Web / ChangeLog
1 2004-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2
3         * HttpStaticObjectsCollection.cs: don't share static session objects
4         declared in the application file across the application, but on a
5         per-session basis. Fixes bug #65446.
6
7 2004-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
8
9         * HttpServerUtility.cs: in Transfer(path), don't keep form data if
10         the transfer is done from inside a page that received a postback.
11         Fixes bug #65613.
12
13 2004-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
14
15         * HttpValueCollection.cs: fixed signature of ToString (). Closes bug
16         #65392.
17
18 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
19
20         * HttpApplication.cs: only add/remove to/from the timeout
21         manager when we're in a interruptible step.
22
23 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
24
25         * TraceContext.cs: when IsEnabled has not been set, return the value
26         from the TraceManager. Fixes bug #63469.
27
28 2004-08-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
29
30         * HttpRuntime.cs: initialize the response writer when finishing a
31         request because it cannot be queued. Under heavy load we made new
32         requests be processed before the ones that might be queued. This is
33         no longer the case.
34
35         * QueueManager.cs: instead of queueing/dequeuing separately, we now
36         have a single method that does everything needed to decide which one
37         will be the next request processed.
38
39 2004-08-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
40
41         * HttpRuntime.cs: removed initializations to null in .cctor. Prevent
42         other requests from avoiding the lock if they are received before the
43         configuration system is inited. Ensure that the queue manager is not
44         null before using it (it can be null while the first request is being
45         processed).
46
47 2004-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
48
49         * HttpServerUtility.cs: ensure we have a full virtual path for the
50         request being executed.
51
52 2004-07-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
53
54         * HttpApplication.cs: the file not found might be a dependency.
55
56 2004-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
57
58         * HttpCookie.cs: use invariant when formatting expires date. Fixes bug
59         #61690.
60
61 2004-07-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
62
63         * HttpApplication.cs: don't keep the session around if we got it from
64         the context. Fixes bug #61232.
65
66 2004-07-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
67
68         * HttpUtility.cs: fixed stupid bug in UrlDecode from bytes. Closes bug
69         #61181.
70
71 2004-07-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
72
73         * TraceContext.cs: added internal HaveTrace property whose
74         value is true when the page has a Trace attribute.
75
76 2004-06-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
77
78         * TraceData.cs: fixed <br> output. Closes bug #60181.
79
80 2004-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
81
82         * HttpUtility.cs: check for control characters in the string to encode
83         or decode and return the same string if there are none.
84
85 2004-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
86
87         * HttpApplication.cs: change/restore the IPrincipal in their own methods
88         and make them internal.
89
90 2004-06-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
91
92         * HttpContext.cs: reverting Pedro's patch and sending mail with test
93         to mono-devel.
94
95 2004-06-09  Pedro Martínez Juliá  <yoros@wanadoo.es>
96
97         * HttpContext: User property returns its own "user" value because
98         the context can walk through different Threads. When "User" property
99         is changed, change "Thread.CurrentPrincipal" too.
100
101 2004-06-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
102
103         * HttpRequest.cs: removed extra ^Ms and fixed style of last patch.
104
105 2004-06-08  Alon Gazit  <along@mainsoft.com>
106
107         * HttpRequest.cs: Add a patch for HttpRequest.ServerVariables.
108
109 2004-06-07  Sebastien Pouliot  <sebastien@ximian.com>
110
111         * HttpContext.cs: User property now get/set Thread.CurrentPrincipal.
112         Fix (at least partially) #59683.
113
114 2004-06-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
115
116         * HttpRequest.cs: reverting patch from Alon Gazit. Uses the above file
117         that doesn't compile.
118
119 2004-06-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
120
121         * TraceData.cs: fixes nullref in an application that relies on
122         r ["Message"] not being null. Closes bug #59679.
123
124 2004-06-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
125
126         * HttpCachePolicy.cs: implemented SetAllowResponseInBrowserHistory.
127
128 2004-06-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
129
130         * HttpRuntime.cs: implemented a 5 simple properties that were TODOs.
131
132 2004-06-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
133
134         * HttpBrowserCapabilities.cs: implemented ClrVersion and GetClrVersions.
135         * HttpException.cs: removed MonoTODO.
136
137 2004-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
138
139         * TraceContext.cs: don't check if HttpRuntime.TraceManager
140         is enabled when writing.
141
142 2004-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
143
144         * HttpRequest.cs: added ClientTarget internal property.
145
146 2004-06-03  Lluis Sanchez Gual <lluis@ximian.com>
147
148         * HttpApplication.cs: Clear the http handler list after releasing the
149           handlers.
150
151 2004-06-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
152
153         * TraceData.cs: html-encode the messages written to the trace. Fixes
154         bug #59431.
155
156 2004-06-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
157
158         * HttpWorkerRequest.cs: the hashtables are now case-insensitive. Thanks
159         to Markus Kräutner.
160
161 2004-05-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
162
163         * HttpRequest.cs: nullify _sRequestRootVirtualDir and baseVirtualDir
164         when SetFilePath is called. This way the cached values are reset and
165         get the right value in case someone (namely SessionStateModule + 
166         cookieless session) changes the FilePath after the property cached its
167         value. Fixes bug #59364.
168
169 2004-05-27      Patrik Torstensson <totte@hiddenpeaks.com>
170
171         * HttpApplicationFactory.cs: Added SignalError (still todo)
172
173 2004-05-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
174
175         * HttpResponse.cs: remove hardcoded "HTTP/1.0" version that kept
176         chunked encoding disabled. Fixed chunked suffix and end. Send the
177         'lastchunk' marked when in the final Flush even if the content length
178         is 0. This makes mod-mono-server work fine with chunked encoding.
179          
180         * HttpRuntime.cs: Set the _firstRequest* variables to true
181         earlier. TraceContext don't take any parameter now.
182
183         * TraceManager.cs: don't need a context. Use GetAppConfig.
184
185 2004-05-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
186
187         * HttpApplication.cs: set culture/uiculture from configuration and
188         restore it after each step. Fixes bug #52851.
189
190 2004-05-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
191
192         * HttpUtility.cs: use lower case in UrlEncode like MS does. Delay
193         entities hashtable creation until it's really needed.
194
195 2004-05-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
196
197         * HttpApplicationFactory.cs: if no module matches the name found for a
198         possible event, ignore it. Fixes bug #58542.
199
200 2004-05-16      Patrik Torstensson <totte@hiddenpeaks.com>
201
202         * HttpRuntime (Init): Removed old todo
203         * HttApplication : Implemented IHttpHandlerFactory recycling
204         
205 2004-04-28      Patrik Torstensson
206
207         * HttpApplicationState.cs: Performance, usage of ReaderWriter lock,
208         removed MonoTodo
209
210 2004-04-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
211
212         * HttpUtility.cs: return null in HtmlDecode for null input instead of
213         throwing an exception. Patch by Jan Jaros (bug #57083).
214
215 2004-04-10  Vladimir Vukicevic  <vladimir@pobox.com>
216
217         * TimeoutManager.cs: Swap the order of initialization of contexts
218         and the Timer, to avoid race condition of CheckTimeouts being called
219         before contexts gets initialized.
220
221 2004-03-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
222
223         * HttpRequestStream.cs: patch from Jan Jaros that fixes bug #56080.
224         Now the posted file content does not have the boundaries and headers
225         included.
226
227 2004-03-25  Alon Gazit <along@mainsoft.com>
228
229         * HttpRequest.cs: fix ValidateCookieCollection() to prevent
230         InvalidCastException.
231
232 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
233
234         * HttpValueCollection.cs: don't UrlDecode cookies. Fixes bug #55254.
235
236 2004-03-01  Larry Ewing  <lewing@ximian.com>
237
238         * HttpUtility.cs: fix UrlEncodeToBytes count check.
239
240 2004-02-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
241
242         * HttpServerUtility.cs:
243         * HttpUtility.cs: added some checks for null. Fixed UrlPathEncode (bug
244         #53670).
245
246 2004-02-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
247
248         * HttpUtility.cs: fixed length check. Closes bug #54201.
249         Thanks to Michal Moskal. Use MemoryStream instead of an ArrayList when
250         decoding.
251
252 2004-02-11  Jackson Harper <jackson@ximian.com>
253
254         * TraceData.cs: Use ToString for cookie/header/var name values so
255         null is handled properly.
256         
257 2004-02-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
258
259         * HttpApplication.cs: ApplicationState is inited by the factory so,
260         return that value in the property. when we use the context Session,
261         cache it in the instance field.
262
263         * HttpApplicationFactory.cs: fixed target Type for the event when
264         hooking application and module events. Initialize application
265         and session scope objects. Fixes non-aplication events hook up.
266
267         * HttpStaticObjectsCollection.cs: added StaticItem and delay the
268         creation of the objects until they are requested.
269
270 2004-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
271
272         * HttpApplicationFactory.cs: fixlet for session events hook.
273
274 2004-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
275
276         * HttpApplicationFactory.cs: attach all events from Type and BaseType
277         at the same time. Fixes bug #53454.
278
279 2004-01-27  Jackson Harper <jackson@ximian.com>
280
281         * HttpCachePolicy.cs: varybyparams::GetResponseHeader can return
282         null now, dont hadd the header if it does.
283         * HttpCacheVaryByParams.cs: Return null if there are no items.
284
285 2004-01-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
286
287         * HttpCachePolicy.cs: it's not public.
288         * HttpRuntime.cs: wait for requests before disposing the queue.
289
290 2004-01-15  Jackson Harper <jackson@ximian.com>
291
292         * HttpCachePolicy.cs: Fix typo causing varyby params headers to be
293         created when they shouldn't be.
294         
295 2004-01-14  Jackson Harper <jackson@ximian.com>
296
297         * TraceData.cs: Fix some typos in the output text. Fix control
298         position when adding controls recursively.
299         
300 2004-01-14  Jackson Harper <jackson@ximian.com>
301
302         * HttpCachePolicy.cs: Expose duration and sliding properties.
303         
304 2004-01-14  Jackson Harper <jackson@ximian.com>
305
306         * HttpCachePolicy.cs: Add an event that is fired when the
307         cacheability is updated. The response uses this to determine
308         whether or not it needs to cache itself.
309         * HttpResponse.cs: When the cacheability is updated either create
310         or dispose of the cached raw response based on whether or not we
311         wil need it. This allows output caching to be controlled
312         programatically.
313         
314 2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
315
316         * HttpContext.cs: add setter for ConfigTimeout.
317         * HttpException.cs: added Description property and HTML encode some
318         unescaped values.
319
320         * HttpRequest.cs: support request validation.
321
322         * HttpRequestValidationException.cs: added message and description.
323
324         * HttpServerUtility.cs: implemented ScriptTimeout.
325
326 2004-01-11  Jackson Harper <jackson@ximian.com>
327
328         * TraceManager.cs: Dont crash if there is no trace config element.
329         
330 2004-01-11  Jackson Harper <jackson@ximian.com>
331
332         * HttpRequest.cs: Add property for determining if the request is
333         local or not.
334         
335 2004-01-10  Jackson Harper <jackson@ximian.com>
336
337         * TraceContext.cs: Handle tracing when it is enabled in the config
338         file but not on the page.
339         * TraceManager.cs: Get settings from the configuration object.
340         * HttpRuntime.cs: Create trace manager in the first request start
341         so it can get configuration settings.
342         
343 2004-01-10  Jackson Harper <jackson@ximian.com>
344
345         * TraceContext.cs: Save the request path in the trace data.
346         * TraceData.cs: Add RequestPath property, make some rendering
347         methods internal static so the TraceHandler can use them.
348         * TraceManager.cs: Expose trace data, add a method for clearing
349         trace data.
350         
351 2004-01-10  Jackson Harper <jackson@ximian.com>
352
353         * HttpRuntime.cs: Add trace manager
354         * TraceManager.cs: New class for handling trace configuration and
355         storing trace data objects.
356         * TraceContext.cs: Save trace data to the trace manager. Fix typo.
357         
358 2004-01-10  Jackson Harper <jackson@ximian.com>
359
360         * TraceData.cs: New class for storing trace data. Data is stored
361         here instead of the trace context so it can be saved and accessed
362         from the trace handler.
363         * TraceContext.cs: Save data in the TraceData object, let the
364         trace data object handle the rendering.
365         
366 2004-01-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
367
368         * HttpRequest.cs: use ContentEncoding for QueryString. Fixes bug #52577.
369         Thanks to Jan Jaros (mono-bug@jerryweb.info).
370
371         * HttpRequestValidationException.cs: fix comment.
372
373 2004-01-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
374
375         * HttpException.cs: default to error 500. Fixes bug #52623.
376
377 2004-01-04  Jackson Harper <jackson@ximian.com>
378
379         * TraceContext.cs: Store and render trace info times. Also render
380         cookie sizes. Remove debug code.
381         
382 2004-01-04  Jackson Harper <jackson@ximian.com>
383
384         * HttpResponse.cs: Set the cached response date header so it can
385         be updated.
386         * HttpResponseHeader.cs: Let values be set so we can update cached 
387         response header values.
388         
389 2004-01-04  Jackson Harper <jackson@ximian.com>
390
391         * HttpResponse.cs: Implement RemoveOutputCacheItem.
392         
393 2004-01-04  Jackson Harper <jackson@ximian.com>
394
395         * HttpCachePolicy.cs: Add internal method to get the vary by custom string
396         * HttpCacheVaryByHeaders.cs: Add internal method to get the header names.
397         
398 2004-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
399
400         * HttpRuntime.cs: implemented MachineConfigurationDirectory,
401
402 2004-1-1  Alon Gazit <along@mainsoft.com>
403         * HttpWriter.cs: add check in Write() in order to prevent
404         NullReferenceException.
405
406 2004-1-1  Alon Gazit <along@mainsoft.com>
407         * HttpResponse.cs: implemented ExpiresAbsolute and Expires.
408
409 2003-12-18  Jackson Harper <jackson@ximian.com>
410
411         * TraceContext.cs: Write () methods are not warnings.
412         
413 2003-12-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
414
415         * HttpBrowserCapabilities.cs: added GetClrVersions ().
416         * HttpCachePolicy.cs: added SetAllowResponseInBrowserHistory ().
417         * HttpContext.cs: added set_Current and RewritePath (s, s, s) for 1.1.
418         * HttpRequest.cs: added set_ContentType, SetPathInfo and ValidateInput.
419         * HttpRequestValidationException.cs: new class for 1.1
420         * HttpResponse.cs: added RedirectLocation.
421         * HttpRuntime.cs: added UnloadAppDomain.
422         * HttpServerUtility.cs: Execute (s, t, b) is internal for < 1.2
423         * HttpUtility.cs: copied UrlPathEncode from HttpServerUtility.
424         * HttpWorkerRequest.cs: added [ComVisible] and made the ctor public.
425
426 2003-12-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
427
428         * HttpContext.cs: implemented IsCustomErrorEnabled and
429         IsDebuggingEnabled. Added internal ErrorPage property.
430
431         * HttpRuntime.cs: on error, check if we have a custom error page enabled
432         to handle it and redirect.
433
434         * HttpResponse.cs: added RedirectCustomError (), which actually does
435         the redirection to the error page.
436         
437 2003-12-16  Jackson Harper <jackson@ximian.com>
438
439         * TraceContext.cs: Render all the data, and the stylesheet.
440         
441 2003-12-16  Jackson Harper <jackson@ximian.com>
442
443         * TraceContext.cs: Add incomplete render method.
444         
445 2003-12-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
446
447         * CapabilitiesLoader.cs: loads browser detection and capabilities data
448         from browscap.ini file by Gary J. Keith.
449
450         * HttpBrowserCapabilities.cs: removed almost all TODOs.
451
452         * HttpRequest.cs: fixed Browser property.
453
454 2003-12-15  Jackson Harper <jackson@ximian.com>
455
456         * TraceContext.cs: Initial implementation of storing data.
457         * HttpContext.cs: Create and expose a trace object.
458         
459 2003-12-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
460
461         * HttpApplication.cs: ThreadAbortException is ok on Redirect.
462         * HttpContext.cs: added TimeoutPossible property.
463         * HttpResponse.cs: throw ThreadAbortException if End () is called within
464         a step in which is possible to timeout.
465
466         Fixes bug #51703.
467
468 2003-12-04  Jackson Harper <jackson@ximian.com>
469
470         * HttpRequest.cs: Cleanup method.
471         
472 2003-12-04  Jackson Harper <jackson@ximian.com>
473
474         * HttpValueCollection.cs: Allow blank value names. Posting
475         <blank>=SomeValue is valid. And occurs if a radio button does
476         not have its name set.
477         
478 2003-12-03  Jackson Harper <jackson@ximian.com>
479
480         * HttpResponse.cs: Actually apply an app path modifier in
481         ApplyAppPathModifer and add a method to set the app path modifier.
482         * HttpRequest.cs: Add utility method for setting a request header.
483         
484 2003-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
485
486         * HttpApplication.cs: handle FileNotFound and DirectoryNotFound
487         exceptions when creating the handler to generate a better error page.
488
489         * HttpException.cs: display the http_code if available.  Changed all
490         \n by \r\n to make the hidden stack trace readable.
491         
492         * StaticFileHandler.cs: don't send the real path in th eerror.
493
494 2003-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
495
496         * HttpContext.cs: updated GetConfig and GetAppConfig to new API.
497         
498         * HttpResponse.cs: separate initialization of the HttpWriter, as it
499         tries to read configuration settings while the config. system is not
500         available (ie, before the first request).
501         
502         * HttpRuntime.cs: delayed queueManager and response writer
503         initialization until the configuration system is working.
504
505 2003-11-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
506
507         * HttpRuntime.cs: added request queue handling.
508
509         * QueueManager.cs: simple request queue.
510         
511         * TimeoutManager.cs: added some locks to prevent the enumerator used in
512         CheckTimeouts to be out of synch.
513
514 2003-11-25  Jackson Harper <jackson@ximian.com>
515
516         * HttpStaticObjectsCollection.cs: Add methods for serialization
517         and conversion to/from byte arrays.
518         
519 2003-11-21  Jackson Harper <jackson@ximian.com>
520
521         * HttpResponse.cs: When caching data set the content length in the
522         cached repsonse so that only that amount will be written back to
523         the client. Add method to write a range of binary data.
524         * HttpCacheVaryByParams.cs: Add method to retrieve param names.
525         
526 2003-11-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
527
528         * HttpApplication.cs:
529         * HttpContext.cs:
530         * HttpRuntime.cs: add timeout handling.
531         * TimeoutManager.cs: new class that takes care of aborting threads on
532         timeout.
533
534 2003-11-19  Jackson Harper <jackson@ximian.com>
535
536         * HttpWriter.cs: Use a constant for the buffer size so the cache
537         can get the buffer size. Add method to get the buffer.
538         * HttpResponse.cs: Methods for getting data to cache, and setting
539         vars from the cache.
540         * HttpCachePolicy.cs: Expose a pages cache expire time.
541         
542 2003-11-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
543
544         * HttpResponse.cs: 
545         * HttpWriter.cs: some fixes to allow closing a response stream without
546         messing the rest.
547
548 2003-11-13  Jackson Harper  <jackson@ximian.com>
549
550         * HttpCachePolicy.cs: Make sure cacheability and maxage get
551         set. Add method to set Http response header data
552         * HttpCacheVaryByParams.cs: Add method to create a response header.
553         * HttpCacheability.cs: Add ServerAndPrivate and ServerAndNoCache.
554         * HttpResponse.cs: Set cache headers.
555         
556 2003-11-11 Ben Maurer  <bmaurer@users.sourceforge.net>
557
558         * HttpModuleCollection.cs (GetKey): Recursion, again!
559
560 2003-11-11 Ben Maurer  <bmaurer@users.sourceforge.net>
561
562         * HttpClientCertificate.cs (ValidUntil): recursion!
563
564 2003-11-08 Ben Maurer  <bmaurer@users.sourceforge.net>
565
566         * SiteMapNode.cs (GetDataSourceView): Implement.
567         * SiteMapProvider.cs: Typo fixing.
568         * XmlSiteMapProvider.cs: We shouldnt resolve here.
569         
570 2003-11-08 Ben Maurer  <bmaurer@users.sourceforge.net>
571
572         * SiteMap.cs (Init): implement a hack that doesnt need the config
573         stuff. Should do that later.
574         * SiteMapNodeCollection (OnValidate): Fix recursion.
575         * SiteMapProvider.cs: We dont implement some culture stuff work
576         around it. Fix typo.
577         * XmlSiteMapProvider.cs: Added.
578         
579 2003-11-07 Ben Maurer  <bmaurer@users.sourceforge.net>
580
581         * ISiteMapProvider.cs:
582         * SiteMap.cs:
583         * SiteMapNode.cs:
584         * SiteMapNodeCollection.cs:
585         * SiteMapProvider.cs:
586         * SiteMapProviderCollection.cs: V2 sitemap related stuff.
587
588 2003-11-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
589
590         * HttpRequest.cs: don't attempt to read more bytes than specified
591         content length.
592
593 2003-11-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
594
595         * HttpRequest.cs:
596         * HttpResponse.cs:
597         * HttpUtility.cs:
598         * HttpValueCollection.cs: encoding fixes/updates.
599
600         * HttpWriter.cs: when updating the encoding, flush the existing stream.
601         Encoding updates.
602
603 2003-11-04 Ben Maurer  <bmaurer@users.sourceforge.net>
604
605         * HttpContext.cs (IsCustomErrorEnabled): dont throw exception, just
606         return false (which makes sense, as the custom errors *arent* enabled;
607         ie they dont work.
608         * HttpResponseStream.cs: you actually can write with len = 0
609
610 2003-11-03 Jackson Harper <jackson@ximian.com>
611
612         * HttpResponse.cs (ContentEncoding): Throw
613         ArgumentNullException. Patch by Yaron Shkop.
614         
615 2003-10-30  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
616
617         * HttpMultipartContentParser.cs : Quick fix for cygwin build. 
618           CSC complains that constant char cannot be casted as byte.
619
620 2003-10-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
621
622         * HttpApplication.cs: added AssemblyLocation property.
623
624 2003-10-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
625
626         * HttpApplicationFactory.cs: use NoParamsInvoker.
627         * HttpRequest.cs: support request filters.
628         * HttpRequestStream.cs: mono-stylized and added new Set method.
629
630         * NoParamsInvoker.cs: proxy class to invoke user-provided methods
631         without parameters that are invoked by EventHandlers.
632
633 2003-10-13  Lluis Sanchez Gual <lluis@ximian.com>
634
635         * HttpResponse.cs: Changed harcoded switch to en-US culture to a switch
636           to invariant culture.
637
638 2003-10-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
639
640         * HttpResponse.cs:
641         * HttpServerUtility.cs: change the response writer in Execute. Thanks
642         to Rich Alimi <rich@velvetsea.net> for noticing this.
643
644 2003-10-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
645
646         * HttpApplicationFactory.cs: support for wiring up events without
647         parameters.
648
649 2003-10-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
650
651         * HttpUtility.cs: small memory usage reduction.
652
653 2003-10-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
654
655         * HttpApplication.cs: pass the Uri, not the file path to
656         when looking for a handler.
657
658 2003-09-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
659
660         * HttpRequest.cs: small fix needed when reading big POST data.
661
662 2003-09-04  Lluis Sanchez Gual <lluis@ximian.com>
663
664         * HttpRequest.cs: Url property: use GetLocalAddress() to get the address
665           (this will get the address from the request headers).
666
667 2003-09-04  Lluis Sanchez Gual <lluis@ximian.com>
668
669         * HttpServerUtility.cs: In Transfer(), preserve the query string if
670           told to do so.
671
672 2003-08-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
673
674         * HttpApplication.cs: ensure we do all the EndRequest steps. Don't
675         filter the output on error.
676         
677         * HttpResponse.cs: modified DoFilter to allow bypassing filtering.
678
679 2003-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
680
681         * HttpApplication.cs: when the request is completed or an
682         error happens, execute all the delegates attached to EndRequest, not
683         only the last one. This makes xsp/test/authtest work again.
684         
685         * HttpMethodNotAllowedHandler.cs: fixed description for http
686         status code.
687
688 2003-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
689
690         * HttpRequest.cs: quick way of checking that the path is within the
691         root for the application. Thanks to Johannes for reporting.
692         
693         * HttpRuntime.cs: use the status code from teh exception when it'ss a
694         HttpException.
695
696         * StaticFileHandler.cs: forbidden is 403.
697
698 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
699
700         * HttpServerUtility.cs: fixed path and query. Path by Rich Alimi
701         <rich@velvetsea.net>.
702
703 2003-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
704
705         * HttpException.cs: make the unhandled error more like the MS one.
706         * HttpRuntime.cs: set a 500 error code on unhandled exceptions.
707
708 2003-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
709
710         * HttpResponse.cs: flush headers when the body length is 0.
711         * StaticFileHandler.cs: added If-Modified-Since handling patch slightly
712         modified from the original by Piers Haken <piersh@friskit.com>.
713
714 2003-08-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
715
716         * HttpResponse.cs: another patch from totte and me. This one prevents
717         writing output if the client have disconnected and filters the data
718         when there's a non-final Flush in the middle of the process.
719
720 2003-08-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
721
722         * HttpApplication.cs: fixed typos. Closes bug #44197.
723
724 2003-08-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
725
726         * HttpApplication.cs:
727         * HttpApplicationFactory.cs: fix duplicate application OnStart events.
728
729         Patch by Patrik Torstensson.
730
731 2003-08-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
732
733         * HttpApplicationFactory.cs: use the correct Delegate.CreateDelegate
734         overload. The previous one only admits static methods.
735
736 2003-08-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
737
738         * ProcessModelInfo.cs: Fixed signature
739
740 2003-07-30  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
741
742         * WebCategoryAttribute.cs: Implemented localization
743         * WebSysDescriptionAttribute.cs: Implemented localization
744
745 2003-07-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
746
747         * HttpRuntime.cs: also clear the headers that may have been set upon
748         error processing the request.
749
750 2003-07-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
751
752         * HttpResponseStreamProxy.cs: reformatted. Fixed infinite recursion in
753         Write method.
754
755         * HttpWriter.cs: flush the filter after writing.
756
757 2003-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
758
759         * HttpWriter.cs: avoid duplicating the MemoryStream byte buffer.
760
761 2003-07-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
762
763         * HttpContext.cs: Session doesn't have a setter.
764
765         * HttpResponse.cs: Request is private.
766
767 2003-07-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
768
769         * HttpRequest.cs: fixed Headers property. It was getting known headers
770         values instead of known headers names.
771
772 2003-07-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
773
774         * HttpApplication.cs: prevent nullref if an error happens before context
775         is set.
776         * HttpException.cs: small fix in the stack trace sent.
777         * HttpUtility.cs: the lock is not needed.
778
779 2003-06-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
780
781         * HttpRequest.cs: added REMOTE_PORT.
782         * HttpValueCollection.cs: fixed bug #45490.
783
784 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
785
786         * HttpApplication.cs:
787         * HttpApplicationFactory.cs: fire application start and session
788         start/end events.
789
790 2003-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
791
792         * HttpException.cs: encode as HTML the inner exception that
793         is appended as a comment at the end of error pages.
794
795 2003-05-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
796
797         * HttpWriter.cs: don't do anything in Flush. Fixes #42249.
798
799 2003-05-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
800
801         * HtmlizedException.cs: added more virtual methods.
802
803         * HttpException.cs:  some work on the output when there's a source
804         file present.
805
806 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
807
808         * HtmlizedException.cs: simplified to cope with the new interface.
809
810         * HttpApplicationFactory.cs: use the application file parser to get the 
811         application Type.
812         
813         * HttpException.cs: small changes. Needs some more work on
814         ParseExceptions.
815         
816 2003-03-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
817
818         * HttpRequest.cs: fixed Url property.
819
820 2003-03-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
821
822         * HtmlizedException.cs:
823         * HttpException.cs: display the correct line number in error messages.
824
825 2003-03-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
826
827         * HttpCachePolicy.cs: implemented all TODOs.
828         * HttpRequestStream.cs: make it internal.
829
830 2003-03-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
831
832         * HttpContext.cs: implemented RewritePath in other way.
833         * HttpRequest.cs: removed SetPhysicalPath and added SetForm.
834         * HttpServerUtility.cs: implemented Transfer (string, bool).
835
836 2003-03-16  Daniel Lopez Ridruejo <daniel @ rawbyte.com>
837         * HttpContext.cs : Implemented RewritePath
838         * HttpRequest.cs : Added internal function SetPhysicalPath
839
840 2003-03-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
841
842         * HttpServerUtility.cs: implemented Transfer ().
843
844 2003-03-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
845
846         * HttpRuntime.cs: Cache no longer have a Dispose method.
847
848         * HttpServerUtility.cs: removed MonoTODO.
849
850 2003-03-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
851
852         * HttpHelper.cs: store the values in an ArrayList to get them in correct
853         order.
854
855 2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
856
857         * HttpApplicationFactory.cs: Global.asax takes precedence over
858         global.asax if it exists.
859
860         * HttpRequest.cs: use allowCrossAppMapping in MapPath.
861
862 2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
863
864         * HttpApplication.cs: CreateHttpHandler is now internal.
865
866         * HttpRequest.cs: allow setting QueryStringRaw, which
867         invalidates the data obtained from the previous value. Added internal
868         SetFilePath method.
869
870         * HttpServerUtility.cs: implemented Execute and GetLastError.
871
872 2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
873
874         * HttpServerUtility.cs: style.
875
876 2003-02-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
877
878         * HttpApplication.cs: only execute the EndRequest step on error
879         condition or request marked as completed. This prevent page events from
880         being called when, for example, the url authorization module forbids
881         the request.
882
883 2003-02-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
884
885         * HttpRequest.cs: implemented the indexer.
886
887 2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
888
889         * HtmlizedException.cs: base class for exceptions that makes it easy to
890         generate error pages.
891
892         * HttpException.cs: improved error displaying.
893
894         * HttpRuntime.cs: removed debugging output.
895
896 2003-02-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
897
898         * HttpApplication.cs: display the error instead of hanging when we get
899         any error before the last step of the request.
900
901 2003-02-04  Tim Haynes <thaynes@openlinksw.com>
902
903         * HttpApplicationFactory.cs: fixed HttpRuntime.Close() to decrement
904         instance counter.
905
906 2003-01-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
907
908         * HttpRequest.cs: added BaseVirtualDir property and use it in MapPath.
909
910 2003-01-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
911
912         * HttpRequest.cs: implemented CurrentExecutionFilePath.
913
914 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
915
916         * HttpApplication.cs: keep _lasterror if no context. Attach
917         application events *after* modules initialization (if not, User is not
918         set when the user handler is called).
919         
920         * HttpApplicationFactory.cs: made all methods related to
921         AttachEvents static. I will fix OnStart/OnEnd for application and
922         session later.
923         
924         * HttpRequest.cs: don't initialize cookies twice.
925
926 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
927
928         * HttpResponse.cs:
929         (ApplyAppPathModifiers): return the root directory for "".
930
931 2003-01-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
932
933         * HttpUtility.cs: fixed HtmlDecode to avoid ArgumentOutOfRangeException.
934
935 2003-01-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
936
937         * HttpApplication.cs: added new state to handle default authentication.
938
939 2003-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
940
941         * HttpContext.cs: removed hack to get the User.
942
943 2003-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
944
945         * HttpUtility.cs: fixed bug #36038. Thanks to juancri@tagnet.org for
946         reporting the bug and how to fix it.
947
948 2002-12-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
949
950         * HttpCookie.cs: send 'expires' in the header.
951
952 2002-12-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
953
954         * HttpValueCollection.cs: patch from Botjan Vizin 
955         <bostjan.vizin@siol.net> that implements ToString (bool).
956
957 2002-12-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
958
959         * HttpApplicationFactory.cs: add the context as parameter when building
960         the application Type.
961         
962         * HttpCookie.cs: new internal constructor.
963         * HttpCookieCollection.cs: new internal method to make a cookie expire.
964
965         * HttpRequest.cs: MapPath fixes.
966         * HttpResponse.cs: implemented ApplyAppPathModifier.
967         * HttpRuntime.cs: fixed typo in AppDomainAppVirtualPath.
968
969 2002-12-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
970
971         * HttpContext.cs: hack to create a default user when there's no one.
972         Implemented GetConfig (string).
973
974         * HttpRequest.cs: fixes to MapPath (string).
975
976 2002-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
977
978         * HttpRuntime.cs: avoid nulls and exception when getting resource
979         format strings.
980
981         * StaticFileHandler.cs: added file name to error message.
982
983 2002-12-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
984
985         * HttpResponse.cs: avoid sending chunked content for HTTP/1.1.
986
987 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
988
989         * HttpApplicationFactory.cs: get the events from the application class,
990         fire Application/Session Start/End and add the others as application
991         events.
992
993 2002-11-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
994
995         * HttpApplicationFactory.cs: compile global.asax file if it exists.
996
997 2002-11-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
998
999         * HttpRequest.cs: provide a default Browser until we detect it.
1000         * HttpResponse.cs:
1001         (End): do not close the connection here.
1002         (Flush (bool)): send the headers when, for example, Redirect () is
1003         called.
1004
1005 2002-11-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1006
1007         * HttpException.cs: simple error output.
1008
1009 2002-11-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1010
1011         * HttpApplication.cs: style.
1012         * HttpException.cs: style.
1013         * HttpRuntime.cs: only flush the response if there are no errors.
1014         Otherwise, write an error output.
1015         * HttpWriter.cs: change Unicode to UTF8.
1016
1017 2002-11-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1018
1019         * HttpApplication.cs: don't begin the request using ExecuteNextAsync
1020         (it fails to work on NetServ).
1021
1022         * HttpWorkerRequest.cs: typo.
1023
1024 2002-11-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1025
1026         * HttpValueCollection.cs: the value may contain trailing '=' as it is
1027         UrlEncoded. Don't split name=value based on '='.
1028
1029 2002-11-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1030
1031         * HttpCookie.cs: made GetCookieHeader internal.
1032
1033         * HttpRequest.cs: get cookies from request.
1034
1035         * HttpResponse.cs: send cookies. Implemented
1036         AddFileDependencies (). Added check for _Writer == null in Flush
1037         (Patrik ;-). Clear the content if HEAD or SupressContent == true.
1038         Removed redirect hack used in old server.
1039
1040 2002-10-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1041
1042         * HttpRequest.cs: fixed GetRawContent (). Now it only tries to read at
1043         most ContentLength bytes.
1044
1045         * HttpResponse.cs: now it sends the headers. Added
1046         X-Powered-By header :-).
1047
1048         * HttpRuntime.cs: fixed typo.
1049
1050         * HttpValueCollection.cs: cosmetic changes.
1051
1052 2002-10-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1053
1054         * HttpApplication.cs: reenabled a few lines of code
1055         (ThreadPool already fixed). 
1056         
1057         * HttpRequest.cs:
1058         * HttpResponse.cs:
1059         * HttpUtility.cs:
1060         * HttpValueCollection.cs:
1061         * HttpWriter.cs: Use WebEncoding.Encoding.
1062
1063 2002-10-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1064
1065         * HttpWriter.cs: changed encoding of the writer from Unicode to UTF8.
1066         This fixes sending bytes and allows mixing byte with chars.
1067
1068 2002-10-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1069
1070         * HttpResponse.cs: implemented WriteFile methods.
1071         * MimeTypes.cs: removed duplicated entries.
1072
1073 2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1074
1075         * HttpResponse.cs: don't throw exception in a couple of
1076         methods not yet implemented.
1077
1078 2002-10-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1079
1080         * HttpApplication.cs: fixed type and handle factories when creating
1081         IHttpHandler for a request.
1082
1083 2002-10-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1084
1085         * HttpApplication.cs: use handlers from configuration.
1086         * HttpContext.cs: get handlers from ConfigurationSettings.
1087
1088 2002-10-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1089
1090         * HttpMethodNotAllowedHandler.cs:
1091         * HttpRuntime.cs:
1092         * StaticFileHandler.cs: Modified file.
1093
1094         * HttpUtility.cs: implemented all missing methods.
1095
1096
1097 2002-09-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1098
1099         * System.Web/HttpApplication.cs: use the static file handler.
1100         * System.Web/HttpForbiddenHandler.cs: handler to forbid access.
1101         * System.Web/HttpMethodNotAllowedHandler.cs: handler for method not
1102         allowed.
1103         
1104         * System.Web/HttpUtility.cs: finished all UrlDecode methods.
1105         * System.Web/MimeTypes.cs: map from file extension to MIME type.
1106         * System.Web/StaticFileHandler.cs: serves static files
1107
1108 2002-09-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1109
1110         * System.Web/HttpApplication.cs:
1111         * System.Web/HttpApplicationFactory.cs:
1112         * System.Web/HttpRequest.cs:
1113         * System.Web/HttpRuntime.cs: we are now able to compile pages and use
1114         HttpApplication, HttpRuntime and SimpleWorkerRequest.
1115
1116 2002-09-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1117
1118         * HttpApplication.cs: added some missing methods.
1119         * HttpApplicationFactory.cs: get event handlers for the application.
1120         * HttpAsyncResult.cs: little fixes.
1121         * HttpRequest.cs: make Encoding work even with no worker request.
1122
1123 2002-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1124
1125         * HttpWorkerRequest.cs: mcs doesn't go crazy. It's just me, that forgot
1126         to add HttpMapPath to the list file...
1127
1128 2002-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1129
1130         * HttpWorkerRequest.cs: fixes compilation with mcs. I will add a bug
1131         report when i get a test case.
1132
1133 2002-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1134
1135         * HttpApplicationFactory.cs:
1136         * HttpCachePolicy.cs:
1137         * HttpResponseHeader.cs:
1138         * HttpResponseStream.cs:
1139         * HttpResponseStreamProxy.cs:
1140         * HttpValueCollection.cs: misc. fixes based on class status page.
1141
1142         * IHttpMapPath.cs: New file.
1143
1144         * HttpRequest.cs: implemented ContentEncoding.
1145         * HttpWorkerRequest.cs: mono-stylized and implemented
1146         SendResponseFromMemory.
1147
1148 2002-08-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1149
1150         * HttpContext.cs: reformatted.
1151         * HttpStaticObjectsCollection.cs: implemented GetEnumertor, CopyTo and
1152         the indexer.
1153
1154 2002-08-05  Patrik Torstensson <ptorsten@hotmail.com>
1155
1156         * HttpApplication.cs: Implemented a state machine to allow handling of
1157         HttpModules and HttpHandlers. Implementation of async handlers. 
1158                                                                  
1159         * HttpApplicationFactory.cs: Factory for creating HttpApplication
1160         instances, including caching.
1161         
1162         * HttpRuntime.cs: Usage of the new HttpApplicationFactory to get a
1163         application instance to execute requests in and implementation of 
1164         request execution (still no request queue). 
1165                                                          
1166         * HttpAsyncResult.cs: New file to handle async module results.                                          
1167                                                          
1168         * HttpRequest.cs: Change signature of Dispose
1169         * HttpResponse.cs: new internal method allowing filtering to happen
1170         during the request flow in the state machine.
1171
1172 2002-07-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1173
1174         * HttpApplication.cs: events were not being initialized.
1175
1176 2002-07-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1177
1178         * ProcessModelInfo.cs: fixed compilation.
1179
1180 2002-07-25  Tim Coleman <tim@timcoleman.com>
1181         * ProcessModelInfo.cs:
1182                 New class added
1183         * HttpParseException.cs:
1184         * HttpCompileException.cs:
1185         * HttpUnhandledException.cs:
1186                 Internal constructors added to these
1187
1188 2002-07-24  Tim Coleman <tim@timcoleman.com>
1189         * ProcessInfo.cs: 
1190                 Fix constructor, reference to shutdownreason.
1191
1192 2002-07-24  Tim Coleman <tim@timcoleman.com>
1193         * HttpCachePolicy.cs:
1194                 Added stubbs to this class.
1195         * HttpCacheability.cs:
1196         * HttpCacheRevalidation.cs:
1197         * HttpValidationStatus.cs:
1198         * ProcessShutdownReason.cs:
1199         * ProcessStatus.cs:
1200         * TraceMode.cs:
1201                 Reorder the enumerations (and in some cases make
1202                 one-based) in order to agree with the .NET 
1203                 implementation, based on the class status page.
1204         * ProcessInfo.cs:
1205                 Implementation of this class.
1206
1207 2002-07-23  Tim Coleman <tim@timcoleman.com>
1208         * HttpCompileException.cs:
1209         * HttpParseException.cs:
1210         * HttpUnhandledException.cs:
1211                 New stubbs created.
1212         * HttpApplication.cs:
1213         * HttpBrowserCapabilities.cs:
1214                 Added missing methods stubbs and attributes based
1215                 on the class status page.  Also reformatted some
1216                 source for consistency.
1217
1218 2002-07-23  Tim Coleman <tim@timcoleman.com>
1219         * HttpUtility.cs: Moved entities hashtable into main
1220                 class as a static object, so we don't instantiate
1221                 a new one every time.  Also put the hashtable
1222                 building into a lock block.
1223
1224 2002-07-22  Tim Coleman <tim@timcoleman.com>
1225         * HttpUtility.cs: Cleanup of the code, implementation
1226                 of HtmlDecode/HtmlEncode functions
1227
1228 2002-07-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1229
1230         * HttpResponse.cs: quick&dirty hack to make redirection work. Should
1231         be out of there once we have SimpleWorkerRequest.
1232
1233 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1234
1235         * HttpUtility.cs: little typo, big headache.
1236
1237 2002-07-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1238
1239         * HttpRuntime.cs: don't throw NotImplemented in a couple of methods.
1240
1241 2002-06-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1242
1243         * System.Web/HttpResponse.cs: 
1244
1245         Fixes based on class status page:
1246         
1247                 - Add attributes (DefaultEvent, ParseChildren).
1248                 - Fix declarations.
1249                 - Explicitly implement some interfaces (IPostBackDataHandler
1250                 and IPostBackEventHandler).
1251                 - Implemented some missing methods.
1252
1253 2002-06-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1254
1255         * HttpContext.cs:
1256         (Session): return null instead of throwing an exception.
1257
1258         * HttpRequest.cs:
1259         (HttpMethod): return RequestType if not set.
1260         (GetRawContent): return QueryString if we don't have a
1261         HttpWorkerRequest.
1262
1263         * HttpUtility.cs: fixed Decode and Encode.
1264
1265 2002-06-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1266
1267         * HttpApplication.cs:
1268         * HttpContext.cs: added System.Web.SessionState namespace.
1269
1270         * HttpSessionState.cs: removed. It is under
1271         System.Web.SessionState.
1272
1273 2002-06-10  Duncan Mak  <duncan@ximian.com>
1274
1275         * HttpBrowserCapabilities.cs (BackgroundSounds): Fixed typo.
1276
1277 2002-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1278
1279         * HttpRequest.cs: implemented Browser property.
1280
1281 2002-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1282
1283         * HttpBrowserCapabilities.cs: stubbed out.
1284
1285 2002-05-18  Miguel de Icaza  <miguel@ximian.com>
1286
1287         * HttpRuntime.cs: Reformat file.
1288
1289 2002-05-07  Duncan Mak  <duncan@ximian.com>
1290
1291         * HttpBrowserCapabilities.cs: Added, replacing
1292         HttpBrowserCapabilites because of typo.
1293
1294         * HttpBrowserCapabilites.cs: Removed, replaced by above.
1295
1296         * HttpRequest.cs (Browser): Fixed typo.
1297
1298 2002-04-12  Patrik Torstensson <patrik.torstensson@labs2.com>
1299
1300         * HttpApplication.cs: Minor updates
1301         * HttpApplicationState.cs: Ready.
1302         * HttpClientCertificate.cs: Signature updates
1303         * HttpValueCollection.cs: ready
1304         * HttpStaticObjectsCollection.cs: ready
1305         * HttpResponseHeader.cs: made internal only
1306         * HttpResponse.cs: Signature updates
1307         * HttpPostedFile.cs: ready
1308         * HttpCacheVaryByHeaders.cs: ready (except communication to policy)
1309         * HttpCacheVaryByParams.cs: ready (except communication to policy)
1310         
1311         System.Web is now over 60% ready.. 
1312
1313 2002-04-11  Patrik Torstensson <patrik.torstensson@labs2.com>
1314
1315         * HttpException.cs: 95% ready, only windows dependent code left
1316         * HttpFileCollection.cs: Finished.
1317         * HttpRequest.cs: Minor fixes and fixed signature problems
1318         * HttpResponse.cs: Implementation of missing methods and signature problems
1319         * HttpResponseHeader.cs: Fixed signature problems
1320         * HttpRuntime.cs: Fixed signature problems
1321         * HttpServerUtility.cs: Added support for HttpApplication
1322         * HttpSessionState.cs: Fixed signature issues
1323         * HttpUtility.cs: fixed signature issues
1324         * HttpValueCollection.cs: Support for cookie parsing and fixed signature issues
1325         * HttpWorkerRequest.cs: Fixed small signature issue
1326         * HttpWriter.cs: Fixed signature issue
1327         * HttpApplication.cs: Basic implementation
1328         * HttpApplicationState.cs: Small fixes to support major change comming up
1329         * HttpBrowserCapabilities.cs: Added Type method
1330         * HttpClientCertificate.cs: Almost ready, needs to parse certificate.
1331         * HttpContext.cs: Fixed signature issues and added last methods.
1332         * HttpCookie.cs: Full implementation
1333         * HttpCookieCollection.cs: Full implementation
1334         * TraceContext.cs: Methods implemented.
1335         * HttpPostedFile.cs: Placeholder
1336         * HttpStaticObjectsCollection.cs: Placeholder
1337         * HttpModuleCollection.cs: Ready, will be used during the major revamp.
1338         
1339         * Fixed a number of other small signature problems also (class status page)
1340         
1341         
1342 2002-04-10  Patrik Torstensson <patrik.torstensson@labs2.com>
1343
1344     * HttpWorkerRequest.EndOfSendNotification.cs Removed (included in WorkerRequest)
1345     * Checkin of all new files (noted in last changenote)
1346
1347 2002-04-10  Patrik Torstensson <patrik.torstensson@labs2.com>
1348
1349     * HttpContext.cs: First implementation (basic support, few methods left to impl)
1350     * HttpException.cs: Partial implementation (basic support)
1351     * HttpHelper.cs: Header parse helper, used by runtime (non public)
1352     * HttpRequest.cs: Implementation (all methods there, not all fully impl)
1353     * HttpRequestStream.cs: Full implementation
1354     * HttpResponse.cs: Partial implementation(almost all methods)
1355     * HttpResponseHeader.cs: Header helper
1356     * HttpResponseStream.cs: Full implementation - Response stream support
1357     * HttpResponseStreamProxy.cs: Implementation - filter support
1358     * HttpRuntime.cs: Rewrite to support one IHttpModule (use for testing the runtime)
1359         * HttpServerUtility.cs: Implemented usage of HttpContext for methods
1360                                 and moved encoding functions to HttpUtility.
1361
1362     * HttpUtility.cs: Added encoding/decoding functions from HttpServerUtility and
1363                       added the Attribute encoding functions.
1364
1365     * HttpValueCollection.cs: Implementation.
1366     * HttpWorkerRequest.cs: Rewrite and implementation of all methods (ready)
1367     * HttpWriter.cs: Implementation (with filter support)    
1368
1369     * HttpFileCollection: Added dummy class (placeholder)
1370     * HttpApplication.cs: Added dummy class (placeholder)
1371     * HttpApplicationState.cs: Added dummy class (placeholder)
1372     * HttpBrowserCapabilities.cs: Added dummy class (placeholder)
1373     * HtttpCachePolicy.cs: Added dummy class (placeholder)
1374     * HttpClientCertificate.cs: Added dummy class (placeholder)
1375     * HttpSessionState.cs: Added dummy class (placeholder)
1376     * TraceContext.cs: Added dummy class (placeholder)
1377     
1378
1379 2002/04/10  Nick Drochak <ndrochak@gol.com>
1380
1381         * HttpServerUtility.cs: Fix build breaker.
1382
1383 2002-03-28  Wictor Wilén  <wictor@iBizkit.se>
1384
1385         * HttpServerUtils.cs : Added some more functionality
1386         
1387 2002-03-28  Martin Baulig  <martin@gnome.org>
1388
1389         * HttpServerUtils.cs (UrlDecode): You cannot implicitly cast a
1390         char to a string, use ToString() instead.
1391
1392 2002-03-16  Gaurav Vaish  <gavish@iitk.ac.in>
1393
1394         * WebCategoryAttribute.cs
1395                                : Added private attribute.
1396
1397 2002-03-16  Gaurav Vaish  <gavish@iitk.ac.in>
1398
1399         * HttpRuntime.cs       : Stubbed methods for
1400                   FormatStringResource(...) in agreement with the various
1401                   overloads available at String.Format(...)
1402
1403 2002-01-08  Gaurav Vaish  <gavish@iitk.ac.in>
1404
1405         * TODOAttribute.cs     : Added, as an internal class to the assembly
1406
1407 2002-01-03  Nick Drochak  <ndrochak@gol.com>
1408
1409         * HttpRuntime.cs: remove uneeded exception variable from catch and
1410         initialize remaining instance members to avoid compile warnings
1411
1412 2002-01-02  Nick Drochak  <ndrochak@gol.com>
1413
1414         * HttpRuntime.cs: fix spelling error/variable name change.
1415
1416 2001-12-18  Gaurav Vaish <gvaish@iitk.ac.in>
1417
1418         * HttpRuntime.cs       : Initial implementation
1419
1420 2001-08-29  Bob Smith  <bob@thestuff.net>
1421
1422         * HttpWorkerRequest.cs: Partial Implementation.
1423
1424 2001-08-16  Bob Smith  <bob@thestuff.net>
1425
1426          * HttpCookieCollection.cs, HttpCookie.cs: Bug fixes.
1427
1428 2001-08-09  Bob Smith  <bob@thestuff.net>
1429
1430          * BeginEventHandler.cs: Implemented.
1431          * EndEventHandler.cs: Implemented.
1432          * HttpCacheability.cs: Implemented.
1433          * HttpCacheRevalidation.cs: Implemented.
1434          * HttpCacheValidateHandler.cs: Implemented.
1435          * HttpCookieCollection.cs: Implemented.
1436          * HttpCookie.cs: Implemented.
1437          * HttpValidationStatus.cs: Implemented.
1438          * HttpWorkerRequest.EndOfSendNotification.cs: Implemented.
1439          * IHttpAsyncHandler.cs: Implemented.
1440          * IHttpHandler.cs: Implemented.
1441          * IHttpHandlerFactory.cs: Implemented.
1442          * IHttpModule.cs: Implemented.
1443          * ProcessShutdownReason.cs: Implemented.
1444          * ProcessStatus.cs: Implemented.
1445          * TraceMode.cs: Implemented.