1 2009-10-07 Marek Habersack <mhabersack@novell.com>
3 * WebConfigurationManager.cs: GetSection doesn't perform string +
4 char + string concatenation to generate section cache key (by
5 Gonzalo Paniagua Javier) which gives an enormous performance boost
6 (processing time for mojoportal's default.aspx went down from
7 2.65s to 107ms on average). The key generation is performed
8 without any kind of string operation right now (except for
9 GetHashCode on 3 strings).
10 GetSectionCacheKey is called only once and sectionCache became a
13 2009-08-20 Marek Habersack <mhabersack@novell.com>
15 * WebConfigurationManager.cs: GetSection does not use
16 FindWebConfig to get the virtual path to open configuration for -
17 doing so would make the configuration system ignore <location>
18 sections. Fixes bug #482181
20 2009-07-23 Gonzalo Paniagua Javier <gonzalo@novell.com>
22 * WebConfigurationManager.cs: avoid possible infinite loop when the
23 path starts with ~ and 1 file check.
25 2009-07-15 Marek Habersack <mhabersack@novell.com>
27 * WebConfigurationManager.cs: another approach to suppressing
28 application reloads after the app writes to its root web.config
29 file. Leaving the previous code in place to get more
30 protection. It's a kludge, but it's the best option to avoid
31 all the races caused by System.Configuration+FileSystemWatcher
32 without rewriting large parts of System.Configuration (and
33 System.Web.Configuration). Fixes bug #522017
35 2009-07-14 Marek Habersack <mhabersack@novell.com>
37 * WebConfigurationManager.cs: added support for suppressing
38 application reload when the main config file is written to from
41 * WebConfigurationHost.cs: added minimal implementation of
42 WriteCompleted, which checks if there's need to suppress
45 2009-07-13 Marek Habersack <mhabersack@novell.com>
47 * ProvidersHelper.cs: InstantiateProvider doesn't have to
48 explicitly look for types in App_Code assemblies - this is done in
49 HttpApplication.LoadType.
51 2009-07-09 Gonzalo Paniagua Javier <gonzalo@novell.com>
53 * WebConfigurationHost.cs: null means MachineToApplication.
54 * WebConfigurationManager.cs: when caching configuration and sections,
55 use the configuration file directory instead of the incoming request
58 2009-06-08 Gonzalo Paniagua Javier <gonzalo@novell.com>
60 * HttpHandlerAction.cs: fix path matching when the pattern has more
63 2009-06-05 Marek Habersack <mhabersack@novell.com>
65 * WebConfigurationManager.cs: OpenWebConfiguration caches
66 configurations with a key generated from all the parameters passed
67 to it, not just from path.
68 Added internal GetSection method which takes HttpContext as its
69 third parameter - used in calling OpenWebConfiguration.
70 FindWebConfig is no longer used in GetSection - it breaks handling
71 of <location> elements in config files. Fixes bug #510302
73 2009-06-03 Marek Habersack <mhabersack@novell.com>
75 * MonoSettingsSection.cs: added new property,
76 verificationCompatibility, which serves the same purpose as the
77 registry key described in http://support.microsoft.com/kb/932552
78 (when set to 1 it turns off virtual path validity
79 verification). Fixes bug #509163
81 2009-05-14 Marek Habersack <mhabersack@novell.com>
83 * HttpHandlersSection.cs: if we're matching a default handler,
86 2009-04-03 Marek Habersack <mhabersack@novell.com>
88 * WebConfigurationManager.cs: added code in the static constructor
89 to enable retrieving application settings via
90 ApplicationSettingsBase from within asp.net applications. Fixes
93 * ApplicationSettingsConfigurationFileMap.cs: added.
95 2009-03-12 Dean Brettle <dean@brettle.com>
97 * nBrowser/Build.cs: made Browser() method thread-safe and moved the
98 actual tree creation to a private InitializeTree() method for clarity.
100 2009-03-01 Marek Habersack <mhabersack@novell.com>
102 * WebConfigurationManager.cs: optimized GetWebApplicationSection a
105 2009-02-28 Marek Habersack <mhabersack@novell.com>
107 * WebConfigurationManager.cs: make sure no nrex happens in
108 GetSectionCacheKey ()
110 2009-02-26 Gonzalo Paniagua Javier <gonzalo@novell.com>
112 * WebConfigurationManager.cs: generate a hash from the string hsah
113 codes instead of concatenating them.
115 2009-01-27 Marek Habersack <mhabersack@novell.com>
117 * HttpHandlerAction.cs: removed the matches cache, it doesn't
118 improve matters here in 99% of the cases.
119 Regexps are no longer used to match handler paths, SearchPattern
122 2009-01-26 Marek Habersack <mhabersack@novell.com>
124 * WebConfigurationHost.cs: when an attempt to map a fake virtual
125 path is made, MapPath returns the aplication physical root
126 directory. Fixes bug #463950
128 2008-01-09 Dean Brettle <dean@brettle.com>
130 * nBrowser/Node.cs: Fixed compatibility bug where <identification> sections were required
133 2009-01-09 Marek Habersack <mhabersack@novell.com>
135 * WebConfigurationManager.cs: do not normalize the path in
136 FindWebConfig when getting the virtual directory.
138 2009-01-08 Marek Habersack <mhabersack@novell.com>
140 * WebConfigurationManager.cs: improve performance of
143 2009-01-07 Marek Habersack <mhabersack@novell.com>
145 * HttpModulesSection.cs: allow for modules with non-public
146 constructors. Fises bug #463971
148 * HttpHandlerAction.cs: allow for handlers with non-public
149 constructors. Fixes bug #463971
151 2008-12-24 Marek Habersack <mhabersack@novell.com>
153 * WebConfigurationManager.cs: A better version of the previous
154 GetSection fix. Right now the method searches for directories
155 containing web.config and uses them, if found, to open the web
156 configuration. If no web.config is found, web configuration is
157 opened for the root application directory.
159 * WebConfigurationHost.cs: made GetWebConfigFileName internal
160 static, so that code can be reused from WebConfigurationManager.
162 2008-12-23 Marek Habersack <mhabersack@novell.com>
164 * WebConfigurationManager.cs: GetSection should call
165 OpenWebConfiguration using the actual directory path, not a file
166 path. If it fails to do so, System.Configuration may treat the
167 top-level Web.config file as a child one which, in turn, in
168 certain circumstances will lead to duplicate keys inserted in
171 2008-12-16 Marek Habersack <mhabersack@novell.com>
173 * WebConfigurationHost.cs: IsDefinitionAllowed should treat
174 configPath == "~" as the root application path.
176 2008-12-12 Owen Brady <Ocean@owenbrady.net>
178 * nBrowser/File.cs, nBrowser/Identification.cs, nBrowser/Node.cs, nBrowser/NodeTypes.cs,
179 nBrowser/Result.cs, nBrowser/Build.cs, nBrowser/Exception.cs, CapabilitiesBuild.cs,
180 CapabilitiesResult.cs: Updated Copyright information to include updated contact information.
182 * nBrowser/Build.cs: Removed LoadDefaultEmbeddedResource function, the embeded resource
183 it is referring too was never included in Mono. And was designed for a free standing
184 browser identification libary.
186 * nBrowser/Exception.cs: Removed Compile Attributes and related comments which were left
187 in from the original free standing browser libary.
189 * CapabilitiesBuild.cs: Removed Header Checksum related coding since it is not required
190 for the Mono implementation.
192 * CapabilitiesResult.cs: Updated Copyright information to include updated contact information.
193 Removed functions which were designed to make use of features of a embeded browser file which
194 is not present in Mono.
196 * CapabilitiesChecksum.cs, RandomRoboBotKeywords.txt: Deleted
197 2008-10-21 Marek Habersack <mhabersack@novell.com>
199 * CapabilitiesChecksum.cs: implement Hex and MapToHex more efficiently.
201 2008-10-09 Marek Habersack <mhabersack@novell.com>
203 * MonoSettingsSection.cs: added - a section for mono-specific
206 2008-10-01 Marek Habersack <mhabersack@novell.com>
208 * CapabilitiesResult.cs: added support for the "browsers"
209 capability - a collection of matching browser ids.
211 * nBrowser/Node.cs: store matching browser ids in the capabilities
212 collection (to support IsBrowser correctly)
214 2008-07-25 Dean Brettle <dean@brettle.com>
216 * nBrowser/Node.cs nBrowser/Build.cs nBrowser/Identification.cs: Fixed race
217 condition in Node.Process() by removing mutating functions from Identification
218 and changing Node.Process() and Node.BrowserIdentification() to maintain
219 state in a List<Match> instead of a List<Identification>.
221 * nBrowser/Node.cs: Fixed race condition associated with lookup of adapter
224 * nBrowser/Node.cs: Removed duplicate call to Node.BrowserIdentification() from
227 * nBrowser/Node.cs: Removed duplicate call to Result.AddAdaper() from Node.Process().
229 * nBrowser/Node.cs: Fixed bug where capabilities containing literal $ or % were
232 * nBrowser/Node.cs: Fixed bug where capabilities with multiple $ substitutions only
235 2008-06-30 Zoltan Varga <vargaz@gmail.com>
237 * CapabilitiesResult.cs: Make the RandomRoboBotKeywords array static and compute it
240 2008-06-30 Marek Habersack <mhabersack@novell.com>
242 * CompilationSection.cs: hush the warnings
244 2008-06-26 Zoltan Varga <vargaz@gmail.com>
246 * nBrowser/Node.cs nBrowser/Result.cs: Avoid looking up adapter types names for
247 every request in every assembly.
249 2008-05-22 Marek Habersack <mhabersack@novell.com>
251 * WebConfigurationHost.cs: changed CreateDeprecatedConfigContext
252 to return a new HttpContext object. This is part of a fix for bug
253 #325128. Patch contributed by James Fitzsimons <james.fitzsimons@gmail.com>,
256 2008-05-07 Marek Habersack <mhabersack@novell.com>
258 * RoleManagerSection.cs: use type converter when creating the
259 cookieTimeout property in the static constructor. Fixes bug
260 #387526. Patch fromIvan Hamilton <ivan@chimerical.com.au>, thanks!
262 2008-03-23 Dean Brettle <dean@brettle.com>
264 * CapabilitiesBuild.cs (Process), ICapabilitiesProcess.cs (Process),
265 nBrowser/Build.cs (Process): Added initialCapabilities argument to
266 facilitate using browscap.ini capabilities.
268 * CapabilitiesResult.cs (ctor), nBrowserResult.cs (ctor): Change
269 items arg to IDictionary to facilitate using browscap.ini capabilities.
271 * nBrowser/Node.cs (Reset): Removed code which checked prohibited
272 non-alphanumerics in id attributes because .NET is not that strict.
274 * nBrowser/Node.cs (MergeFrom): Fixed NullReferenceExceptions that
275 occurred when the source or destination node did not have any
276 capabilities or adapters.
278 * nBrowser/Result.cs (AddAdapter): Fixed to allow types in other
281 2008-03-09 Dean Brettle <dean@brettle.com>
283 * nBrowser/Result.cs, nBrowser/NodeTypes.cs, nBrowser/Identification.cs,
284 nBrowser/File.cs, nBrowser/Build.cs, nBrowser/Node.cs,
285 nBrowser/Exception.cs: added. The code under nBrowser handles *.browser
286 files. It is based on Owen "Ocean" Brady's code, with the following
287 changes and improvements. Replaced Result.Adapter
288 property with AdapterTypeMap property which maps control Type to adapter
289 Type. Added Result.MarkupTextWriter property. Added overrides for
290 Result.GetAdapters and Result.GetTagWriter to return MarkupTextWriter
291 and AdapterTypeMap, resp. Changed tree building algorithm to not
292 depend on nodes with id="Default" and to inject defaultBrowser nodes
293 as parents of regular nodes with the same ids. Changed Node.cs to use
294 Item instead of Add when adding a capability or sample header, so that
295 values get replaced instead of appended. Added support for reference
296 nodes (ie. nodes with refID="someID").
298 * CapabilitiesResult.cs: load RandomRoboBotKeywords.txt resource
299 using the correct name.
301 * RandomRoboBotKeywords.txt: added
303 * HttpCapabilitiesBase.cs (CreateHtmlWriter, Adapters): Added
304 support for *.browsers. Adapters property calls internal virtual
305 GetAdapters() method which is overrided in nBrowser.Result
306 returned by nBrowser code. CreateHtmlWriter uses type specified
307 by TagWriter property.
309 2008-03-03 Vladimir Krasnov <vladimirk@mainsoft.com>
311 * ProvidersHelper.cs: fixed thread safety issue in InstantiateProvider
313 2008-03-01 Marek Habersack <mhabersack@novell.com>
315 * WebConfigurationManager.cs: SettingsMappingManager has been
316 moved to Mono.Web.dll
318 2008-02-28 Marek Habersack <mhabersack@novell.com>
320 * HttpHandlerAction.cs: ignore case when matching handler
321 paths. Fixes bug #364995
323 2008-02-26 Marek Habersack <mhabersack@novell.com>
325 * BuildProviderCollection.cs: be case-insensitive when looking for
328 2008-02-25 Marek Habersack <mhabersack@novell.com>
330 * WebConfigurationManager.cs: hashtable can contain a key with a
331 null value, avoid adding duplicate keys in such cases.
333 2008-02-18 Vladimir Krasnov <vladimirk@mainsoft.com>
335 * WebConfigurationManager.cs: performance improvement, cached
338 2008-02-07 Vladimir Krasnov <vladimirk@mainsoft.com>
340 * GlobalizationSection.cs: fixed GetSanitizedCulture, performance
343 2008-02-05 Marek Habersack <mhabersack@novell.com>
345 * CompilerCollection.cs: Get (string language) should not use
346 BaseGet as our collection is keyed on a list of language names
347 (e.g. "cs;csharp") and passing a single language won't match in
348 BaseGet correctly. Use the overriden indexer instead.
349 Initialize the base class with the case-insensitive
350 comparer. Fixes bug #357824.
352 2008-01-27 Daniel Nauck <dna@mono-project.de>
354 * HttpHandlerAction.cs: fixed the internal method PathMatches ()
355 removed wrong caching of FileMatchingInfo classes with request specific
356 informations. Now we check against the current request path and cache
357 the result in a dictionary.
358 Also check correctly against all possible paths from the HttpHandler.
361 2007-12-27 Marek Habersack <mhabersack@novell.com>
363 * ProfileGroupSettingsCollection.cs: added an internal method to
364 add/overwrite new group settings. Used from
365 RootProfilePropertySettingsCollection.
367 * ProfileGroupSettings.cs: added the missing "name" property to
368 the properties collection.
369 Marked the propertySettingsProp property as the default
371 Added internal deserialization method, used from
372 RootProfilePropertySettingsCollection to support the 'group'
375 * ProfileSection.cs: defaultProviderProp typo - the name of the
376 provider should be "AspNetSqlProfileProvider"
378 * RootProfilePropertySettingsCollection.cs: added
379 OnDeseerializeUnrecognizedElement to support the profile 'group'
381 Added a missing Unmerge method.
383 2007-12-11 Vladimir Krasnov <vladimirk@mainsoft.com>
385 * SiteMapSection.cs: fixed ProvidersInternal property to be thread safe
387 2007-12-08 Marek Habersack <mhabersack@novell.com>
389 * WebConfigurationManager.cs: GetSection now runs each section
390 through a mapper (if any is defined for the section) before
391 returning it to the caller.
393 2007-11-23 Marek Habersack <mhabersack@novell.com>
395 * TagPrefixCollection.cs: changed the collection type to
398 * ProfileSection.cs: added missing Properties property, added a
399 static constructor to create property descriptors. Use property
400 descriptors in property accessors.
402 * ProfileGroupSettingsCollection.cs: added missing attribute to
403 the class, removed CollectionType method, added missing IsModified
404 and ResetModified methods, added missing Properties property.
406 * ProfileGroupSettings.cs: added missing Properties property,
407 adjusted the set of custom attributes of the PropertySettings
410 * ProcessModelSection.cs: change the default value of the CpuMask
413 * OutputCacheSection.cs: added the EnableKernelCacheForVaryByStar
416 * OutputCacheProfile.cs: added the VaryByContentEncoding property.
418 * FormsAuthenticationConfiguration.cs: corrected defaults for the
421 * ExpressionBuilder.cs: corrected defaults for the
422 ExpressionPrefix and Type properties.
424 * CustomErrorsSection.cs: added two missing overrides -
425 DeserializeSection and Reset.
427 * ClientTargetSection.cs: added the missing Properties property.
428 Added static constructor to create the property collection.
430 * CustomErrorCollection.cs: removed the ThrowOnDuplicate
433 * CacheSection.cs: corrected defaults for the
434 PercentagePhysicalMemoryUsedLimit property.
436 * ClientTargetCollection.cs: added missing Properties property.
438 * IConfigMapPathFactory.cs: added
440 * IConfigMapPath.cs: added
442 * RoleManagerSection.cs: added a static constructor, a collection
443 of properties, the missing Properties property.
445 2007-11-22 Marek Habersack <mhabersack@novell.com>
447 * RoleManagerSection.cs: CookieTimeout property custom attributes
448 changed to match MS.NET's ones.
450 * AuthorizationRuleCollection.cs: removed the ThrowOnDuplicate
451 property - it's not found in the MS.NET version of the class.
453 2007-11-06 Marek Habersack <mhabersack@novell.com>
455 * MachineKeySectionUtils.cs: make sure keys are autogenerated when
458 2007-11-02 Marek Habersack <mhabersack@novell.com>
460 * HttpHandlerActionCollection.cs: clear http handler cache in
461 HttpApplication if the collection is modified.
463 2007-11-01 Marek Habersack <mhabersack@novell.com>
465 * MachineKeySection.cs: moved all the internal static methods and
466 properties to MachineKeySectionUtils.cs
468 * MachineKeySectionUtils.cs: added. This file is included in the
469 System.Web.Extensions compilation.
470 The old properties from MachineKeySection.cs became methods.
472 2007-10-24 Marek Habersack <mhabersack@novell.com>
474 * HttpHandlerAction.cs: exact path matching must be done on the
475 original string in PathMatches, not on the sliced one. Fixes bug
478 2007-10-17 Marek Habersack <mhabersack@novell.com>
480 * WebConfigurationHost.cs: if running outside hosted environment,
481 read only the assemblyname.config configuration file instead of
482 web.config. Fixes bug #332425
484 2007-10-15 Marek Habersack <mhabersack@novell.com>
486 * ProvidersHelper.cs: use HttpApplication.LoadType instead of
489 * HttpModulesSection.cs: use HttpApplication.LoadType when loading
490 modules, to include both the bin/ directory and the top-level
491 assemblies in search. Fixes bug #333686.
493 2007-08-30 Marek Habersack <mhabersack@novell.com>
495 * MachineKeySection.cs: retrieve the keys from the registry before
496 falling back to the old method. Fixes bug #76606
498 2007-08-23 Marek Habersack <mhabersack@novell.com>
500 * ProvidersHelper.cs: HttpApplication.LoadTypeFromPrivateBin
501 renamed to LoadTypeFromBin.
503 2007-08-21 Marek Habersack <mhabersack@novell.com>
505 * ProvidersHelper.cs: use HttpApplication.LoadTypeFromPrivateBin
506 to get the provider settings type.
508 2007-08-10 Gert Driesen <drieseng@users.sourceforge.net>
510 * PagesEnableSessionState.cs: Marked internal on 1.0 profile.
512 2007-07-16 Vladimir Krasnov <vladimirk@mainsoft.com>
514 * ProfileGroupSettingsCollection.cs: added ResetInternal internal
516 * RootProfilePropertySettingsCollection.cs: added Reset method
517 override to reset GroupSettings collection
519 2007-06-24 Vladimir Krasnov <vladimirk@mainsoft.com>
521 * HttpHandlerAction.cs: fixed SplitPaths property to be thread safe
523 2007-06-12 Vladimir Krasnov <vladimirk@mainsoft.com>
525 * CompilationSection.cs: TARGET_JVM on not supported features
526 * HttpModulesSection.cs: ctor should be static
528 2007-06-03 Adar Wesley <adarw@mainsoft.com>
530 * ProfilePropertySettingsCollection.cs: added missing method
531 OnDeserializeUnrecognizedElement.
533 2007-05-30 Marek Habersack <mhabersack@novell.com>
535 * WebConfigurationManager.cs: if errors happen when opening the
536 configuration file, mark the manager as unsafe to prevent further
537 usage and avoid error loops.
539 2007-05-17 Igor Zelmanovich <igorz@mainsoft.com>
541 * WebConfigurationHost.cs: for TARGET_J2EE only:
542 prevent NullRefference Exception.
544 2007-05-15 Igor Zelmanovich <igorz@mainsoft.com>
546 * WebConfigurationManager.cs:
547 make configurations hashtable case-insensitive.
548 * WebConfigurationHost.cs: for TARGET_J2EE only:
549 GetStreamName returns file path in right case, that make it works
550 on case-sensitive file system.
552 2007-05-15 Marek Habersack <mhabersack@novell.com>
554 * BuildProviderCollection.cs: refactoring - use
555 HttpApplication.LoadType to actually look up the type.
557 * HttpHandlerAction.cs: as above
559 * WebConfigurationHost.cs: refactoring - moved the LoadType to
560 HttpApplication to share the code between 1.1 and 2.0 profiles.
562 2007-05-14 Marek Habersack <mhabersack@novell.com>
564 * UrlMappingCollection.cs: implemented the Item (string) indexer.
566 * UrlMapping.cs: implemented the URL validation callback body
567 (doesn't work at the moment).
569 2007-05-14 Igor Zelmanovich <igorz@mainsoft.com>
571 * WebConfigurationManager.cs:
572 make configurations synchronized.
573 added new internal method RemoveConfigurationFromCache.
575 2007-05-07 Marek Habersack <mhabersack@novell.com>
577 * PagesSection.cs: buffering is on by default.
579 2007-04-24 Marek Habersack <mhabersack@novell.com>
581 * WebConfigurationHost.cs: wrap MapPath calls in try/catch,
582 because bad URLs can cause it to throw exceptions. If such
583 exception is caught, throw a HttpException for Bad Request (400).
584 Look for types in the top-level assemblies (App_Code and
587 * WebConfigurationManager.cs: added two internal methods for safe
588 retrieval of config sections.
590 2007-04-19 Marek Habersack <mhabersack@novell.com>
592 * HttpHandlerAction.cs: look up types in all the toplevel
593 assemblies. Fixes bug #80897.
595 2007-04-17 Atsushi Enomoto <atsushi@ximian.com>
597 * ProcessModelSection.cs : cpuMask default value should be int,
600 2007-04-06 Marek Habersack <mhabersack@novell.com>
602 * CustomErrorsSection.cs: make the customErrors section work.
604 * PagesSection.cs: provide appropriate default value for the
605 asyncTimeout setting.
607 2007-03-24 Marek Habersack <mhabersack@novell.com>
609 * WebConfigurationHost.cs: allow MachineToApplication definition
610 for config paths that equal the domain virtual app directory.
612 2007-03-22 Adar Wesley <adarw@mainsoft.com>
614 * HttpCapabilitiesBase.cs: implemented all capabilities. Capabilities
615 still throw if there is no value in browscaps.ini and the property is called.
617 2007-03-21 Vladimir Krasnov <vladimirk@mainsoft.com>
619 * WebConfigurationManager.cs: fixed OpenWebConfiguration, should not
620 lock when checking if configuration is already open
622 2007-03-15 Vladimir Krasnov <vladimirk@mainsoft.com>
624 * WebConfigurationManager.cs: fixed OpenWebConfiguration, removed
625 GetBasePath call and locations search, since this not affects
626 configuration initialization, but improves performance
628 2007-03-12 Marek Habersack <mhabersack@novell.com>
630 * ProvidersHelper.cs: support loading custom providers from
631 App_Code assemblies. Fixes bug #81071.
632 Also set eol-style to native.
634 2007-03-08 Gert Driesen <drieseng@users.souceforge.net>
636 * PagesSection.cs: Revert part of Adar's patch that regresses
639 2007-03-06 Adar Wesley <adarw@mainsoft.com>
641 * PagesSection.cs: improve Enum parsing and strongly typed default values.
643 2007-02-20 Marek Habersack <grendello@gmail.com>
645 * Patch from Gert Driesen <drieseng@users.sourceforge.net>
646 * PagesSection.cs: Process value of EnableSessionState attribute
647 case-sensitive, and perform check in getter. Fix for bug #80913.
648 * PageParser.cs: Added note on difference in behaviour between page
649 level attribute and configuration attribute for enableSessionState.
650 * PagesConfiguration.cs: Fixed compiler warning.
652 2007-02-22 Marek Habersack <grendello@gmail.com>
654 * CompilerCollection.cs: Optimize language lookup a bit.
656 2007-02-05 Konstantin Triger <kostat@mainsoft.com>
658 * TagPrefixCollection.cs: Fix element key creation.
660 2007-02-04 Konstantin Triger <kostat@mainsoft.com>
662 * NamespaceInfo.cs, HttpModuleAction.cs, RoleManagerSection.cs:
663 fix the default value.
665 2007-02-02 Marek Habersack <grendello@gmail.com>
667 * TagPrefixCollection.cs: Add the CollectionType parameter.
668 Get rid of unnecessary interface references in the class declaration.
669 GetElementKey should return Source which should be unique, unlike TagPrefix.
671 2007-01-04 Konstantin Triger <kostat@mainsoft.com>
673 * ProfileSection.cs: Ensure enabled = true by default; cleanup.
675 2006-12-27 Vladimir Krasnov <vladimirk@mainsoft.com>
677 * CustomErrorCollection.cs: fixed ThrowOnDuplicate to false as in .net
679 2006-12-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
681 * GlobalizationSection.cs: make encodings actually work for the 2.0
684 2006-12-21 Marek Habersack <grendello@gmail.com>
686 * TagMapInfo.cs: Add an internal default constructor for use from
689 * TagMapCollection.cs: Don't call the string,string constructor of
690 TagMapInfo - the class disallows empty strings as values of its
693 2006-12-21 Vladimir Krasnov <vladimirk@mainsoft.com>
695 * RoleManagerSection.cs: refactored using attributes
697 2006-12-20 Marek Habersack <grendello@gmail.com>
699 * ProfilePropertyNameValidator.cs: added a few checks.
701 2006-12-18 Vladimir Krasnov <vladimirk@mainsoft.com>
703 * WebConfigurationManager.cs: fixed GetSection to execute
704 GetRuntimeObject, refactored GetSection and GetWebApplicationSection
706 2006-12-17 Vladimir Krasnov <vladimirk@mainsoft.com>
708 * HttpHandlerAction.cs: fixed 'verb' config property
710 2006-12-07 Igor Zelmanovich <igorz@mainsoft.com>
712 * ProvidersHelper.cs: fixed: load assembles from /bin
714 2006-11-22 Miguel de Icaza <miguel@novell.com>
716 * SessionStateSection.cs: Do not call Enum.Parse with a null
717 argument, prevents an exception from being thrown.
719 2006-11-20 Marek Habersack <grendello@gmail.com>
721 * GlobalizationSection.cs: Added support for "auto" cultures and
722 the "auto:DEFAULT_CULTURE" cultures.
724 2006-11-13 Konstantin Triger <kostat@mainsoft.com>
726 * WebConfigurationHost.cs: use Type.GetType for loading full qualified types.
728 2006-11-05 Vladimir Krasnov <vladimirk@mainsoft.com>
730 * ProfileGroupSettings.cs, ProfileGroupSettingsCollection.cs
731 ProfilePropertySettingsCollection.cs, ProfileSection.cs
732 RootProfilePropertySettingsCollection.cs: refactoring and fix of
735 2006-10-18 Marek Habersack <grendello@gmail.com>
737 * WebConfigurationManager.cs: implement support for extra
738 assemblies to be referenced when compiling a page.
740 2006-09-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
742 * WebConfigurationManager.cs: add null checks. Patch by Marek Habersack
743 that fixes bug #79283.
745 2006-09-06 Konstantin Triger <kostat@mainsoft.com>
747 * WebConfigurationHost.cs: do not recourse as this will be done by
748 Configuration object.
750 2006-08-08 Vladimir Krasnov <vladimirk@mainsoft.com>
752 * WebConfigurationManager.cs: added configSystem property under
754 * WebConfigurationHost.cs: fixed GetStreamName and OpenStreamForRead
756 * CompilationSection.cs: BuildProviders property removed from
758 * SystemWebSectionGroup.cs: Compilation property removed from
761 2006-06-26 Atsushi Enomoto <atsushi@ximian.com>
763 * NullableStringValidator.cs : new internal class that is almost
764 identical to StringValidator but allows null value.
765 * PropertyHelper.cs : use new NullableStringValidator.
766 * NamespaceCollection.cs : in NamespaceInfo "" is not allowed.
768 2006-06-08 Chris Toshok <toshok@ximian.com>
770 * WebConfigurationHost.cs (InitForConfiguration): i know this is
771 going to bite me in the ass, but guard against configPath being ==
772 to "/", since this will result in an infinite loop.
773 (MapPath): fix a NRE.
775 2006-05-18 Atsushi Enomoto <atsushi@ximian.com>
777 * WebConfigurationManager.cs: recent sys.config.dll changes on
778 ConfigurationManager.GetSection() which should call
779 GetRuntimeObject() should also apply here. Fixed monodoc web.
781 2006-05-10 Andrew Skiba <andrews@mainsoft.com>
783 * HttpHandlerAction.cs: keep the internal exception
785 2006-05-08 Chris Toshok <toshok@ximian.com>
787 * WebConfigurationManager.cs (GetBasePath): fix bug where
788 path.Length was 0 when we got to the last while loop (and indexed
789 -1 into an array.) Thanks Marek for the fix.
791 2006-05-04 Chris Toshok <toshok@ximian.com>
795 * WebConfigurationHost.cs (GetConfigType): add a MonoTODO about
796 how we should use the build provider machinery to get types.
797 (MapPath): add rudimentary mapping in the case where we don't have
798 a request, basically handle the case where the url begins with (or
799 is) HttpRuntime.AppDomainAppVirtualPath.
801 * WebConfigurationManager.cs (GetSection): if we don't have a
802 valid request, open the web configuration corresponding to
803 HttpRuntime.AppDomainAppVirtualPath.
804 (GetBasePath): comment this a little, and make it work in the case
805 where we don't have an HttpRequest.
807 2006-04-27 Chris Toshok <toshok@ximian.com>
809 * AuthorizationRuleCollection.cs (ThrowOnDuplicate): for the time
810 being introduce a overridden property MS doesn't make use of.
811 This needs readdressing, but it should get people making use of
812 <authorization> rules working again.
814 2006-04-25 Chris Toshok <toshok@ximian.com>
816 * AuthorizationRule.cs (Reset): finally figure out what this
817 method is supposed to do. Assign our Action property based on
820 2006-04-25 Chris Toshok <toshok@ximian.com>
822 * WebConfigurationHost.cs (InitForConfiguration): actually, use
823 HttpRuntime.AppDomainAppVirtualPath on gonzalo's recommendation.
824 It's never null, and its use cleans things up a bit.
826 2006-04-25 Chris Toshok <toshok@ximian.com>
828 * WebConfigurationHost.cs (InitForConfiguration): stop going up
829 the virtual hierarchy once we reach the application's base virtual
832 2006-04-24 Chris Toshok <toshok@ximian.com>
834 * AuthorizationSection.cs (IsValidUser): fix a problem that
835 surfaced when converting from the 1.1 to 2.0 config classes. Only
836 check for verb match if there are actually verbs to match against.
838 2006-04-11 Chris Toshok <toshok@ximian.com>
840 * ExpressionBuilderCollection.cs (CreateNewElement): call argless
843 * ExpressionBuilder.cs: add internal argumentless ctor for use by
846 2006-03-24 Chris Toshok <toshok@ximian.com>
848 * WebConfigurationManager.cs (GetConfig): add a fallback case for
849 configuration sections that don't subclass from
850 ConfigurationSection.
852 2006-03-24 Chris Toshok <toshok@ximian.com>
854 * WebConfigurationHost.cs: fix bug where OpenWebConfiguration
855 ("/") would result in 2 configurations for that toplevel path to
858 2006-03-08 Chris Toshok <toshok@ximian.com>
860 * ProvidersHelper.cs: implement this static class properly.
862 * SiteMapSection.cs (ProvidersInternal): add internal property to
863 get the actual SiteMapProviderCollection from here.
865 2006-02-28 Chris Toshok <toshok@ximian.com>
867 * BuildProviderAppliesTo.cs, PagesToCountAction.cs: nuke.
869 2006-02-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
872 * CompilerCollection.cs: removed compatibility code.
874 * BuildProviderCollection.cs: add GetProviderForExtension().
876 2006-02-02 Chris Toshok <toshok@ximian.com>
878 * WebConfigurationManager.cs (GetSection(string,string)):
881 2006-02-01 Atsushi Enomoto <atsushi@ximian.com>
883 * TrustLevelCollection.cs, CodeSubDirectoriesCollection.cs,
884 CustomErrorCollection.cs, CompilerCollection.cs,
885 HttpHandlerActionCollection.cs,
886 FormsAuthenticationUserCollection.cs,
887 AuthorizationRuleCollection.cs, TagPrefixCollection.cs :
888 CollectionType is public.
890 2006-02-01 Chris Toshok <toshok@ximian.com>
892 * WebConfigurationManager.cs: In the normal case, get the current
893 request's web.config, not the application's. If there is no
894 current request, get the application's.
895 (GetWebApplicationConfiguration): use Request.ApplicationPath, not
896 Request.PhysicalApplicationPath. OpenWebConfiguration takes
899 * HttpConfigurationSystem.cs: GetWebApplicationSection =>
902 2006-02-01 Chris Toshok <toshok@ximian.com>
904 * CompilerCollection.cs: CONFIGURATION_2_0 => NET_2_0
908 2006-02-01 Chris Toshok <toshok@ximian.com>
910 * HttpConfigurationSystem.cs: SupportsUserConfig == true. let's
911 use this to determine if ConfigurationManager.AppSettings should
914 2006-01-31 Chris Toshok <toshok@ximian.com>
916 * WebConfigurationManager.cs: err, why did i ifdef stuff NET_2_0
917 inside of an ifdef NET_2_0?
919 2006-01-30 Chris Toshok <toshok@ximian.com>
921 * WebConfigurationManager.cs: lots of little changes. hopefully
922 this doesn't break anyone. it fixes all the nunit problems
925 * WebConfigurationHost.cs (GetStreamName): in the MachineWebPath
926 case, handle the case where we have a WebConfigurationFileMap.
927 (MapPath): this is likely wrong, but in the case where we don't
928 have a file map or current HttpContext, just return the path.
930 2006-01-29 Chris Toshok <toshok@ximian.com>
932 * HttpModulesSection.cs (LoadModules): I'm not sure we want to
933 solve this problem in this way, but the 1.x code forces
934 DefaultAuthenticationModule to be in the list of modules..
935 Without this fix (or something else) HttpContext.User is null when
938 2006-01-26 Chris Toshok <toshok@ximian.com>
940 * HttpConfigurationSystem.cs: new class that gets sections from
943 * WebConfigurationManager.cs: change a lot of the
944 NotImplementedExceptions to NotSupportedExceptions.
945 (AppSettings): implement by just returning
946 ConfigurationManager.AppSettings (note this is broken because
947 ConfigurationManager.AppSettings are read-only, but it works for
949 (ConnectionStrings): same (and probably broken in the same way..)
950 (Init): replace the 2.0 IInternalConfigSystem with our
951 HttpConfigurationSystem.
953 * WebConfigurationHost.cs: add a comment about how things are
954 likely to work in the face of IRemoteWebConfigurationHostServer.
955 (CreateConfigurationContext): return a WebContext instance.
957 2006-01-25 Chris Toshok <toshok@ximian.com>
959 * AuthorizationSection.cs (IsValidUser): instead of a blanket
960 false for a null user, just set the username to "" and short
961 circuit out the check for roles.
963 2006-01-25 Chris Toshok <toshok@ximian.com>
965 * AuthorizationRule.cs (CheckUser): handle * and ?, and use
966 String.Compare instead of ==.
967 (CheckVerb): use String.Compare instead of ==.
969 * AuthorizationSection.cs (IsValidUser): return false for a null
972 2006-01-22 Chris Toshok <toshok@ximian.com>
974 * GlobalizationSection.cs (VerifyData): quiet mcs.
976 2006-01-18 Chris Toshok <toshok@ximian.com>
978 * SystemWebSectionGroup.cs: wrap System.Web.Services references in
981 2006-01-16 Chris Toshok <toshok@ximian.com>
983 * WebConfigurationManager.cs: implement a IConfigurationSystem for
984 use with WebConfigurationManager.
985 (GetSection): try to load the section
986 using GetWebApplicationSection before calling into
987 ConfigurationManager.GetSection.
988 (GetWebApplicationConfiguration): move common code to here.
989 (GetWebApplicationSection): use GetWebApplicationConfiguration.
990 (AppSettings): implement.
992 * WebConfigurationHost.cs (GetWebConfigFileName): add
993 "Web.Config", and move to an array/loop implementation. maybe we
994 should scan the directory and check ToLower() instead of
995 explicitly enumerating?
997 2006-01-10 Chris Toshok <toshok@ximian.com>
999 * SystemWebSectionGroup.cs (HostingEnvironment): enable this property.
1000 (ProcessModel): add the ConfigurationPropertyAttribute.
1002 2006-01-10 Chris Toshok <toshok@ximian.com>
1004 * PagesSection.cs (.cctor): fix the default value for the
1005 enableSessionState attribute - it's not a bool, but a
1006 PagesEnableSessionState enum.
1008 2006-01-10 Chris Toshok <toshok@ximian.com>
1010 * MachineKeySection.cs (ValidationKeyBytes, DecryptionKeyBytes,
1011 DecryptionKey192Bits): if the keys are null, generate them. Fixes
1012 Page.EnableViewStateMac support.
1014 2006-01-09 Chris Toshok <toshok@ximian.com>
1016 * RoleManagerSection.cs, SqlCacheDepencendySection.cs,
1017 SessionStateSection.cs, TraceSection.cs, SecurityPolicySection.cs,
1018 PagesSection.cs, RulesSettings.cs, UrlMappingSection.cs: fix
1021 2006-01-09 Chris Toshok <toshok@ximian.com>
1023 * ExpressionBuilderCollection.cs (.cctor): no need to create a
1024 collection property here. we're already in the collection.
1026 * CompilationSection.cs: fix typo.
1028 2006-01-04 Chris Toshok <toshok@ximian.com>
1030 * MachineKeySection.cs: bring over some more internal methods from
1031 MachineKeyConfig, and call Set{Decryption,Validation}Key from
1032 their respective property setters.
1034 2006-01-03 Chris Toshok <toshok@ximian.com>
1036 * AuthorizationSection.cs (IsValidUser): add analogous method from
1037 AuthorizationConfig.cs.
1039 * AuthorizationRule.cs: add predicates for Verb, User, and Role
1040 analogous to what existed in AuthorizationConfig.cs.
1042 2005-12-11 Chris Toshok <toshok@ximian.com>
1044 * WebConfigurationManager.cs (OpenMachineConfiguration): just call
1045 ConfigurationManager.OpenMachineConfiguration.
1046 (OpenWebConfiguration): remove the "IntPtr userToken" version and
1047 add a "string userName" version to clean up corcompare output.
1048 Modify all the overloads to pass null instead of IntPtr.Zero.
1049 (GetWebApplicationSection): if we're not running in a web
1050 application, use the machine configuration.
1052 2005-12-06 Chris Toshok <toshok@ximian.com>
1054 * CodeSubDirectory.cs (DirectoryName): don't use an private field,
1055 but base[directoyNameProp].
1057 * AuthorizationRuleCollection.cs (Add): use BaseAdd (rule, false),
1058 so we can insert duplicates.
1060 (GetElementKey): MS for some reason just uses the action for the
1062 (Remove): pass the correct key.
1064 * ProfileGroupSettings.cs (GetHashCode): implement.
1066 * GlobalizationSection.cs (GetEncoding): for the utf-8 case, just
1069 * AssemblyCollection.cs (Add): use BaseAdd (info, false) so we can
1072 * CacheSection.cs (.cctor): make privateByteLimit's default 0L so
1073 we don't get a invalid cast exception later on.
1075 * AuthorizationRule.cs (VerifyData): split out the verification
1076 foo from PreSerialize.
1077 (PostDeserialize): so we can call it from here.
1078 (PreSerialize): and here.
1080 2005-12-05 Chris Toshok <toshok@ximian.com>
1082 * AuthorizationRuleCollection.cs (GetKey): split out the logic for
1083 creating a key from a rule here.
1084 (GetElementKey): use it here.
1087 2005-12-04 Chris Toshok <toshok@ximian.com>
1089 * UrlMapping.cs: add an internal argument-less ctor.
1091 * UrlMappingCollection.cs (CreateNewElement): use argument-less
1093 (GetKey): implement.
1094 (AllKeys): implement.
1096 * TrustLevel.cs: add an internal argument-less ctor.
1098 * TrustLevelCollection.cs (Set): implement.
1099 (CreateNewElement): use argument-less ctor.
1100 (IsElementName): implement.
1101 (ElementName): implement.
1102 (set_Item (int index)): use Set.
1103 (ThrowOnDuplicate): implement.
1105 * TagPrefixInfo.cs: add internal argument-less ctor.
1107 * TagPrefixCollection.cs (CreateNewElement): call argument-less
1109 (CollectionType): add text to TODO.
1110 (ElementName): implement.
1112 * SqlCacheDependencyDatabaseCollection.cs (Set): implement.
1113 (AllKeys): implement.
1115 * RuleSettings.cs: add internal argument-less ctor.
1117 * RuleSettingsCollection.cs (Contains): implement.
1118 (CreateNewElement): use argument-less ctor.
1119 (IndexOf): implement.
1120 (Insert): implement.
1122 * RootProfilePropertySettingsCollection.cs (IsModified): chain up
1123 to base.IsModified for now.
1124 (Reset): chain up to base.Reset for now.
1125 (ResetModified): chain up to base.ResetModified for now.
1127 * ProfileSettings.cs: add internal argument-less ctor.
1129 * ProfileSettingsCollection.cs (Contains): implement.
1130 (CreateNewElement): use argument-less ctor.
1131 (IndexOf): implement.
1132 (Insert): implement.
1134 * ProfilePropertySettingsCollection.cs (IndexOf): implement.
1136 (AllKeys): implement.
1138 * ProfileGroupSettings.cs: add internal argument-less ctor.
1140 * ProfileGroupSettingsCollection.cs (CreateNewElement): use
1141 parameter-less ctor.
1142 (GetKey): implement.
1143 (ResetModified): for now call base.ResetModified.
1145 (AllKeys): implement.
1147 * OutputCacheProfile.cs: add internal argument-less ctor.
1149 * OutputCacheProfileCollection.cs (CreateNewElement): use
1150 parameter-less ctor.
1152 (AllKeys): implement.
1154 * HttpModuleActionCollection.cs (Add): remove MonoTODO.
1155 (CreateNewElement): same.
1157 * HttpHandlerActionCollection.cs (GetElementKey): build up the key
1158 from both the path and the verb.
1161 * FormsAuthenticationUserCollection.cs (Set): implement.
1162 (AllKeys): implement.
1164 * EventMappingSettings.cs: add an internal argument-less ctor.
1166 * EventMappingSettingsCollection.cs (Contains): implement.
1167 (CreateNewElement): use argument-less ctor.
1168 (IndexOf): implement.
1169 (Insert): implement.
1171 * CompilerCollection.cs (GetKey): implement.
1172 (AllKeys): implement.
1174 * ClientTargetCollection.cs (GetKey): implement.
1175 (AllKeys): implement.
1177 * AuthorizationRuleCollection.cs (Set): implement.
1178 (ElementName): add some text to the MonoTODO.
1179 (set_Item (int index)): use Set.
1181 2005-12-04 Chris Toshok <toshok@ximian.com>
1183 * CustomError.cs: add an internal argument-less ctor for use by
1186 * CustomErrorCollection.cs: implement all the MonoTODO's.
1188 2005-12-02 Chris Toshok <toshok@ximian.com>
1190 * GlobalizationSection.cs (VerifyData): split out the stuff that
1191 used to live in PreSerialize here.
1192 (PreSerialize): call VerifyData here.
1193 (PostDeserialize): and here.
1195 2005-12-01 Chris Toshok <toshok@ximian.com>
1197 * GlobalizationSection.cs (PreSerialize): add checks for Culture
1198 and UICulture properties.
1200 2005-12-01 Chris Toshok <toshok@ximian.com>
1202 * AuthorizationRule.cs (..ctor): provide default values for
1203 roles/users/verbs here. Not sure if we should do this in the ctor
1204 or if the System.Configuration infrastructure should.. time will
1206 (PreSerialize): throw if Roles.Count and Users.Count == 0.
1207 (SerializeElement): write out the element here. don't chain up to
1208 the base class since that has differing behavior than what we
1211 2005-11-30 Chris Toshok <toshok@ximian.com>
1213 * CompilerCollection.cs: ugly hack to fix the
1214 2.0-without-config-2.0 case. wrap this file in #if
1215 CONFIGURATION_2_0 as well as #if NET_2_0.
1217 * Compiler.cs: same.
1219 2005-11-28 Chris Toshok <toshok@ximian.com>
1221 * SessionStateSection.cs (CookieLess): correct the compat function
1224 2005-11-28 Chris Toshok <toshok@ximian.com>
1226 * GlobalizationSection.cs (GetEncoding): if the encoding name is
1227 null, default to utf-8 before we hit the try block, so we don't
1228 throw and generate a spurious warning.
1230 * SessionStateSection.cs: The Cookieless handling needs a custom
1231 parser, it appears, as the converter is a StringConverter, not a
1232 GenericEnumConverter.
1233 (ParseCookieMode): the parser.
1235 2005-11-28 Chris Toshok <toshok@ximian.com>
1237 * PagesSection.cs (GetInstance): nuke.
1239 * CompilationSection.cs (GetInstance): nuke.
1241 2005-11-28 Chris Toshok <toshok@ximian.com>
1243 * HttpHandlerAction.cs: add some c&p code from the 1.1 config
1244 stuff to look for matching handlers.
1245 (..ctor): add parameterless ctor.
1247 * HttpHandlerActionCollection.cs: clean up formatting.
1248 (CreateNewElement): call the parameter-less ctor for
1251 * HttpHandlersSection.cs (..ctor): add a ConfigurationProperty for
1252 the default collection.
1253 (get_Handlers): implement.
1254 (LocateHandler): copy over (and massage) some 1.1 config code.
1256 * MachineKeySection.cs: move some code over from the 1.1 config
1257 code to deal with autogeneration of keys, as well as converting
1258 from the string rep to the byte[] rep.
1260 2005-11-28 Chris Toshok <toshok@ximian.com>
1262 * HttpModuleActionCollection.cs (CreateNewElement): use the new
1263 HttpModuleAction ctor.
1265 * HttpModuleAction.cs: add internal ctor with no parameters, for
1266 use in HttpModuleActionCollection.
1268 2005-11-28 Chris Toshok <toshok@ximian.com>
1270 * GlobalizationSection.cs (..cctor): the encoding
1271 ConfigurationProperties are of type "string", even though the
1272 properties themselves are of type Encoding. we do conversions
1273 manually in the setter/getters. gross. Add code (mostly c&p +
1274 massaged from GlobalizationConfigurationHandler) for this and also
1275 to handle the culture gettes.
1277 2005-11-26 Chris Toshok <toshok@ximian.com>
1279 * AuthorizationRuleCollection.cs (GetElementKey): implement this.
1281 * ProfilePropertyNameValidator.cs: make this internal, and add a
1282 blurb about how MS doesn't do the testing you'd expect them to.
1284 2005-11-25 Chris Toshok <toshok@ximian.com>
1286 * AuthorizationRuleCollection.cs (CreateNewElement): remove
1289 * CompilationSection.cs (GetRuntimeObject): add comment to TODO.
1291 * ProfileGroupSettings.cs: reformat some things.
1293 * FormsAuthenticationUser.cs (Name): remove MonoTODO.
1295 * WebPartsSection.cs (GetRuntimeObject): change TODO comment.
1297 * ProfilePropertySettings.cs: add internal argument-less ctor.
1299 * IdentitySection.cs (GetRuntimeObject): return this.
1301 * ProfilePropertySettingsCollection.cs: implement much of the
1304 * WebControlsSection.cs (GetRuntimeObject): implement.
1306 * SqlCacheDependencyDatabaseCollection.cs (GetElementKey):
1308 (GetKey): implement.
1310 2005-11-24 Chris Toshok <toshok@ximian.com>
1312 * AssemblyInfo.cs: move this here from System.Web.Configuration,
1313 and fix up the properties.
1315 * SystemWebSectionGroup.cs: enable most of the sections (2
1316 remaining to be enabled.)
1318 2005-11-24 Chris Toshok <toshok@ximian.com>
1320 * ProcessModelSection.cs, SqlCacheDependencySection.cs,
1321 SessionStateSection.cs, PassportAuthentication.cs,
1322 FormsAuthenticationConfiguration.cs,
1323 SqlCacheDependencyDatabase.cs, HttpModuleAction.cs,
1324 BufferModeSettings.cs, TagPrefixInfo.cs (..cctor): init
1326 (ValidateElement): new static validator callback.
1327 (ElementProperty): enable this, return elementProperty.
1329 2005-11-23 Chris Toshok <toshok@ximian.com>
1331 * ProfilePropertyNameValidator.cs: new implementation.
1333 * ProfilePropertySettings.cs, ProfileGroupSettings.cs,
1334 ClientTargetSection.cs, ClientTargetSection.cs,
1335 BufferModeSettings.cs, HttpModulesSection.cs,
1336 WebPartsPersonalization.cs, TransformerInfo.cs, TrustLevel.cs,
1337 NamespaceInfo.cs, SqlCacheDependencyDatabase.cs,
1338 AuthenticationSection.cs, RuleSettings.cs,
1339 FormsAuthenticationUser.cs, WebPartsSection.cs, BuildProvider.cs,
1340 WebPartsPersonalizationAuthorization.cs, Compiler.cs,
1341 ExpressionBuilder.cs, OutputCacheProfile.cs,
1342 FormsAuthenticationCredentials.cs, XhtmlConformanceSection.cs,
1343 OutputCacheSettingsSection.cs, CustomError.cs, TraceSection.cs,
1344 ExpressionBuilderCollection.cs, ProfileSettings.cs,
1345 SessionStateSection.cs, HealthMonitoringSection.cs,
1346 FormsAuthenticationConfiguration.cs, HttpRuntimeSection.cs,
1347 SessionPageStateSection.cs, TrustSection.cs,
1348 AnonymousIdentificationSection.cs, WebControlsSection.cs,
1349 ClientTarget.cs, TagMapInfo.cs, AuthorizationSection.cs,
1350 ProcessModelSection.cs, RoleManagerSection.cs,
1351 MembershipSection.cs, CustomErrorsSection.cs (..cctor): fix
1352 validator/converters.
1354 * MachineKeySection.cs (..cctor): fix validators/converters.
1355 (Validation): enable the Converter.
1357 * CodeSubDirectory.cs (..cctor): fix validator/converters.
1358 (DirectoryName): add note about missing validator decoration.
1360 * HttpModuleAction.cs (..cctor): init properties.
1361 (Properties): return properties.
1363 * CompilationSection.cs (..cctor): fix validator/converters.
1364 (GetInstance): add in this pre-2.0 interface for the time being,
1365 hopefully it'll make it easier to migrate later on.
1367 * HttpHandlerActionCollection.cs (..cctor): init properties.
1368 (Properties): return properties.
1370 * PagesSection.cs (..cctor): fix validator/converters.
1371 (GetInstance): add in this pre-2.0 interface for the time being,
1372 hopefully it'll make it easier to migrate later on.
1374 * HttpHandlersSection.cs (..cctor): init properties.
1375 (Properties): return properties.
1377 * EventMappingSettings.cs (..cctor): fix validator/converters.
1378 (Name): add note about missing validator decoration.
1380 * HttpHandlerAction.cs (..cctor): fix validator/converters.
1381 (PAth, Type, Verb): add note about missing validator decoration.
1383 * NamespaceCollection.cs (..cctor): fix properties.
1385 * ProfilePropertySettingsCollection.cs (..cctor): init properties.
1386 (..ctor): don't throw NIE.
1387 (Properties): return properties.
1389 * HttpModuleActionCollection.cs (..cctor): init properties.
1390 (Properties): return properties.
1392 * CacheSection.cs (..cctor): fix validators/converters.
1393 (PrivateBytesPollTime): add note about missing validator
1396 * AuthorizationRule.cs (..cctor): fix validators/converters.
1397 (Roles, Users, Verbs): enable the TypeConverter decorations.
1399 * UrlMapping.cs (ValidateUrl): static method for use as a
1400 validation callback. unimplemented as yet.
1401 (..cctor): fix validators/converters.
1402 (MappedUrl): add note about missing validator decoration.
1404 * PropertyHelper.cs: static utility class which contains
1405 references to validators and converters for use in static
1406 constructors (building the Properties arrays).
1408 2005-11-23 Chris Toshok <toshok@ximian.com>
1410 * MachineKeyValidationConverter.cs: new converter (and a pretty
1411 silly one, considering all it seems to do is convert "TripleDES"
1414 * HostingEnvironmentSection.cs (.cctor): use
1415 PositiveTimeSpanValidator like MS does.
1417 2005-11-18 Chris Toshok <toshok@ximian.com>
1419 * HostingEnvironmentSection.cs (.cctor): add validators.
1421 * CompilationSection.cs (.cctor): fix defaultvalue of
1424 2005-11-18 Chris Toshok <toshok@ximian.com>
1426 * SystemWebSectionGroup.cs: enable a whole slew of properties.
1428 * RegexWorker.cs: stub this out.
1430 * HttpCapabilitiesBase.cs: remove GetClrVersions since it's in one
1431 of the other partial files.
1433 * CompilationSection.cs: fix this up.
1435 * PagesSection.cs: fix some types and add a comment to
1438 * CompilerCollection.cs (Add): new internal method.
1440 * ProvidersHelper.cs: put the using System.Configuration.Provider
1441 inside the NET_2_0 block.
1443 * CacheSection.cs: add validators.
1445 2005-11-14 Chris Toshok <toshok@ximian.com>
1447 * BufferModeSettings.cs: add validators/converters to the
1448 programmatic property list.
1450 * BuildProvider.cs: add validators/converters to the programmatic
1451 property list, and add an internal ctor with no args.
1453 * Compiler.cs: wrap the code i hacked from the 1.1 stuff with a
1456 * BuildProviderCollection.cs (CreateNewElement): use the internal
1457 BuildProvider ctor to get around validation.
1459 * AssemblyCollection.cs: same.
1461 2005-11-14 Chris Toshok <toshok@ximian.com>
1463 * TagPrefixCollection.cs (Remove): pass the key to BaseRemove.
1464 (set_Item (int index)): implement.
1466 * TagPrefixInfo.cs (Equals): implement.
1467 (GetHashCode): implement.
1469 * AuthorizationRuleCollection.cs (CreateNewElement(string)):
1470 implement propertly.
1471 (IndexOf): implement.
1472 (IsElementName): implement.
1473 (ElementName): implement.
1474 (Item (int index)): implement.
1476 * FormsAuthenticationUserCollection.cs (set_Item (int index)): implement.
1478 * UrlMappingCollection.cs (set_Item (int index)): implement.
1480 * OutputCacheProfileCollection.cs (set_Item (int index)): implement.
1482 * TransformerInfo.cs (Equals): implement.
1483 (GetHashCode): implement.
1485 * NamespaceInfo.cs (Equals): implement.
1486 (GetHashCode): implement.
1488 * ProfileSettingsCollection.cs (set_Item (int index)): implement.
1490 * TransformerInfoCollection.cs (set_Item (int index)): implement.
1492 * HttpHandlerActionCollection.cs (set_Item (int index)): implement.
1494 * BufferModesCollection.cs (set_Item (int index)): implement.
1496 * BuildProvider.cs: use the base[fooProp] pattern instead of
1499 * ProfileGroupSettingsCollection.cs: implement most of this class.
1501 * RuleSettingsCollection.cs (set_Item (int index)): implement.
1503 * ClientTargetCollection.cs (set_Item (int index)): implement.
1505 * AssemblyCollection.cs (set_Item (int index)): implement.
1507 * BuildProviderCollection.cs (set_Item (int index)): reformat.
1509 * CustomError.cs (Equals): implement.
1510 (GetHashCode): implement.
1512 * ExpressionBuilderCollection.cs (set_Item (int index)): reformat.
1514 * PassportAuthentication.cs (RedirectUrl): express consternation
1517 * NamespaceCollection.cs (set_Item (int index)): implement.
1519 * RootProfilePropertySettingsCollection.cs (SerializeElement): add
1522 * ProfilePropertySettingsCollection.cs (set_Item (int index)):
1525 * CustomErrorCollection.cs (set_Item (int index)): implement.
1527 * HttpModuleActionCollection.cs (set_Item (int index)): implement.
1529 * CodeSubDirectoriesCollection.cs (set_Item (int index)):
1532 * CustomErrorsSection.cs (DeserializeSection): include call to
1533 base.DeserializeSection, and add MonoTODO.
1535 * EventMappingSettingsCollection.cs (set_Item (int index)):
1538 * AuthorizationRule.cs (Equals): implement.
1539 (GetHashCode): implement.
1540 (SerializeElement): add comment.
1542 * TagMapCollection.cs (Remove): pass the key to BaseRemove.
1543 (set_Item (int index)): implement.
1545 * TagMapInfo.cs (Equals): implement.
1546 (GetHashCode): implement.
1547 (SerializeElement): add call to base.SerializeElement.
1549 * TrustLevelCollection.cs (Remove): pass the key to BaseRemove.
1550 (GetElementKey): implement.
1552 * SqlCacheDependencyDatabase.cs (set_Item (int index)): implement.
1554 * WebContext.cs: new implementation.
1556 2005-11-13 Chris Toshok <toshok@ximian.com>
1558 * AnonymousIdentificationSection.cs: rework this class a bit to
1559 fit in with the rest of S.W.C. Add validators to the
1560 ConfigurationProperty ctor calls, a pattern which will need to be
1561 replicated across the entire assembly, it appears (uggggh).
1563 2005-11-13 Chris Toshok <toshok@ximian.com>
1565 * AuthorizationRuleCollection.cs: fix ConfigurationCollection
1568 * TransformerInfo.cs: fix corcompare.
1570 * SqlCacheDependencyDatabase.cs: mark ctor internal to fix
1573 * AuthenticationSection.cs: add missing Reset stub.
1575 * ProfileSettingsCollection.cs: use the more succint ctor.
1577 * FormsAuthenticationUser.cs: enable the TypeConverter on "name".
1579 * GlobalizationSection.cs: fix up corcompare.
1581 * WebPartsSection.cs: fix up corcompare.
1583 * ProfileGroupSettingsCollection.cs: add missing
1584 ConfigurationCollection attribute.
1586 * ExpressionBuilder.cs: implement.
1588 * FormsAuthenticationCredentials.cs: fix up corcompare.
1590 * AssemblyCollection.cs: implement Properties.
1592 * SiteMapSection.cs: implement Properties.
1594 * ExpressionBuilderCollection.cs: fix up corcompare.
1596 * ProfileSettings.cs: add missing ctor.
1598 * PassportAuthentication.cs: new implementation.
1600 * SqlCacheDependencySection.cs: fix up corcompare.
1602 * ProfilePropertySettingsCollection.cs: fix up corcompare.
1604 * HttpModuleActionCollection.cs: fix up corcompare.
1606 * EventMappingSettingsCollection.cs: fix up corcompare.
1608 * AuthorizationRule.cs: fix up corcompare.
1610 * WebControlsSection.cs: fix up corcompare.
1612 * AuthorizationSection.cs: fix up corcompare.
1614 * MembershipSection.cs: clean this up, implement Properties, fix
1617 2005-11-13 Chris Toshok <toshok@ximian.com>
1619 * UrlMapping.cs, CustomErrorCollection.cs, CustomError.cs,
1620 HostingEnvironmentSection.cs, TrustLevel.cs,
1621 HttpCookiesSection.cs, UrlMappingsSection.cs,
1622 UrlMappingCollection.cs, LowerCaseStringConverter.cs,
1623 RoleManagerSection.cs, ProcessModelSection.cs,
1624 TrustLevelCollection.cs, ClientTarget.cs, CustomErrorsSection.cs,
1625 MachineKeySection.cs, SessionPageStateSection.cs,
1626 SessionStateSection.cs, ProvidersHelper.cs,
1627 ClientTargetCollection.cs, SecurityPolicySection.cs,
1628 HttpCapabilitiesBase.cs, ClientTargetSection.cs: Another large
1632 2005-11-12 Chris Toshok <toshok@ximian.com>
1634 * AuthorizationRuleCollection.cs, AuthorizationRule.cs,
1635 AuthorizationSection.cs, BufferModesCollection.cs,
1636 BufferModeSettings.cs, CacheSection.cs, CompilerCollection.cs,
1637 Compiler.cs, DeploymentSection.cs,
1638 EventMappingSettingsCollection.cs, EventMappingSettings.cs,
1639 GlobalizationSection.cs, HealthMonitoringSection.cs,
1640 IdentitySection.cs, OutputCacheProfileCollection.cs,
1641 OutputCacheProfile.cs, OutputCacheSection.cs,
1642 OutputCacheSettingsSection.cs, ProfileSettingsCollection.cs,
1643 ProfileSettings.cs, RuleSettingsCollection.cs, RuleSettings.cs,
1644 SqlCacheDependencyDatabaseCollection.cs,
1645 SqlCacheDependencyDatabase.cs, SqlCacheDependencySection.cs,
1646 SystemWebCachingSectionGroup.cs, TraceSection.cs,
1647 TransformerInfoCollection.cs, TransformerInfo.cs, TrustSection.cs,
1648 WebControlsSection.cs, WebPartsPersonalizationAuthorization.cs,
1649 WebPartsPersonalization.cs, WebPartsSection.cs,
1650 XhtmlConformanceSection.cs: a whole slew of new classes. the
1651 fruits of tons of c&p and ibuprofen.
1654 2005-11-09 Chris Toshok <toshok@ximian.com>
1656 * PagesSection.cs, AuthenticationSection.cs, BuildProvider.cs,
1657 BuildProviderCollection.cs, HttpHandlerActionCollection.cs,
1658 HttpModulesSection.cs, HttpModuleAction.cs,
1659 HttpModuleActionCollection.cs, AnonymousIdentificationSection.cs,
1660 CodeSubDirectory.cs, CodeSubDirectoriesCollection.cs,
1661 SystemWebSectionGroup.cs, SiteMapSection.cs,
1662 WebConfigurationManager.cs: flesh out the implementation.
1664 * TagMap*.cs, TagPrefix*.cs: new implementation.
1666 * FormsAuthentication*.cs: new implementation.
1668 * Profile*.cs: new implementation.
1670 * Namespace*.cs: new implementation.
1672 * HttpRuntimeSection.cs: new implementation.