1 2007-05-17 Igor Zelmanovich <igorz@mainsoft.com>
3 * WebConfigurationHost.cs: for TARGET_J2EE only:
4 prevent NullRefference Exception.
6 2007-05-15 Igor Zelmanovich <igorz@mainsoft.com>
8 * WebConfigurationManager.cs:
9 make configurations hashtable case-insensitive.
10 * WebConfigurationHost.cs: for TARGET_J2EE only:
11 GetStreamName returns file path in right case, that make it works
12 on case-sensitive file system.
14 2007-05-15 Marek Habersack <mhabersack@novell.com>
16 * BuildProviderCollection.cs: refactoring - use
17 HttpApplication.LoadType to actually look up the type.
19 * HttpHandlerAction.cs: as above
21 * WebConfigurationHost.cs: refactoring - moved the LoadType to
22 HttpApplication to share the code between 1.1 and 2.0 profiles.
24 2007-05-14 Marek Habersack <mhabersack@novell.com>
26 * UrlMappingCollection.cs: implemented the Item (string) indexer.
28 * UrlMapping.cs: implemented the URL validation callback body
29 (doesn't work at the moment).
31 2007-05-14 Igor Zelmanovich <igorz@mainsoft.com>
33 * WebConfigurationManager.cs:
34 make configurations synchronized.
35 added new internal method RemoveConfigurationFromCache.
37 2007-05-07 Marek Habersack <mhabersack@novell.com>
39 * PagesSection.cs: buffering is on by default.
41 2007-04-24 Marek Habersack <mhabersack@novell.com>
43 * WebConfigurationHost.cs: wrap MapPath calls in try/catch,
44 because bad URLs can cause it to throw exceptions. If such
45 exception is caught, throw a HttpException for Bad Request (400).
46 Look for types in the top-level assemblies (App_Code and
49 * WebConfigurationManager.cs: added two internal methods for safe
50 retrieval of config sections.
52 2007-04-19 Marek Habersack <mhabersack@novell.com>
54 * HttpHandlerAction.cs: look up types in all the toplevel
55 assemblies. Fixes bug #80897.
57 2007-04-17 Atsushi Enomoto <atsushi@ximian.com>
59 * ProcessModelSection.cs : cpuMask default value should be int,
62 2007-04-06 Marek Habersack <mhabersack@novell.com>
64 * CustomErrorsSection.cs: make the customErrors section work.
66 * PagesSection.cs: provide appropriate default value for the
69 2007-03-24 Marek Habersack <mhabersack@novell.com>
71 * WebConfigurationHost.cs: allow MachineToApplication definition
72 for config paths that equal the domain virtual app directory.
74 2007-03-22 Adar Wesley <adarw@mainsoft.com>
76 * HttpCapabilitiesBase.cs: implemented all capabilities. Capabilities
77 still throw if there is no value in browscaps.ini and the property is called.
79 2007-03-21 Vladimir Krasnov <vladimirk@mainsoft.com>
81 * WebConfigurationManager.cs: fixed OpenWebConfiguration, should not
82 lock when checking if configuration is already open
84 2007-03-15 Vladimir Krasnov <vladimirk@mainsoft.com>
86 * WebConfigurationManager.cs: fixed OpenWebConfiguration, removed
87 GetBasePath call and locations search, since this not affects
88 configuration initialization, but improves performance
90 2007-03-12 Marek Habersack <mhabersack@novell.com>
92 * ProvidersHelper.cs: support loading custom providers from
93 App_Code assemblies. Fixes bug #81071.
94 Also set eol-style to native.
96 2007-03-08 Gert Driesen <drieseng@users.souceforge.net>
98 * PagesSection.cs: Revert part of Adar's patch that regresses
101 2007-03-06 Adar Wesley <adarw@mainsoft.com>
103 * PagesSection.cs: improve Enum parsing and strongly typed default values.
105 2007-02-20 Marek Habersack <grendello@gmail.com>
107 * Patch from Gert Driesen <drieseng@users.sourceforge.net>
108 * PagesSection.cs: Process value of EnableSessionState attribute
109 case-sensitive, and perform check in getter. Fix for bug #80913.
110 * PageParser.cs: Added note on difference in behaviour between page
111 level attribute and configuration attribute for enableSessionState.
112 * PagesConfiguration.cs: Fixed compiler warning.
114 2007-02-22 Marek Habersack <grendello@gmail.com>
116 * CompilerCollection.cs: Optimize language lookup a bit.
118 2007-02-05 Konstantin Triger <kostat@mainsoft.com>
120 * TagPrefixCollection.cs: Fix element key creation.
122 2007-02-04 Konstantin Triger <kostat@mainsoft.com>
124 * NamespaceInfo.cs, HttpModuleAction.cs, RoleManagerSection.cs:
125 fix the default value.
127 2007-02-02 Marek Habersack <grendello@gmail.com>
129 * TagPrefixCollection.cs: Add the CollectionType parameter.
130 Get rid of unnecessary interface references in the class declaration.
131 GetElementKey should return Source which should be unique, unlike TagPrefix.
133 2007-01-04 Konstantin Triger <kostat@mainsoft.com>
135 * ProfileSection.cs: Ensure enabled = true by default; cleanup.
137 2006-12-27 Vladimir Krasnov <vladimirk@mainsoft.com>
139 * CustomErrorCollection.cs: fixed ThrowOnDuplicate to false as in .net
141 2006-12-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
143 * GlobalizationSection.cs: make encodings actually work for the 2.0
146 2006-12-21 Marek Habersack <grendello@gmail.com>
148 * TagMapInfo.cs: Add an internal default constructor for use from
151 * TagMapCollection.cs: Don't call the string,string constructor of
152 TagMapInfo - the class disallows empty strings as values of its
155 2006-12-21 Vladimir Krasnov <vladimirk@mainsoft.com>
157 * RoleManagerSection.cs: refactored using attributes
159 2006-12-20 Marek Habersack <grendello@gmail.com>
161 * ProfilePropertyNameValidator.cs: added a few checks.
163 2006-12-18 Vladimir Krasnov <vladimirk@mainsoft.com>
165 * WebConfigurationManager.cs: fixed GetSection to execute
166 GetRuntimeObject, refactored GetSection and GetWebApplicationSection
168 2006-12-17 Vladimir Krasnov <vladimirk@mainsoft.com>
170 * HttpHandlerAction.cs: fixed 'verb' config property
172 2006-12-07 Igor Zelmanovich <igorz@mainsoft.com>
174 * ProvidersHelper.cs: fixed: load assembles from /bin
176 2006-11-22 Miguel de Icaza <miguel@novell.com>
178 * SessionStateSection.cs: Do not call Enum.Parse with a null
179 argument, prevents an exception from being thrown.
181 2006-11-20 Marek Habersack <grendello@gmail.com>
183 * GlobalizationSection.cs: Added support for "auto" cultures and
184 the "auto:DEFAULT_CULTURE" cultures.
186 2006-11-13 Konstantin Triger <kostat@mainsoft.com>
188 * WebConfigurationHost.cs: use Type.GetType for loading full qualified types.
190 2006-11-05 Vladimir Krasnov <vladimirk@mainsoft.com>
192 * ProfileGroupSettings.cs, ProfileGroupSettingsCollection.cs
193 ProfilePropertySettingsCollection.cs, ProfileSection.cs
194 RootProfilePropertySettingsCollection.cs: refactoring and fix of
197 2006-10-18 Marek Habersack <grendello@gmail.com>
199 * WebConfigurationManager.cs: implement support for extra
200 assemblies to be referenced when compiling a page.
202 2006-09-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
204 * WebConfigurationManager.cs: add null checks. Patch by Marek Habersack
205 that fixes bug #79283.
207 2006-09-06 Konstantin Triger <kostat@mainsoft.com>
209 * WebConfigurationHost.cs: do not recourse as this will be done by
210 Configuration object.
212 2006-08-08 Vladimir Krasnov <vladimirk@mainsoft.com>
214 * WebConfigurationManager.cs: added configSystem property under
216 * WebConfigurationHost.cs: fixed GetStreamName and OpenStreamForRead
218 * CompilationSection.cs: BuildProviders property removed from
220 * SystemWebSectionGroup.cs: Compilation property removed from
223 2006-06-26 Atsushi Enomoto <atsushi@ximian.com>
225 * NullableStringValidator.cs : new internal class that is almost
226 identical to StringValidator but allows null value.
227 * PropertyHelper.cs : use new NullableStringValidator.
228 * NamespaceCollection.cs : in NamespaceInfo "" is not allowed.
230 2006-06-08 Chris Toshok <toshok@ximian.com>
232 * WebConfigurationHost.cs (InitForConfiguration): i know this is
233 going to bite me in the ass, but guard against configPath being ==
234 to "/", since this will result in an infinite loop.
235 (MapPath): fix a NRE.
237 2006-05-18 Atsushi Enomoto <atsushi@ximian.com>
239 * WebConfigurationManager.cs: recent sys.config.dll changes on
240 ConfigurationManager.GetSection() which should call
241 GetRuntimeObject() should also apply here. Fixed monodoc web.
243 2006-05-10 Andrew Skiba <andrews@mainsoft.com>
245 * HttpHandlerAction.cs: keep the internal exception
247 2006-05-08 Chris Toshok <toshok@ximian.com>
249 * WebConfigurationManager.cs (GetBasePath): fix bug where
250 path.Length was 0 when we got to the last while loop (and indexed
251 -1 into an array.) Thanks Marek for the fix.
253 2006-05-04 Chris Toshok <toshok@ximian.com>
257 * WebConfigurationHost.cs (GetConfigType): add a MonoTODO about
258 how we should use the build provider machinery to get types.
259 (MapPath): add rudimentary mapping in the case where we don't have
260 a request, basically handle the case where the url begins with (or
261 is) HttpRuntime.AppDomainAppVirtualPath.
263 * WebConfigurationManager.cs (GetSection): if we don't have a
264 valid request, open the web configuration corresponding to
265 HttpRuntime.AppDomainAppVirtualPath.
266 (GetBasePath): comment this a little, and make it work in the case
267 where we don't have an HttpRequest.
269 2006-04-27 Chris Toshok <toshok@ximian.com>
271 * AuthorizationRuleCollection.cs (ThrowOnDuplicate): for the time
272 being introduce a overridden property MS doesn't make use of.
273 This needs readdressing, but it should get people making use of
274 <authorization> rules working again.
276 2006-04-25 Chris Toshok <toshok@ximian.com>
278 * AuthorizationRule.cs (Reset): finally figure out what this
279 method is supposed to do. Assign our Action property based on
282 2006-04-25 Chris Toshok <toshok@ximian.com>
284 * WebConfigurationHost.cs (InitForConfiguration): actually, use
285 HttpRuntime.AppDomainAppVirtualPath on gonzalo's recommendation.
286 It's never null, and its use cleans things up a bit.
288 2006-04-25 Chris Toshok <toshok@ximian.com>
290 * WebConfigurationHost.cs (InitForConfiguration): stop going up
291 the virtual hierarchy once we reach the application's base virtual
294 2006-04-24 Chris Toshok <toshok@ximian.com>
296 * AuthorizationSection.cs (IsValidUser): fix a problem that
297 surfaced when converting from the 1.1 to 2.0 config classes. Only
298 check for verb match if there are actually verbs to match against.
300 2006-04-11 Chris Toshok <toshok@ximian.com>
302 * ExpressionBuilderCollection.cs (CreateNewElement): call argless
305 * ExpressionBuilder.cs: add internal argumentless ctor for use by
308 2006-03-24 Chris Toshok <toshok@ximian.com>
310 * WebConfigurationManager.cs (GetConfig): add a fallback case for
311 configuration sections that don't subclass from
312 ConfigurationSection.
314 2006-03-24 Chris Toshok <toshok@ximian.com>
316 * WebConfigurationHost.cs: fix bug where OpenWebConfiguration
317 ("/") would result in 2 configurations for that toplevel path to
320 2006-03-08 Chris Toshok <toshok@ximian.com>
322 * ProvidersHelper.cs: implement this static class properly.
324 * SiteMapSection.cs (ProvidersInternal): add internal property to
325 get the actual SiteMapProviderCollection from here.
327 2006-02-28 Chris Toshok <toshok@ximian.com>
329 * BuildProviderAppliesTo.cs, PagesToCountAction.cs: nuke.
331 2006-02-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
334 * CompilerCollection.cs: removed compatibility code.
336 * BuildProviderCollection.cs: add GetProviderForExtension().
338 2006-02-02 Chris Toshok <toshok@ximian.com>
340 * WebConfigurationManager.cs (GetSection(string,string)):
343 2006-02-01 Atsushi Enomoto <atsushi@ximian.com>
345 * TrustLevelCollection.cs, CodeSubDirectoriesCollection.cs,
346 CustomErrorCollection.cs, CompilerCollection.cs,
347 HttpHandlerActionCollection.cs,
348 FormsAuthenticationUserCollection.cs,
349 AuthorizationRuleCollection.cs, TagPrefixCollection.cs :
350 CollectionType is public.
352 2006-02-01 Chris Toshok <toshok@ximian.com>
354 * WebConfigurationManager.cs: In the normal case, get the current
355 request's web.config, not the application's. If there is no
356 current request, get the application's.
357 (GetWebApplicationConfiguration): use Request.ApplicationPath, not
358 Request.PhysicalApplicationPath. OpenWebConfiguration takes
361 * HttpConfigurationSystem.cs: GetWebApplicationSection =>
364 2006-02-01 Chris Toshok <toshok@ximian.com>
366 * CompilerCollection.cs: CONFIGURATION_2_0 => NET_2_0
370 2006-02-01 Chris Toshok <toshok@ximian.com>
372 * HttpConfigurationSystem.cs: SupportsUserConfig == true. let's
373 use this to determine if ConfigurationManager.AppSettings should
376 2006-01-31 Chris Toshok <toshok@ximian.com>
378 * WebConfigurationManager.cs: err, why did i ifdef stuff NET_2_0
379 inside of an ifdef NET_2_0?
381 2006-01-30 Chris Toshok <toshok@ximian.com>
383 * WebConfigurationManager.cs: lots of little changes. hopefully
384 this doesn't break anyone. it fixes all the nunit problems
387 * WebConfigurationHost.cs (GetStreamName): in the MachineWebPath
388 case, handle the case where we have a WebConfigurationFileMap.
389 (MapPath): this is likely wrong, but in the case where we don't
390 have a file map or current HttpContext, just return the path.
392 2006-01-29 Chris Toshok <toshok@ximian.com>
394 * HttpModulesSection.cs (LoadModules): I'm not sure we want to
395 solve this problem in this way, but the 1.x code forces
396 DefaultAuthenticationModule to be in the list of modules..
397 Without this fix (or something else) HttpContext.User is null when
400 2006-01-26 Chris Toshok <toshok@ximian.com>
402 * HttpConfigurationSystem.cs: new class that gets sections from
405 * WebConfigurationManager.cs: change a lot of the
406 NotImplementedExceptions to NotSupportedExceptions.
407 (AppSettings): implement by just returning
408 ConfigurationManager.AppSettings (note this is broken because
409 ConfigurationManager.AppSettings are read-only, but it works for
411 (ConnectionStrings): same (and probably broken in the same way..)
412 (Init): replace the 2.0 IInternalConfigSystem with our
413 HttpConfigurationSystem.
415 * WebConfigurationHost.cs: add a comment about how things are
416 likely to work in the face of IRemoteWebConfigurationHostServer.
417 (CreateConfigurationContext): return a WebContext instance.
419 2006-01-25 Chris Toshok <toshok@ximian.com>
421 * AuthorizationSection.cs (IsValidUser): instead of a blanket
422 false for a null user, just set the username to "" and short
423 circuit out the check for roles.
425 2006-01-25 Chris Toshok <toshok@ximian.com>
427 * AuthorizationRule.cs (CheckUser): handle * and ?, and use
428 String.Compare instead of ==.
429 (CheckVerb): use String.Compare instead of ==.
431 * AuthorizationSection.cs (IsValidUser): return false for a null
434 2006-01-22 Chris Toshok <toshok@ximian.com>
436 * GlobalizationSection.cs (VerifyData): quiet mcs.
438 2006-01-18 Chris Toshok <toshok@ximian.com>
440 * SystemWebSectionGroup.cs: wrap System.Web.Services references in
443 2006-01-16 Chris Toshok <toshok@ximian.com>
445 * WebConfigurationManager.cs: implement a IConfigurationSystem for
446 use with WebConfigurationManager.
447 (GetSection): try to load the section
448 using GetWebApplicationSection before calling into
449 ConfigurationManager.GetSection.
450 (GetWebApplicationConfiguration): move common code to here.
451 (GetWebApplicationSection): use GetWebApplicationConfiguration.
452 (AppSettings): implement.
454 * WebConfigurationHost.cs (GetWebConfigFileName): add
455 "Web.Config", and move to an array/loop implementation. maybe we
456 should scan the directory and check ToLower() instead of
457 explicitly enumerating?
459 2006-01-10 Chris Toshok <toshok@ximian.com>
461 * SystemWebSectionGroup.cs (HostingEnvironment): enable this property.
462 (ProcessModel): add the ConfigurationPropertyAttribute.
464 2006-01-10 Chris Toshok <toshok@ximian.com>
466 * PagesSection.cs (.cctor): fix the default value for the
467 enableSessionState attribute - it's not a bool, but a
468 PagesEnableSessionState enum.
470 2006-01-10 Chris Toshok <toshok@ximian.com>
472 * MachineKeySection.cs (ValidationKeyBytes, DecryptionKeyBytes,
473 DecryptionKey192Bits): if the keys are null, generate them. Fixes
474 Page.EnableViewStateMac support.
476 2006-01-09 Chris Toshok <toshok@ximian.com>
478 * RoleManagerSection.cs, SqlCacheDepencendySection.cs,
479 SessionStateSection.cs, TraceSection.cs, SecurityPolicySection.cs,
480 PagesSection.cs, RulesSettings.cs, UrlMappingSection.cs: fix
483 2006-01-09 Chris Toshok <toshok@ximian.com>
485 * ExpressionBuilderCollection.cs (.cctor): no need to create a
486 collection property here. we're already in the collection.
488 * CompilationSection.cs: fix typo.
490 2006-01-04 Chris Toshok <toshok@ximian.com>
492 * MachineKeySection.cs: bring over some more internal methods from
493 MachineKeyConfig, and call Set{Decryption,Validation}Key from
494 their respective property setters.
496 2006-01-03 Chris Toshok <toshok@ximian.com>
498 * AuthorizationSection.cs (IsValidUser): add analogous method from
499 AuthorizationConfig.cs.
501 * AuthorizationRule.cs: add predicates for Verb, User, and Role
502 analogous to what existed in AuthorizationConfig.cs.
504 2005-12-11 Chris Toshok <toshok@ximian.com>
506 * WebConfigurationManager.cs (OpenMachineConfiguration): just call
507 ConfigurationManager.OpenMachineConfiguration.
508 (OpenWebConfiguration): remove the "IntPtr userToken" version and
509 add a "string userName" version to clean up corcompare output.
510 Modify all the overloads to pass null instead of IntPtr.Zero.
511 (GetWebApplicationSection): if we're not running in a web
512 application, use the machine configuration.
514 2005-12-06 Chris Toshok <toshok@ximian.com>
516 * CodeSubDirectory.cs (DirectoryName): don't use an private field,
517 but base[directoyNameProp].
519 * AuthorizationRuleCollection.cs (Add): use BaseAdd (rule, false),
520 so we can insert duplicates.
522 (GetElementKey): MS for some reason just uses the action for the
524 (Remove): pass the correct key.
526 * ProfileGroupSettings.cs (GetHashCode): implement.
528 * GlobalizationSection.cs (GetEncoding): for the utf-8 case, just
531 * AssemblyCollection.cs (Add): use BaseAdd (info, false) so we can
534 * CacheSection.cs (.cctor): make privateByteLimit's default 0L so
535 we don't get a invalid cast exception later on.
537 * AuthorizationRule.cs (VerifyData): split out the verification
538 foo from PreSerialize.
539 (PostDeserialize): so we can call it from here.
540 (PreSerialize): and here.
542 2005-12-05 Chris Toshok <toshok@ximian.com>
544 * AuthorizationRuleCollection.cs (GetKey): split out the logic for
545 creating a key from a rule here.
546 (GetElementKey): use it here.
549 2005-12-04 Chris Toshok <toshok@ximian.com>
551 * UrlMapping.cs: add an internal argument-less ctor.
553 * UrlMappingCollection.cs (CreateNewElement): use argument-less
556 (AllKeys): implement.
558 * TrustLevel.cs: add an internal argument-less ctor.
560 * TrustLevelCollection.cs (Set): implement.
561 (CreateNewElement): use argument-less ctor.
562 (IsElementName): implement.
563 (ElementName): implement.
564 (set_Item (int index)): use Set.
565 (ThrowOnDuplicate): implement.
567 * TagPrefixInfo.cs: add internal argument-less ctor.
569 * TagPrefixCollection.cs (CreateNewElement): call argument-less
571 (CollectionType): add text to TODO.
572 (ElementName): implement.
574 * SqlCacheDependencyDatabaseCollection.cs (Set): implement.
575 (AllKeys): implement.
577 * RuleSettings.cs: add internal argument-less ctor.
579 * RuleSettingsCollection.cs (Contains): implement.
580 (CreateNewElement): use argument-less ctor.
581 (IndexOf): implement.
584 * RootProfilePropertySettingsCollection.cs (IsModified): chain up
585 to base.IsModified for now.
586 (Reset): chain up to base.Reset for now.
587 (ResetModified): chain up to base.ResetModified for now.
589 * ProfileSettings.cs: add internal argument-less ctor.
591 * ProfileSettingsCollection.cs (Contains): implement.
592 (CreateNewElement): use argument-less ctor.
593 (IndexOf): implement.
596 * ProfilePropertySettingsCollection.cs (IndexOf): implement.
598 (AllKeys): implement.
600 * ProfileGroupSettings.cs: add internal argument-less ctor.
602 * ProfileGroupSettingsCollection.cs (CreateNewElement): use
605 (ResetModified): for now call base.ResetModified.
607 (AllKeys): implement.
609 * OutputCacheProfile.cs: add internal argument-less ctor.
611 * OutputCacheProfileCollection.cs (CreateNewElement): use
614 (AllKeys): implement.
616 * HttpModuleActionCollection.cs (Add): remove MonoTODO.
617 (CreateNewElement): same.
619 * HttpHandlerActionCollection.cs (GetElementKey): build up the key
620 from both the path and the verb.
623 * FormsAuthenticationUserCollection.cs (Set): implement.
624 (AllKeys): implement.
626 * EventMappingSettings.cs: add an internal argument-less ctor.
628 * EventMappingSettingsCollection.cs (Contains): implement.
629 (CreateNewElement): use argument-less ctor.
630 (IndexOf): implement.
633 * CompilerCollection.cs (GetKey): implement.
634 (AllKeys): implement.
636 * ClientTargetCollection.cs (GetKey): implement.
637 (AllKeys): implement.
639 * AuthorizationRuleCollection.cs (Set): implement.
640 (ElementName): add some text to the MonoTODO.
641 (set_Item (int index)): use Set.
643 2005-12-04 Chris Toshok <toshok@ximian.com>
645 * CustomError.cs: add an internal argument-less ctor for use by
648 * CustomErrorCollection.cs: implement all the MonoTODO's.
650 2005-12-02 Chris Toshok <toshok@ximian.com>
652 * GlobalizationSection.cs (VerifyData): split out the stuff that
653 used to live in PreSerialize here.
654 (PreSerialize): call VerifyData here.
655 (PostDeserialize): and here.
657 2005-12-01 Chris Toshok <toshok@ximian.com>
659 * GlobalizationSection.cs (PreSerialize): add checks for Culture
660 and UICulture properties.
662 2005-12-01 Chris Toshok <toshok@ximian.com>
664 * AuthorizationRule.cs (..ctor): provide default values for
665 roles/users/verbs here. Not sure if we should do this in the ctor
666 or if the System.Configuration infrastructure should.. time will
668 (PreSerialize): throw if Roles.Count and Users.Count == 0.
669 (SerializeElement): write out the element here. don't chain up to
670 the base class since that has differing behavior than what we
673 2005-11-30 Chris Toshok <toshok@ximian.com>
675 * CompilerCollection.cs: ugly hack to fix the
676 2.0-without-config-2.0 case. wrap this file in #if
677 CONFIGURATION_2_0 as well as #if NET_2_0.
681 2005-11-28 Chris Toshok <toshok@ximian.com>
683 * SessionStateSection.cs (CookieLess): correct the compat function
686 2005-11-28 Chris Toshok <toshok@ximian.com>
688 * GlobalizationSection.cs (GetEncoding): if the encoding name is
689 null, default to utf-8 before we hit the try block, so we don't
690 throw and generate a spurious warning.
692 * SessionStateSection.cs: The Cookieless handling needs a custom
693 parser, it appears, as the converter is a StringConverter, not a
694 GenericEnumConverter.
695 (ParseCookieMode): the parser.
697 2005-11-28 Chris Toshok <toshok@ximian.com>
699 * PagesSection.cs (GetInstance): nuke.
701 * CompilationSection.cs (GetInstance): nuke.
703 2005-11-28 Chris Toshok <toshok@ximian.com>
705 * HttpHandlerAction.cs: add some c&p code from the 1.1 config
706 stuff to look for matching handlers.
707 (..ctor): add parameterless ctor.
709 * HttpHandlerActionCollection.cs: clean up formatting.
710 (CreateNewElement): call the parameter-less ctor for
713 * HttpHandlersSection.cs (..ctor): add a ConfigurationProperty for
714 the default collection.
715 (get_Handlers): implement.
716 (LocateHandler): copy over (and massage) some 1.1 config code.
718 * MachineKeySection.cs: move some code over from the 1.1 config
719 code to deal with autogeneration of keys, as well as converting
720 from the string rep to the byte[] rep.
722 2005-11-28 Chris Toshok <toshok@ximian.com>
724 * HttpModuleActionCollection.cs (CreateNewElement): use the new
725 HttpModuleAction ctor.
727 * HttpModuleAction.cs: add internal ctor with no parameters, for
728 use in HttpModuleActionCollection.
730 2005-11-28 Chris Toshok <toshok@ximian.com>
732 * GlobalizationSection.cs (..cctor): the encoding
733 ConfigurationProperties are of type "string", even though the
734 properties themselves are of type Encoding. we do conversions
735 manually in the setter/getters. gross. Add code (mostly c&p +
736 massaged from GlobalizationConfigurationHandler) for this and also
737 to handle the culture gettes.
739 2005-11-26 Chris Toshok <toshok@ximian.com>
741 * AuthorizationRuleCollection.cs (GetElementKey): implement this.
743 * ProfilePropertyNameValidator.cs: make this internal, and add a
744 blurb about how MS doesn't do the testing you'd expect them to.
746 2005-11-25 Chris Toshok <toshok@ximian.com>
748 * AuthorizationRuleCollection.cs (CreateNewElement): remove
751 * CompilationSection.cs (GetRuntimeObject): add comment to TODO.
753 * ProfileGroupSettings.cs: reformat some things.
755 * FormsAuthenticationUser.cs (Name): remove MonoTODO.
757 * WebPartsSection.cs (GetRuntimeObject): change TODO comment.
759 * ProfilePropertySettings.cs: add internal argument-less ctor.
761 * IdentitySection.cs (GetRuntimeObject): return this.
763 * ProfilePropertySettingsCollection.cs: implement much of the
766 * WebControlsSection.cs (GetRuntimeObject): implement.
768 * SqlCacheDependencyDatabaseCollection.cs (GetElementKey):
772 2005-11-24 Chris Toshok <toshok@ximian.com>
774 * AssemblyInfo.cs: move this here from System.Web.Configuration,
775 and fix up the properties.
777 * SystemWebSectionGroup.cs: enable most of the sections (2
778 remaining to be enabled.)
780 2005-11-24 Chris Toshok <toshok@ximian.com>
782 * ProcessModelSection.cs, SqlCacheDependencySection.cs,
783 SessionStateSection.cs, PassportAuthentication.cs,
784 FormsAuthenticationConfiguration.cs,
785 SqlCacheDependencyDatabase.cs, HttpModuleAction.cs,
786 BufferModeSettings.cs, TagPrefixInfo.cs (..cctor): init
788 (ValidateElement): new static validator callback.
789 (ElementProperty): enable this, return elementProperty.
791 2005-11-23 Chris Toshok <toshok@ximian.com>
793 * ProfilePropertyNameValidator.cs: new implementation.
795 * ProfilePropertySettings.cs, ProfileGroupSettings.cs,
796 ClientTargetSection.cs, ClientTargetSection.cs,
797 BufferModeSettings.cs, HttpModulesSection.cs,
798 WebPartsPersonalization.cs, TransformerInfo.cs, TrustLevel.cs,
799 NamespaceInfo.cs, SqlCacheDependencyDatabase.cs,
800 AuthenticationSection.cs, RuleSettings.cs,
801 FormsAuthenticationUser.cs, WebPartsSection.cs, BuildProvider.cs,
802 WebPartsPersonalizationAuthorization.cs, Compiler.cs,
803 ExpressionBuilder.cs, OutputCacheProfile.cs,
804 FormsAuthenticationCredentials.cs, XhtmlConformanceSection.cs,
805 OutputCacheSettingsSection.cs, CustomError.cs, TraceSection.cs,
806 ExpressionBuilderCollection.cs, ProfileSettings.cs,
807 SessionStateSection.cs, HealthMonitoringSection.cs,
808 FormsAuthenticationConfiguration.cs, HttpRuntimeSection.cs,
809 SessionPageStateSection.cs, TrustSection.cs,
810 AnonymousIdentificationSection.cs, WebControlsSection.cs,
811 ClientTarget.cs, TagMapInfo.cs, AuthorizationSection.cs,
812 ProcessModelSection.cs, RoleManagerSection.cs,
813 MembershipSection.cs, CustomErrorsSection.cs (..cctor): fix
814 validator/converters.
816 * MachineKeySection.cs (..cctor): fix validators/converters.
817 (Validation): enable the Converter.
819 * CodeSubDirectory.cs (..cctor): fix validator/converters.
820 (DirectoryName): add note about missing validator decoration.
822 * HttpModuleAction.cs (..cctor): init properties.
823 (Properties): return properties.
825 * CompilationSection.cs (..cctor): fix validator/converters.
826 (GetInstance): add in this pre-2.0 interface for the time being,
827 hopefully it'll make it easier to migrate later on.
829 * HttpHandlerActionCollection.cs (..cctor): init properties.
830 (Properties): return properties.
832 * PagesSection.cs (..cctor): fix validator/converters.
833 (GetInstance): add in this pre-2.0 interface for the time being,
834 hopefully it'll make it easier to migrate later on.
836 * HttpHandlersSection.cs (..cctor): init properties.
837 (Properties): return properties.
839 * EventMappingSettings.cs (..cctor): fix validator/converters.
840 (Name): add note about missing validator decoration.
842 * HttpHandlerAction.cs (..cctor): fix validator/converters.
843 (PAth, Type, Verb): add note about missing validator decoration.
845 * NamespaceCollection.cs (..cctor): fix properties.
847 * ProfilePropertySettingsCollection.cs (..cctor): init properties.
848 (..ctor): don't throw NIE.
849 (Properties): return properties.
851 * HttpModuleActionCollection.cs (..cctor): init properties.
852 (Properties): return properties.
854 * CacheSection.cs (..cctor): fix validators/converters.
855 (PrivateBytesPollTime): add note about missing validator
858 * AuthorizationRule.cs (..cctor): fix validators/converters.
859 (Roles, Users, Verbs): enable the TypeConverter decorations.
861 * UrlMapping.cs (ValidateUrl): static method for use as a
862 validation callback. unimplemented as yet.
863 (..cctor): fix validators/converters.
864 (MappedUrl): add note about missing validator decoration.
866 * PropertyHelper.cs: static utility class which contains
867 references to validators and converters for use in static
868 constructors (building the Properties arrays).
870 2005-11-23 Chris Toshok <toshok@ximian.com>
872 * MachineKeyValidationConverter.cs: new converter (and a pretty
873 silly one, considering all it seems to do is convert "TripleDES"
876 * HostingEnvironmentSection.cs (.cctor): use
877 PositiveTimeSpanValidator like MS does.
879 2005-11-18 Chris Toshok <toshok@ximian.com>
881 * HostingEnvironmentSection.cs (.cctor): add validators.
883 * CompilationSection.cs (.cctor): fix defaultvalue of
886 2005-11-18 Chris Toshok <toshok@ximian.com>
888 * SystemWebSectionGroup.cs: enable a whole slew of properties.
890 * RegexWorker.cs: stub this out.
892 * HttpCapabilitiesBase.cs: remove GetClrVersions since it's in one
893 of the other partial files.
895 * CompilationSection.cs: fix this up.
897 * PagesSection.cs: fix some types and add a comment to
900 * CompilerCollection.cs (Add): new internal method.
902 * ProvidersHelper.cs: put the using System.Configuration.Provider
903 inside the NET_2_0 block.
905 * CacheSection.cs: add validators.
907 2005-11-14 Chris Toshok <toshok@ximian.com>
909 * BufferModeSettings.cs: add validators/converters to the
910 programmatic property list.
912 * BuildProvider.cs: add validators/converters to the programmatic
913 property list, and add an internal ctor with no args.
915 * Compiler.cs: wrap the code i hacked from the 1.1 stuff with a
918 * BuildProviderCollection.cs (CreateNewElement): use the internal
919 BuildProvider ctor to get around validation.
921 * AssemblyCollection.cs: same.
923 2005-11-14 Chris Toshok <toshok@ximian.com>
925 * TagPrefixCollection.cs (Remove): pass the key to BaseRemove.
926 (set_Item (int index)): implement.
928 * TagPrefixInfo.cs (Equals): implement.
929 (GetHashCode): implement.
931 * AuthorizationRuleCollection.cs (CreateNewElement(string)):
933 (IndexOf): implement.
934 (IsElementName): implement.
935 (ElementName): implement.
936 (Item (int index)): implement.
938 * FormsAuthenticationUserCollection.cs (set_Item (int index)): implement.
940 * UrlMappingCollection.cs (set_Item (int index)): implement.
942 * OutputCacheProfileCollection.cs (set_Item (int index)): implement.
944 * TransformerInfo.cs (Equals): implement.
945 (GetHashCode): implement.
947 * NamespaceInfo.cs (Equals): implement.
948 (GetHashCode): implement.
950 * ProfileSettingsCollection.cs (set_Item (int index)): implement.
952 * TransformerInfoCollection.cs (set_Item (int index)): implement.
954 * HttpHandlerActionCollection.cs (set_Item (int index)): implement.
956 * BufferModesCollection.cs (set_Item (int index)): implement.
958 * BuildProvider.cs: use the base[fooProp] pattern instead of
961 * ProfileGroupSettingsCollection.cs: implement most of this class.
963 * RuleSettingsCollection.cs (set_Item (int index)): implement.
965 * ClientTargetCollection.cs (set_Item (int index)): implement.
967 * AssemblyCollection.cs (set_Item (int index)): implement.
969 * BuildProviderCollection.cs (set_Item (int index)): reformat.
971 * CustomError.cs (Equals): implement.
972 (GetHashCode): implement.
974 * ExpressionBuilderCollection.cs (set_Item (int index)): reformat.
976 * PassportAuthentication.cs (RedirectUrl): express consternation
979 * NamespaceCollection.cs (set_Item (int index)): implement.
981 * RootProfilePropertySettingsCollection.cs (SerializeElement): add
984 * ProfilePropertySettingsCollection.cs (set_Item (int index)):
987 * CustomErrorCollection.cs (set_Item (int index)): implement.
989 * HttpModuleActionCollection.cs (set_Item (int index)): implement.
991 * CodeSubDirectoriesCollection.cs (set_Item (int index)):
994 * CustomErrorsSection.cs (DeserializeSection): include call to
995 base.DeserializeSection, and add MonoTODO.
997 * EventMappingSettingsCollection.cs (set_Item (int index)):
1000 * AuthorizationRule.cs (Equals): implement.
1001 (GetHashCode): implement.
1002 (SerializeElement): add comment.
1004 * TagMapCollection.cs (Remove): pass the key to BaseRemove.
1005 (set_Item (int index)): implement.
1007 * TagMapInfo.cs (Equals): implement.
1008 (GetHashCode): implement.
1009 (SerializeElement): add call to base.SerializeElement.
1011 * TrustLevelCollection.cs (Remove): pass the key to BaseRemove.
1012 (GetElementKey): implement.
1014 * SqlCacheDependencyDatabase.cs (set_Item (int index)): implement.
1016 * WebContext.cs: new implementation.
1018 2005-11-13 Chris Toshok <toshok@ximian.com>
1020 * AnonymousIdentificationSection.cs: rework this class a bit to
1021 fit in with the rest of S.W.C. Add validators to the
1022 ConfigurationProperty ctor calls, a pattern which will need to be
1023 replicated across the entire assembly, it appears (uggggh).
1025 2005-11-13 Chris Toshok <toshok@ximian.com>
1027 * AuthorizationRuleCollection.cs: fix ConfigurationCollection
1030 * TransformerInfo.cs: fix corcompare.
1032 * SqlCacheDependencyDatabase.cs: mark ctor internal to fix
1035 * AuthenticationSection.cs: add missing Reset stub.
1037 * ProfileSettingsCollection.cs: use the more succint ctor.
1039 * FormsAuthenticationUser.cs: enable the TypeConverter on "name".
1041 * GlobalizationSection.cs: fix up corcompare.
1043 * WebPartsSection.cs: fix up corcompare.
1045 * ProfileGroupSettingsCollection.cs: add missing
1046 ConfigurationCollection attribute.
1048 * ExpressionBuilder.cs: implement.
1050 * FormsAuthenticationCredentials.cs: fix up corcompare.
1052 * AssemblyCollection.cs: implement Properties.
1054 * SiteMapSection.cs: implement Properties.
1056 * ExpressionBuilderCollection.cs: fix up corcompare.
1058 * ProfileSettings.cs: add missing ctor.
1060 * PassportAuthentication.cs: new implementation.
1062 * SqlCacheDependencySection.cs: fix up corcompare.
1064 * ProfilePropertySettingsCollection.cs: fix up corcompare.
1066 * HttpModuleActionCollection.cs: fix up corcompare.
1068 * EventMappingSettingsCollection.cs: fix up corcompare.
1070 * AuthorizationRule.cs: fix up corcompare.
1072 * WebControlsSection.cs: fix up corcompare.
1074 * AuthorizationSection.cs: fix up corcompare.
1076 * MembershipSection.cs: clean this up, implement Properties, fix
1079 2005-11-13 Chris Toshok <toshok@ximian.com>
1081 * UrlMapping.cs, CustomErrorCollection.cs, CustomError.cs,
1082 HostingEnvironmentSection.cs, TrustLevel.cs,
1083 HttpCookiesSection.cs, UrlMappingsSection.cs,
1084 UrlMappingCollection.cs, LowerCaseStringConverter.cs,
1085 RoleManagerSection.cs, ProcessModelSection.cs,
1086 TrustLevelCollection.cs, ClientTarget.cs, CustomErrorsSection.cs,
1087 MachineKeySection.cs, SessionPageStateSection.cs,
1088 SessionStateSection.cs, ProvidersHelper.cs,
1089 ClientTargetCollection.cs, SecurityPolicySection.cs,
1090 HttpCapabilitiesBase.cs, ClientTargetSection.cs: Another large
1094 2005-11-12 Chris Toshok <toshok@ximian.com>
1096 * AuthorizationRuleCollection.cs, AuthorizationRule.cs,
1097 AuthorizationSection.cs, BufferModesCollection.cs,
1098 BufferModeSettings.cs, CacheSection.cs, CompilerCollection.cs,
1099 Compiler.cs, DeploymentSection.cs,
1100 EventMappingSettingsCollection.cs, EventMappingSettings.cs,
1101 GlobalizationSection.cs, HealthMonitoringSection.cs,
1102 IdentitySection.cs, OutputCacheProfileCollection.cs,
1103 OutputCacheProfile.cs, OutputCacheSection.cs,
1104 OutputCacheSettingsSection.cs, ProfileSettingsCollection.cs,
1105 ProfileSettings.cs, RuleSettingsCollection.cs, RuleSettings.cs,
1106 SqlCacheDependencyDatabaseCollection.cs,
1107 SqlCacheDependencyDatabase.cs, SqlCacheDependencySection.cs,
1108 SystemWebCachingSectionGroup.cs, TraceSection.cs,
1109 TransformerInfoCollection.cs, TransformerInfo.cs, TrustSection.cs,
1110 WebControlsSection.cs, WebPartsPersonalizationAuthorization.cs,
1111 WebPartsPersonalization.cs, WebPartsSection.cs,
1112 XhtmlConformanceSection.cs: a whole slew of new classes. the
1113 fruits of tons of c&p and ibuprofen.
1116 2005-11-09 Chris Toshok <toshok@ximian.com>
1118 * PagesSection.cs, AuthenticationSection.cs, BuildProvider.cs,
1119 BuildProviderCollection.cs, HttpHandlerActionCollection.cs,
1120 HttpModulesSection.cs, HttpModuleAction.cs,
1121 HttpModuleActionCollection.cs, AnonymousIdentificationSection.cs,
1122 CodeSubDirectory.cs, CodeSubDirectoriesCollection.cs,
1123 SystemWebSectionGroup.cs, SiteMapSection.cs,
1124 WebConfigurationManager.cs: flesh out the implementation.
1126 * TagMap*.cs, TagPrefix*.cs: new implementation.
1128 * FormsAuthentication*.cs: new implementation.
1130 * Profile*.cs: new implementation.
1132 * Namespace*.cs: new implementation.
1134 * HttpRuntimeSection.cs: new implementation.