a575963da9
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
194 lines
9.0 KiB
C#
194 lines
9.0 KiB
C#
//
|
|
// System.Web.Services.Configuration.WebServicesSection
|
|
//
|
|
// Authors:
|
|
// Chris Toshok (toshok@ximian.com)
|
|
//
|
|
// (C) 2005 Novell, Inc (http://www.novell.com)
|
|
//
|
|
|
|
//
|
|
// Permission is hereby granted, free of charge, to any person obtaining
|
|
// a copy of this software and associated documentation files (the
|
|
// "Software"), to deal in the Software without restriction, including
|
|
// without limitation the rights to use, copy, modify, merge, publish,
|
|
// distribute, sublicense, and/or sell copies of the Software, and to
|
|
// permit persons to whom the Software is furnished to do so, subject to
|
|
// the following conditions:
|
|
//
|
|
// The above copyright notice and this permission notice shall be
|
|
// included in all copies or substantial portions of the Software.
|
|
//
|
|
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
//
|
|
|
|
#if NET_2_0
|
|
|
|
using System;
|
|
using System.Configuration;
|
|
using System.Web.Configuration;
|
|
|
|
namespace System.Web.Services.Configuration
|
|
{
|
|
public sealed class WebServicesSection : ConfigurationSection
|
|
{
|
|
static ConfigurationProperty conformanceWarningsProp;
|
|
static ConfigurationProperty diagnosticsProp;
|
|
static ConfigurationProperty protocolsProp;
|
|
static ConfigurationProperty serviceDescriptionFormatExtensionTypesProp;
|
|
static ConfigurationProperty soapEnvelopeProcessingProp;
|
|
static ConfigurationProperty soapExtensionImporterTypesProp;
|
|
static ConfigurationProperty soapExtensionReflectorTypesProp;
|
|
static ConfigurationProperty soapExtensionTypesProp;
|
|
static ConfigurationProperty soapServerProtocolFactoryProp;
|
|
static ConfigurationProperty soapTransportImporterTypesProp;
|
|
static ConfigurationProperty wsdlHelpGeneratorProp;
|
|
static ConfigurationPropertyCollection properties;
|
|
|
|
static WebServicesSection ()
|
|
{
|
|
conformanceWarningsProp = new ConfigurationProperty ("conformanceWarnings", typeof (WsiProfilesElementCollection), null,
|
|
null, null, ConfigurationPropertyOptions.None);
|
|
diagnosticsProp = new ConfigurationProperty ("diagnostics", typeof (DiagnosticsElement), null,
|
|
null, null, ConfigurationPropertyOptions.None);
|
|
protocolsProp = new ConfigurationProperty ("protocols", typeof (ProtocolElementCollection), null,
|
|
null, null, ConfigurationPropertyOptions.None);
|
|
serviceDescriptionFormatExtensionTypesProp = new ConfigurationProperty ("serviceDescriptionFormatExtensionTypes", typeof (TypeElementCollection), null,
|
|
null, null, ConfigurationPropertyOptions.None);
|
|
soapEnvelopeProcessingProp = new ConfigurationProperty ("soapEnvelopeProcessing", typeof (SoapEnvelopeProcessingElement), null,
|
|
null, null, ConfigurationPropertyOptions.None);
|
|
soapExtensionImporterTypesProp = new ConfigurationProperty ("soapExtensionImporterTypes", typeof (TypeElementCollection), null,
|
|
null, null, ConfigurationPropertyOptions.None);
|
|
soapExtensionReflectorTypesProp = new ConfigurationProperty ("soapExtensionReflectorTypes", typeof (TypeElementCollection), null,
|
|
null, null, ConfigurationPropertyOptions.None);
|
|
soapExtensionTypesProp = new ConfigurationProperty ("soapExtensionTypes", typeof (SoapExtensionTypeElementCollection), null,
|
|
null, null, ConfigurationPropertyOptions.None);
|
|
soapServerProtocolFactoryProp = new ConfigurationProperty ("soapServerProtocolFactory", typeof (TypeElement), null,
|
|
null, null, ConfigurationPropertyOptions.None);
|
|
soapTransportImporterTypesProp = new ConfigurationProperty ("soapTransportImporterTypes", typeof (TypeElementCollection), null,
|
|
null, null, ConfigurationPropertyOptions.None);
|
|
wsdlHelpGeneratorProp = new ConfigurationProperty ("wsdlHelpGenerator", typeof (WsdlHelpGeneratorElement), null,
|
|
null, null, ConfigurationPropertyOptions.None);
|
|
properties = new ConfigurationPropertyCollection ();
|
|
|
|
properties.Add (conformanceWarningsProp);
|
|
properties.Add (diagnosticsProp);
|
|
properties.Add (protocolsProp);
|
|
properties.Add (serviceDescriptionFormatExtensionTypesProp);
|
|
properties.Add (soapEnvelopeProcessingProp);
|
|
properties.Add (soapExtensionImporterTypesProp);
|
|
properties.Add (soapExtensionReflectorTypesProp);
|
|
properties.Add (soapExtensionTypesProp);
|
|
properties.Add (soapServerProtocolFactoryProp);
|
|
properties.Add (soapTransportImporterTypesProp);
|
|
properties.Add (wsdlHelpGeneratorProp);
|
|
|
|
}
|
|
|
|
public static WebServicesSection GetSection (System.Configuration.Configuration config)
|
|
{
|
|
return (WebServicesSection) config.GetSection ("webServices");
|
|
}
|
|
|
|
protected override void InitializeDefault ()
|
|
{
|
|
}
|
|
|
|
protected override void Reset (ConfigurationElement parentElement)
|
|
{
|
|
base.Reset (parentElement);
|
|
}
|
|
|
|
[ConfigurationProperty ("conformanceWarnings")]
|
|
public WsiProfilesElementCollection ConformanceWarnings {
|
|
get { return (WsiProfilesElementCollection) base [conformanceWarningsProp];}
|
|
}
|
|
|
|
public DiagnosticsElement Diagnostics {
|
|
get { return (DiagnosticsElement) base [diagnosticsProp]; }
|
|
set { base[diagnosticsProp] = value; }
|
|
}
|
|
|
|
[MonoTODO]
|
|
WebServiceProtocols enabledProtocols = WebServiceProtocols.Unknown;
|
|
public WebServiceProtocols EnabledProtocols {
|
|
get {
|
|
if (enabledProtocols == WebServiceProtocols.Unknown) {
|
|
foreach (ProtocolElement el in Protocols)
|
|
enabledProtocols |= el.Name;
|
|
}
|
|
|
|
return enabledProtocols;
|
|
}
|
|
}
|
|
|
|
[ConfigurationProperty ("protocols")]
|
|
public ProtocolElementCollection Protocols {
|
|
get { return (ProtocolElementCollection) base [protocolsProp];}
|
|
}
|
|
|
|
[ConfigurationProperty ("serviceDescriptionFormatExtensionTypes")]
|
|
public TypeElementCollection ServiceDescriptionFormatExtensionTypes {
|
|
get { return (TypeElementCollection) base [serviceDescriptionFormatExtensionTypesProp];}
|
|
}
|
|
|
|
[ConfigurationProperty ("soapEnvelopeProcessing")]
|
|
public SoapEnvelopeProcessingElement SoapEnvelopeProcessing {
|
|
get { return (SoapEnvelopeProcessingElement) base [soapEnvelopeProcessingProp];}
|
|
set { base[soapEnvelopeProcessingProp] = value; }
|
|
}
|
|
|
|
[ConfigurationProperty ("soapExtensionImporterTypes")]
|
|
public TypeElementCollection SoapExtensionImporterTypes {
|
|
get { return (TypeElementCollection) base [soapExtensionImporterTypesProp];}
|
|
}
|
|
|
|
[ConfigurationProperty ("soapExtensionReflectorTypes")]
|
|
public TypeElementCollection SoapExtensionReflectorTypes {
|
|
get { return (TypeElementCollection) base [soapExtensionReflectorTypesProp];}
|
|
}
|
|
|
|
[ConfigurationProperty ("soapExtensionTypes")]
|
|
public SoapExtensionTypeElementCollection SoapExtensionTypes {
|
|
get { return (SoapExtensionTypeElementCollection) base [soapExtensionTypesProp];}
|
|
}
|
|
|
|
[ConfigurationProperty ("soapServerProtocolFactory")]
|
|
public TypeElement SoapServerProtocolFactoryType {
|
|
get { return (TypeElement) base [soapServerProtocolFactoryProp];}
|
|
}
|
|
|
|
[ConfigurationProperty("soapTransportImporterTypes")]
|
|
public TypeElementCollection SoapTransportImporterTypes {
|
|
get { return (TypeElementCollection) base [soapTransportImporterTypesProp];}
|
|
}
|
|
|
|
[ConfigurationProperty ("wsdlHelpGenerator")]
|
|
public WsdlHelpGeneratorElement WsdlHelpGenerator {
|
|
get { return (WsdlHelpGeneratorElement) base [wsdlHelpGeneratorProp];}
|
|
}
|
|
|
|
protected override ConfigurationPropertyCollection Properties {
|
|
get { return properties; }
|
|
}
|
|
|
|
public static WebServicesSection Current {
|
|
get { return (WebServicesSection) ConfigurationManager.GetSection ("system.web/webServices"); }
|
|
}
|
|
|
|
internal static bool IsSupported (WebServiceProtocols proto)
|
|
{
|
|
return ((Current.EnabledProtocols & proto) == proto && (proto != WebServiceProtocols.Unknown));
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
#endif
|