ServiceModelSectionGroup.cs 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. //------------------------------------------------------------------------------
  2. // Copyright (c) Microsoft Corporation. All rights reserved.
  3. //------------------------------------------------------------------------------
  4. namespace System.ServiceModel.Configuration
  5. {
  6. using System.Configuration;
  7. using System.ServiceModel.Channels;
  8. using System.ServiceModel;
  9. public sealed class ServiceModelSectionGroup : ConfigurationSectionGroup
  10. {
  11. public ServiceModelSectionGroup() { }
  12. public BehaviorsSection Behaviors
  13. {
  14. get { return (BehaviorsSection)this.Sections[ConfigurationStrings.BehaviorsSectionName]; }
  15. }
  16. public BindingsSection Bindings
  17. {
  18. get { return (BindingsSection)this.Sections[ConfigurationStrings.BindingsSectionGroupName]; }
  19. }
  20. public ClientSection Client
  21. {
  22. get { return (ClientSection)this.Sections[ConfigurationStrings.ClientSectionName]; }
  23. }
  24. public ComContractsSection ComContracts
  25. {
  26. get { return (ComContractsSection)this.Sections[ConfigurationStrings.ComContractsSectionName]; }
  27. }
  28. public CommonBehaviorsSection CommonBehaviors
  29. {
  30. get { return (CommonBehaviorsSection)this.Sections[ConfigurationStrings.CommonBehaviorsSectionName]; }
  31. }
  32. public DiagnosticSection Diagnostic
  33. {
  34. get { return (DiagnosticSection)this.Sections[ConfigurationStrings.DiagnosticSectionName]; }
  35. }
  36. public ServiceHostingEnvironmentSection ServiceHostingEnvironment
  37. {
  38. get { return (ServiceHostingEnvironmentSection)this.Sections[ConfigurationStrings.ServiceHostingEnvironmentSectionName]; }
  39. }
  40. public ExtensionsSection Extensions
  41. {
  42. get { return (ExtensionsSection)this.Sections[ConfigurationStrings.Extensions]; }
  43. }
  44. public ProtocolMappingSection ProtocolMapping
  45. {
  46. get { return (ProtocolMappingSection)this.Sections[ConfigurationStrings.ProtocolMappingSectionName]; }
  47. }
  48. public ServicesSection Services
  49. {
  50. get { return (ServicesSection)this.Sections[ConfigurationStrings.ServicesSectionName]; }
  51. }
  52. public StandardEndpointsSection StandardEndpoints
  53. {
  54. get { return (StandardEndpointsSection)this.Sections[ConfigurationStrings.StandardEndpointsSectionName]; }
  55. }
  56. public static ServiceModelSectionGroup GetSectionGroup(Configuration config)
  57. {
  58. if (config == null)
  59. {
  60. throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("config");
  61. }
  62. #pragma warning suppress 56506 //[....]; config.SectionGroups can never be null (underlying configuration system guarantees)
  63. return (ServiceModelSectionGroup)config.SectionGroups[ConfigurationStrings.SectionGroupName];
  64. }
  65. }
  66. }