1 2006-01-03 Chris Toshok <toshok@ximian.com>
3 * AuthorizationSection.cs (IsValidUser): add analogous method from
4 AuthorizationConfig.cs.
6 * AuthorizationRule.cs: add predicates for Verb, User, and Role
7 analogous to what existed in AuthorizationConfig.cs.
9 2005-12-11 Chris Toshok <toshok@ximian.com>
11 * WebConfigurationManager.cs (OpenMachineConfiguration): just call
12 ConfigurationManager.OpenMachineConfiguration.
13 (OpenWebConfiguration): remove the "IntPtr userToken" version and
14 add a "string userName" version to clean up corcompare output.
15 Modify all the overloads to pass null instead of IntPtr.Zero.
16 (GetWebApplicationSection): if we're not running in a web
17 application, use the machine configuration.
19 2005-12-06 Chris Toshok <toshok@ximian.com>
21 * CodeSubDirectory.cs (DirectoryName): don't use an private field,
22 but base[directoyNameProp].
24 * AuthorizationRuleCollection.cs (Add): use BaseAdd (rule, false),
25 so we can insert duplicates.
27 (GetElementKey): MS for some reason just uses the action for the
29 (Remove): pass the correct key.
31 * ProfileGroupSettings.cs (GetHashCode): implement.
33 * GlobalizationSection.cs (GetEncoding): for the utf-8 case, just
36 * AssemblyCollection.cs (Add): use BaseAdd (info, false) so we can
39 * CacheSection.cs (.cctor): make privateByteLimit's default 0L so
40 we don't get a invalid cast exception later on.
42 * AuthorizationRule.cs (VerifyData): split out the verification
43 foo from PreSerialize.
44 (PostDeserialize): so we can call it from here.
45 (PreSerialize): and here.
47 2005-12-05 Chris Toshok <toshok@ximian.com>
49 * AuthorizationRuleCollection.cs (GetKey): split out the logic for
50 creating a key from a rule here.
51 (GetElementKey): use it here.
54 2005-12-04 Chris Toshok <toshok@ximian.com>
56 * UrlMapping.cs: add an internal argument-less ctor.
58 * UrlMappingCollection.cs (CreateNewElement): use argument-less
63 * TrustLevel.cs: add an internal argument-less ctor.
65 * TrustLevelCollection.cs (Set): implement.
66 (CreateNewElement): use argument-less ctor.
67 (IsElementName): implement.
68 (ElementName): implement.
69 (set_Item (int index)): use Set.
70 (ThrowOnDuplicate): implement.
72 * TagPrefixInfo.cs: add internal argument-less ctor.
74 * TagPrefixCollection.cs (CreateNewElement): call argument-less
76 (CollectionType): add text to TODO.
77 (ElementName): implement.
79 * SqlCacheDependencyDatabaseCollection.cs (Set): implement.
82 * RuleSettings.cs: add internal argument-less ctor.
84 * RuleSettingsCollection.cs (Contains): implement.
85 (CreateNewElement): use argument-less ctor.
89 * RootProfilePropertySettingsCollection.cs (IsModified): chain up
90 to base.IsModified for now.
91 (Reset): chain up to base.Reset for now.
92 (ResetModified): chain up to base.ResetModified for now.
94 * ProfileSettings.cs: add internal argument-less ctor.
96 * ProfileSettingsCollection.cs (Contains): implement.
97 (CreateNewElement): use argument-less ctor.
101 * ProfilePropertySettingsCollection.cs (IndexOf): implement.
103 (AllKeys): implement.
105 * ProfileGroupSettings.cs: add internal argument-less ctor.
107 * ProfileGroupSettingsCollection.cs (CreateNewElement): use
110 (ResetModified): for now call base.ResetModified.
112 (AllKeys): implement.
114 * OutputCacheProfile.cs: add internal argument-less ctor.
116 * OutputCacheProfileCollection.cs (CreateNewElement): use
119 (AllKeys): implement.
121 * HttpModuleActionCollection.cs (Add): remove MonoTODO.
122 (CreateNewElement): same.
124 * HttpHandlerActionCollection.cs (GetElementKey): build up the key
125 from both the path and the verb.
128 * FormsAuthenticationUserCollection.cs (Set): implement.
129 (AllKeys): implement.
131 * EventMappingSettings.cs: add an internal argument-less ctor.
133 * EventMappingSettingsCollection.cs (Contains): implement.
134 (CreateNewElement): use argument-less ctor.
135 (IndexOf): implement.
138 * CompilerCollection.cs (GetKey): implement.
139 (AllKeys): implement.
141 * ClientTargetCollection.cs (GetKey): implement.
142 (AllKeys): implement.
144 * AuthorizationRuleCollection.cs (Set): implement.
145 (ElementName): add some text to the MonoTODO.
146 (set_Item (int index)): use Set.
148 2005-12-04 Chris Toshok <toshok@ximian.com>
150 * CustomError.cs: add an internal argument-less ctor for use by
153 * CustomErrorCollection.cs: implement all the MonoTODO's.
155 2005-12-02 Chris Toshok <toshok@ximian.com>
157 * GlobalizationSection.cs (VerifyData): split out the stuff that
158 used to live in PreSerialize here.
159 (PreSerialize): call VerifyData here.
160 (PostDeserialize): and here.
162 2005-12-01 Chris Toshok <toshok@ximian.com>
164 * GlobalizationSection.cs (PreSerialize): add checks for Culture
165 and UICulture properties.
167 2005-12-01 Chris Toshok <toshok@ximian.com>
169 * AuthorizationRule.cs (..ctor): provide default values for
170 roles/users/verbs here. Not sure if we should do this in the ctor
171 or if the System.Configuration infrastructure should.. time will
173 (PreSerialize): throw if Roles.Count and Users.Count == 0.
174 (SerializeElement): write out the element here. don't chain up to
175 the base class since that has differing behavior than what we
178 2005-11-30 Chris Toshok <toshok@ximian.com>
180 * CompilerCollection.cs: ugly hack to fix the
181 2.0-without-config-2.0 case. wrap this file in #if
182 CONFIGURATION_2_0 as well as #if NET_2_0.
186 2005-11-28 Chris Toshok <toshok@ximian.com>
188 * SessionStateSection.cs (CookieLess): correct the compat function
191 2005-11-28 Chris Toshok <toshok@ximian.com>
193 * GlobalizationSection.cs (GetEncoding): if the encoding name is
194 null, default to utf-8 before we hit the try block, so we don't
195 throw and generate a spurious warning.
197 * SessionStateSection.cs: The Cookieless handling needs a custom
198 parser, it appears, as the converter is a StringConverter, not a
199 GenericEnumConverter.
200 (ParseCookieMode): the parser.
202 2005-11-28 Chris Toshok <toshok@ximian.com>
204 * PagesSection.cs (GetInstance): nuke.
206 * CompilationSection.cs (GetInstance): nuke.
208 2005-11-28 Chris Toshok <toshok@ximian.com>
210 * HttpHandlerAction.cs: add some c&p code from the 1.1 config
211 stuff to look for matching handlers.
212 (..ctor): add parameterless ctor.
214 * HttpHandlerActionCollection.cs: clean up formatting.
215 (CreateNewElement): call the parameter-less ctor for
218 * HttpHandlersSection.cs (..ctor): add a ConfigurationProperty for
219 the default collection.
220 (get_Handlers): implement.
221 (LocateHandler): copy over (and massage) some 1.1 config code.
223 * MachineKeySection.cs: move some code over from the 1.1 config
224 code to deal with autogeneration of keys, as well as converting
225 from the string rep to the byte[] rep.
227 2005-11-28 Chris Toshok <toshok@ximian.com>
229 * HttpModuleActionCollection.cs (CreateNewElement): use the new
230 HttpModuleAction ctor.
232 * HttpModuleAction.cs: add internal ctor with no parameters, for
233 use in HttpModuleActionCollection.
235 2005-11-28 Chris Toshok <toshok@ximian.com>
237 * GlobalizationSection.cs (..cctor): the encoding
238 ConfigurationProperties are of type "string", even though the
239 properties themselves are of type Encoding. we do conversions
240 manually in the setter/getters. gross. Add code (mostly c&p +
241 massaged from GlobalizationConfigurationHandler) for this and also
242 to handle the culture gettes.
244 2005-11-26 Chris Toshok <toshok@ximian.com>
246 * AuthorizationRuleCollection.cs (GetElementKey): implement this.
248 * ProfilePropertyNameValidator.cs: make this internal, and add a
249 blurb about how MS doesn't do the testing you'd expect them to.
251 2005-11-25 Chris Toshok <toshok@ximian.com>
253 * AuthorizationRuleCollection.cs (CreateNewElement): remove
256 * CompilationSection.cs (GetRuntimeObject): add comment to TODO.
258 * ProfileGroupSettings.cs: reformat some things.
260 * FormsAuthenticationUser.cs (Name): remove MonoTODO.
262 * WebPartsSection.cs (GetRuntimeObject): change TODO comment.
264 * ProfilePropertySettings.cs: add internal argument-less ctor.
266 * IdentitySection.cs (GetRuntimeObject): return this.
268 * ProfilePropertySettingsCollection.cs: implement much of the
271 * WebControlsSection.cs (GetRuntimeObject): implement.
273 * SqlCacheDependencyDatabaseCollection.cs (GetElementKey):
277 2005-11-24 Chris Toshok <toshok@ximian.com>
279 * AssemblyInfo.cs: move this here from System.Web.Configuration,
280 and fix up the properties.
282 * SystemWebSectionGroup.cs: enable most of the sections (2
283 remaining to be enabled.)
285 2005-11-24 Chris Toshok <toshok@ximian.com>
287 * ProcessModelSection.cs, SqlCacheDependencySection.cs,
288 SessionStateSection.cs, PassportAuthentication.cs,
289 FormsAuthenticationConfiguration.cs,
290 SqlCacheDependencyDatabase.cs, HttpModuleAction.cs,
291 BufferModeSettings.cs, TagPrefixInfo.cs (..cctor): init
293 (ValidateElement): new static validator callback.
294 (ElementProperty): enable this, return elementProperty.
296 2005-11-23 Chris Toshok <toshok@ximian.com>
298 * ProfilePropertyNameValidator.cs: new implementation.
300 * ProfilePropertySettings.cs, ProfileGroupSettings.cs,
301 ClientTargetSection.cs, ClientTargetSection.cs,
302 BufferModeSettings.cs, HttpModulesSection.cs,
303 WebPartsPersonalization.cs, TransformerInfo.cs, TrustLevel.cs,
304 NamespaceInfo.cs, SqlCacheDependencyDatabase.cs,
305 AuthenticationSection.cs, RuleSettings.cs,
306 FormsAuthenticationUser.cs, WebPartsSection.cs, BuildProvider.cs,
307 WebPartsPersonalizationAuthorization.cs, Compiler.cs,
308 ExpressionBuilder.cs, OutputCacheProfile.cs,
309 FormsAuthenticationCredentials.cs, XhtmlConformanceSection.cs,
310 OutputCacheSettingsSection.cs, CustomError.cs, TraceSection.cs,
311 ExpressionBuilderCollection.cs, ProfileSettings.cs,
312 SessionStateSection.cs, HealthMonitoringSection.cs,
313 FormsAuthenticationConfiguration.cs, HttpRuntimeSection.cs,
314 SessionPageStateSection.cs, TrustSection.cs,
315 AnonymousIdentificationSection.cs, WebControlsSection.cs,
316 ClientTarget.cs, TagMapInfo.cs, AuthorizationSection.cs,
317 ProcessModelSection.cs, RoleManagerSection.cs,
318 MembershipSection.cs, CustomErrorsSection.cs (..cctor): fix
319 validator/converters.
321 * MachineKeySection.cs (..cctor): fix validators/converters.
322 (Validation): enable the Converter.
324 * CodeSubDirectory.cs (..cctor): fix validator/converters.
325 (DirectoryName): add note about missing validator decoration.
327 * HttpModuleAction.cs (..cctor): init properties.
328 (Properties): return properties.
330 * CompilationSection.cs (..cctor): fix validator/converters.
331 (GetInstance): add in this pre-2.0 interface for the time being,
332 hopefully it'll make it easier to migrate later on.
334 * HttpHandlerActionCollection.cs (..cctor): init properties.
335 (Properties): return properties.
337 * PagesSection.cs (..cctor): fix validator/converters.
338 (GetInstance): add in this pre-2.0 interface for the time being,
339 hopefully it'll make it easier to migrate later on.
341 * HttpHandlersSection.cs (..cctor): init properties.
342 (Properties): return properties.
344 * EventMappingSettings.cs (..cctor): fix validator/converters.
345 (Name): add note about missing validator decoration.
347 * HttpHandlerAction.cs (..cctor): fix validator/converters.
348 (PAth, Type, Verb): add note about missing validator decoration.
350 * NamespaceCollection.cs (..cctor): fix properties.
352 * ProfilePropertySettingsCollection.cs (..cctor): init properties.
353 (..ctor): don't throw NIE.
354 (Properties): return properties.
356 * HttpModuleActionCollection.cs (..cctor): init properties.
357 (Properties): return properties.
359 * CacheSection.cs (..cctor): fix validators/converters.
360 (PrivateBytesPollTime): add note about missing validator
363 * AuthorizationRule.cs (..cctor): fix validators/converters.
364 (Roles, Users, Verbs): enable the TypeConverter decorations.
366 * UrlMapping.cs (ValidateUrl): static method for use as a
367 validation callback. unimplemented as yet.
368 (..cctor): fix validators/converters.
369 (MappedUrl): add note about missing validator decoration.
371 * PropertyHelper.cs: static utility class which contains
372 references to validators and converters for use in static
373 constructors (building the Properties arrays).
375 2005-11-23 Chris Toshok <toshok@ximian.com>
377 * MachineKeyValidationConverter.cs: new converter (and a pretty
378 silly one, considering all it seems to do is convert "TripleDES"
381 * HostingEnvironmentSection.cs (.cctor): use
382 PositiveTimeSpanValidator like MS does.
384 2005-11-18 Chris Toshok <toshok@ximian.com>
386 * HostingEnvironmentSection.cs (.cctor): add validators.
388 * CompilationSection.cs (.cctor): fix defaultvalue of
391 2005-11-18 Chris Toshok <toshok@ximian.com>
393 * SystemWebSectionGroup.cs: enable a whole slew of properties.
395 * RegexWorker.cs: stub this out.
397 * HttpCapabilitiesBase.cs: remove GetClrVersions since it's in one
398 of the other partial files.
400 * CompilationSection.cs: fix this up.
402 * PagesSection.cs: fix some types and add a comment to
405 * CompilerCollection.cs (Add): new internal method.
407 * ProvidersHelper.cs: put the using System.Configuration.Provider
408 inside the NET_2_0 block.
410 * CacheSection.cs: add validators.
412 2005-11-14 Chris Toshok <toshok@ximian.com>
414 * BufferModeSettings.cs: add validators/converters to the
415 programmatic property list.
417 * BuildProvider.cs: add validators/converters to the programmatic
418 property list, and add an internal ctor with no args.
420 * Compiler.cs: wrap the code i hacked from the 1.1 stuff with a
423 * BuildProviderCollection.cs (CreateNewElement): use the internal
424 BuildProvider ctor to get around validation.
426 * AssemblyCollection.cs: same.
428 2005-11-14 Chris Toshok <toshok@ximian.com>
430 * TagPrefixCollection.cs (Remove): pass the key to BaseRemove.
431 (set_Item (int index)): implement.
433 * TagPrefixInfo.cs (Equals): implement.
434 (GetHashCode): implement.
436 * AuthorizationRuleCollection.cs (CreateNewElement(string)):
438 (IndexOf): implement.
439 (IsElementName): implement.
440 (ElementName): implement.
441 (Item (int index)): implement.
443 * FormsAuthenticationUserCollection.cs (set_Item (int index)): implement.
445 * UrlMappingCollection.cs (set_Item (int index)): implement.
447 * OutputCacheProfileCollection.cs (set_Item (int index)): implement.
449 * TransformerInfo.cs (Equals): implement.
450 (GetHashCode): implement.
452 * NamespaceInfo.cs (Equals): implement.
453 (GetHashCode): implement.
455 * ProfileSettingsCollection.cs (set_Item (int index)): implement.
457 * TransformerInfoCollection.cs (set_Item (int index)): implement.
459 * HttpHandlerActionCollection.cs (set_Item (int index)): implement.
461 * BufferModesCollection.cs (set_Item (int index)): implement.
463 * BuildProvider.cs: use the base[fooProp] pattern instead of
466 * ProfileGroupSettingsCollection.cs: implement most of this class.
468 * RuleSettingsCollection.cs (set_Item (int index)): implement.
470 * ClientTargetCollection.cs (set_Item (int index)): implement.
472 * AssemblyCollection.cs (set_Item (int index)): implement.
474 * BuildProviderCollection.cs (set_Item (int index)): reformat.
476 * CustomError.cs (Equals): implement.
477 (GetHashCode): implement.
479 * ExpressionBuilderCollection.cs (set_Item (int index)): reformat.
481 * PassportAuthentication.cs (RedirectUrl): express consternation
484 * NamespaceCollection.cs (set_Item (int index)): implement.
486 * RootProfilePropertySettingsCollection.cs (SerializeElement): add
489 * ProfilePropertySettingsCollection.cs (set_Item (int index)):
492 * CustomErrorCollection.cs (set_Item (int index)): implement.
494 * HttpModuleActionCollection.cs (set_Item (int index)): implement.
496 * CodeSubDirectoriesCollection.cs (set_Item (int index)):
499 * CustomErrorsSection.cs (DeserializeSection): include call to
500 base.DeserializeSection, and add MonoTODO.
502 * EventMappingSettingsCollection.cs (set_Item (int index)):
505 * AuthorizationRule.cs (Equals): implement.
506 (GetHashCode): implement.
507 (SerializeElement): add comment.
509 * TagMapCollection.cs (Remove): pass the key to BaseRemove.
510 (set_Item (int index)): implement.
512 * TagMapInfo.cs (Equals): implement.
513 (GetHashCode): implement.
514 (SerializeElement): add call to base.SerializeElement.
516 * TrustLevelCollection.cs (Remove): pass the key to BaseRemove.
517 (GetElementKey): implement.
519 * SqlCacheDependencyDatabase.cs (set_Item (int index)): implement.
521 * WebContext.cs: new implementation.
523 2005-11-13 Chris Toshok <toshok@ximian.com>
525 * AnonymousIdentificationSection.cs: rework this class a bit to
526 fit in with the rest of S.W.C. Add validators to the
527 ConfigurationProperty ctor calls, a pattern which will need to be
528 replicated across the entire assembly, it appears (uggggh).
530 2005-11-13 Chris Toshok <toshok@ximian.com>
532 * AuthorizationRuleCollection.cs: fix ConfigurationCollection
535 * TransformerInfo.cs: fix corcompare.
537 * SqlCacheDependencyDatabase.cs: mark ctor internal to fix
540 * AuthenticationSection.cs: add missing Reset stub.
542 * ProfileSettingsCollection.cs: use the more succint ctor.
544 * FormsAuthenticationUser.cs: enable the TypeConverter on "name".
546 * GlobalizationSection.cs: fix up corcompare.
548 * WebPartsSection.cs: fix up corcompare.
550 * ProfileGroupSettingsCollection.cs: add missing
551 ConfigurationCollection attribute.
553 * ExpressionBuilder.cs: implement.
555 * FormsAuthenticationCredentials.cs: fix up corcompare.
557 * AssemblyCollection.cs: implement Properties.
559 * SiteMapSection.cs: implement Properties.
561 * ExpressionBuilderCollection.cs: fix up corcompare.
563 * ProfileSettings.cs: add missing ctor.
565 * PassportAuthentication.cs: new implementation.
567 * SqlCacheDependencySection.cs: fix up corcompare.
569 * ProfilePropertySettingsCollection.cs: fix up corcompare.
571 * HttpModuleActionCollection.cs: fix up corcompare.
573 * EventMappingSettingsCollection.cs: fix up corcompare.
575 * AuthorizationRule.cs: fix up corcompare.
577 * WebControlsSection.cs: fix up corcompare.
579 * AuthorizationSection.cs: fix up corcompare.
581 * MembershipSection.cs: clean this up, implement Properties, fix
584 2005-11-13 Chris Toshok <toshok@ximian.com>
586 * UrlMapping.cs, CustomErrorCollection.cs, CustomError.cs,
587 HostingEnvironmentSection.cs, TrustLevel.cs,
588 HttpCookiesSection.cs, UrlMappingsSection.cs,
589 UrlMappingCollection.cs, LowerCaseStringConverter.cs,
590 RoleManagerSection.cs, ProcessModelSection.cs,
591 TrustLevelCollection.cs, ClientTarget.cs, CustomErrorsSection.cs,
592 MachineKeySection.cs, SessionPageStateSection.cs,
593 SessionStateSection.cs, ProvidersHelper.cs,
594 ClientTargetCollection.cs, SecurityPolicySection.cs,
595 HttpCapabilitiesBase.cs, ClientTargetSection.cs: Another large
599 2005-11-12 Chris Toshok <toshok@ximian.com>
601 * AuthorizationRuleCollection.cs, AuthorizationRule.cs,
602 AuthorizationSection.cs, BufferModesCollection.cs,
603 BufferModeSettings.cs, CacheSection.cs, CompilerCollection.cs,
604 Compiler.cs, DeploymentSection.cs,
605 EventMappingSettingsCollection.cs, EventMappingSettings.cs,
606 GlobalizationSection.cs, HealthMonitoringSection.cs,
607 IdentitySection.cs, OutputCacheProfileCollection.cs,
608 OutputCacheProfile.cs, OutputCacheSection.cs,
609 OutputCacheSettingsSection.cs, ProfileSettingsCollection.cs,
610 ProfileSettings.cs, RuleSettingsCollection.cs, RuleSettings.cs,
611 SqlCacheDependencyDatabaseCollection.cs,
612 SqlCacheDependencyDatabase.cs, SqlCacheDependencySection.cs,
613 SystemWebCachingSectionGroup.cs, TraceSection.cs,
614 TransformerInfoCollection.cs, TransformerInfo.cs, TrustSection.cs,
615 WebControlsSection.cs, WebPartsPersonalizationAuthorization.cs,
616 WebPartsPersonalization.cs, WebPartsSection.cs,
617 XhtmlConformanceSection.cs: a whole slew of new classes. the
618 fruits of tons of c&p and ibuprofen.
621 2005-11-09 Chris Toshok <toshok@ximian.com>
623 * PagesSection.cs, AuthenticationSection.cs, BuildProvider.cs,
624 BuildProviderCollection.cs, HttpHandlerActionCollection.cs,
625 HttpModulesSection.cs, HttpModuleAction.cs,
626 HttpModuleActionCollection.cs, AnonymousIdentificationSection.cs,
627 CodeSubDirectory.cs, CodeSubDirectoriesCollection.cs,
628 SystemWebSectionGroup.cs, SiteMapSection.cs,
629 WebConfigurationManager.cs: flesh out the implementation.
631 * TagMap*.cs, TagPrefix*.cs: new implementation.
633 * FormsAuthentication*.cs: new implementation.
635 * Profile*.cs: new implementation.
637 * Namespace*.cs: new implementation.
639 * HttpRuntimeSection.cs: new implementation.