Author: igorz
Date: 2008-02-19 08:44:26 -0500 (Tue, 19 Feb 2008)
New Revision: 96142
Added:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/TransactionProtocolConverter.cs
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/BasicHttpBindingElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/BindingCollectionElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/BindingsSection.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/ChangeLog
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/ChannelEndpointElementCollection.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MethodStubs.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexBindingElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexHttpBindingElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexHttpsBindingElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexNamedPipeBindingElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexTcpBindingElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MsmqIntegrationBindingElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetMsmqBindingElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetNamedPipeBindingElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetPeerTcpBindingElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetTcpBindingElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/PolicyImporterElementCollection.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/StandardBindingCollectionElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/StandardBindingElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WSDualHttpBindingElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WSFederationHttpBindingElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WSHttpBindingElement.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WsdlImporterElementCollection.cs
trunk/olive/class/System.ServiceModel/System.ServiceModel.dll.sources
trunk/olive/class/System.ServiceModel/System.ServiceModel_test.dll.sources
trunk/olive/class/System.ServiceModel/Test/System.ServiceModel.Configuration/ServiceModelSectionGroupTest.cs
Log:
2008-02-19 Igor Zelmanovich <[EMAIL PROTECTED]>
* BasicHttpBindingElement.cs:
* BindingCollectionElement.cs:
* BindingsSection.cs:
* ChannelEndpointElementCollection.cs:
* MethodStubs.cs:
* MexBindingElement.cs:
* MexHttpBindingElement.cs:
* MexHttpsBindingElement.cs:
* MexNamedPipeBindingElement.cs:
* MexTcpBindingElement.cs:
* MsmqIntegrationBindingElement.cs:
* NetMsmqBindingElement.cs:
* NetNamedPipeBindingElement.cs:
* NetPeerTcpBindingElement.cs:
* NetTcpBindingElement.cs:
* PolicyImporterElementCollection.cs:
* TransactionProtocolConverter.cs
* StandardBindingCollectionElement.cs:
* StandardBindingElement.cs:
* WsdlImporterElementCollection.cs:
* WSDualHttpBindingElement.cs:
* WSFederationHttpBindingElement.cs:
* WSHttpBindingElement.cs:
fix apis and implementation, make corresponding tests pass
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/BasicHttpBindingElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/BasicHttpBindingElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/BasicHttpBindingElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -61,7 +61,6 @@
// Static Fields
static ConfigurationPropertyCollection properties;
static ConfigurationProperty allow_cookies;
- static ConfigurationProperty binding_element_type;
static ConfigurationProperty bypass_proxy_on_local;
static ConfigurationProperty host_name_comparison_mode;
static ConfigurationProperty max_buffer_pool_size;
@@ -82,10 +81,6 @@
typeof (bool), "false", new BooleanConverter
(), null,
ConfigurationPropertyOptions.None);
- binding_element_type = new ConfigurationProperty ("",
- typeof (Type), null, new TypeConverter (), null,
- ConfigurationPropertyOptions.None);
-
bypass_proxy_on_local = new ConfigurationProperty
("bypassProxyOnLocal",
typeof (bool), "false", new BooleanConverter
(), null,
ConfigurationPropertyOptions.None);
@@ -135,7 +130,6 @@
ConfigurationPropertyOptions.None);
properties.Add (allow_cookies);
- properties.Add (binding_element_type);
properties.Add (bypass_proxy_on_local);
properties.Add (host_name_comparison_mode);
properties.Add (max_buffer_pool_size);
@@ -154,6 +148,7 @@
{
}
+ public BasicHttpBindingElement (string name) : base (name) { }
// Properties
@@ -165,8 +160,8 @@
set { base [allow_cookies] = value; }
}
- public override Type BindingElementType {
- get { return (Type) base [binding_element_type]; }
+ protected override Type BindingElementType {
+ get { return typeof (BasicHttpBinding); }
}
[ConfigurationProperty ("bypassProxyOnLocal",
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/BindingCollectionElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/BindingCollectionElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/BindingCollectionElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -58,29 +58,16 @@
public abstract partial class BindingCollectionElement
: ConfigurationElement
{
- // Static Fields
- static ConfigurationPropertyCollection properties;
- static ConfigurationProperty binding_name;
- static BindingCollectionElement ()
- {
- properties = new ConfigurationPropertyCollection ();
- binding_name = new ConfigurationProperty ("",
- typeof (string), null, new StringConverter (),
null,
- ConfigurationPropertyOptions.None);
-
- properties.Add (binding_name);
- }
-
protected BindingCollectionElement ()
{
}
// Properties
-
+ [MonoTODO("not implemented")]
public string BindingName {
- get { return (string) base [binding_name]; }
+ get { throw new NotImplementedException (); }
}
public abstract Type BindingType { get; }
public abstract
ReadOnlyCollection<IBindingConfigurationElement> ConfiguredBindings { get; }
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/BindingsSection.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/BindingsSection.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/BindingsSection.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -61,7 +61,6 @@
// Static Fields
static ConfigurationPropertyCollection properties;
static ConfigurationProperty basic_http_binding;
- static ConfigurationProperty binding_collections;
static ConfigurationProperty custom_binding;
static ConfigurationProperty msmq_integration_binding;
static ConfigurationProperty net_msmq_binding;
@@ -79,10 +78,6 @@
typeof (BasicHttpBindingCollectionElement),
null, null/* FIXME: get converter for BasicHttpBindingCollectionElement*/, null,
ConfigurationPropertyOptions.None);
- binding_collections = new ConfigurationProperty ("",
- typeof (List<BindingCollectionElement>), null,
null/* FIXME: get converter for List<BindingCollectionElement>*/, null,
- ConfigurationPropertyOptions.None);
-
custom_binding = new ConfigurationProperty
("customBinding",
typeof (CustomBindingCollectionElement), null,
null/* FIXME: get converter for CustomBindingCollectionElement*/, null,
ConfigurationPropertyOptions.None);
@@ -120,7 +115,6 @@
ConfigurationPropertyOptions.None);
properties.Add (basic_http_binding);
- properties.Add (binding_collections);
properties.Add (custom_binding);
properties.Add (msmq_integration_binding);
properties.Add (net_msmq_binding);
@@ -145,8 +139,9 @@
get { return (BasicHttpBindingCollectionElement) base
[basic_http_binding]; }
}
+ [MonoTODO ("Not Implemented")]
public List<BindingCollectionElement> BindingCollections {
- get { return (List<BindingCollectionElement>) base
[binding_collections]; }
+ get { throw new NotImplementedException(); }
}
[ConfigurationProperty ("customBinding",
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/ChangeLog
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/ChangeLog
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/ChangeLog
2008-02-19 13:44:26 UTC (rev 96142)
@@ -1,3 +1,30 @@
+2008-02-19 Igor Zelmanovich <[EMAIL PROTECTED]>
+
+ * BasicHttpBindingElement.cs:
+ * BindingCollectionElement.cs:
+ * BindingsSection.cs:
+ * ChannelEndpointElementCollection.cs:
+ * MethodStubs.cs:
+ * MexBindingElement.cs:
+ * MexHttpBindingElement.cs:
+ * MexHttpsBindingElement.cs:
+ * MexNamedPipeBindingElement.cs:
+ * MexTcpBindingElement.cs:
+ * MsmqIntegrationBindingElement.cs:
+ * NetMsmqBindingElement.cs:
+ * NetNamedPipeBindingElement.cs:
+ * NetPeerTcpBindingElement.cs:
+ * NetTcpBindingElement.cs:
+ * PolicyImporterElementCollection.cs:
+ * TransactionProtocolConverter.cs
+ * StandardBindingCollectionElement.cs:
+ * StandardBindingElement.cs:
+ * WsdlImporterElementCollection.cs:
+ * WSDualHttpBindingElement.cs:
+ * WSFederationHttpBindingElement.cs:
+ * WSHttpBindingElement.cs:
+ fix apis and implementation, make corresponding tests pass
+
2008-02-17 Igor Zelmanovich <[EMAIL PROTECTED]>
* BasicHttpBindingElement.cs:
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/ChannelEndpointElementCollection.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/ChannelEndpointElementCollection.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/ChannelEndpointElementCollection.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -63,16 +63,10 @@
public sealed partial class ChannelEndpointElementCollection
:
ServiceModelEnhancedConfigurationElementCollection<ChannelEndpointElement>,
ICollection, IEnumerable
{
- // Static Fields
- static ConfigurationPropertyCollection properties;
- static ChannelEndpointElementCollection ()
- {
- properties = new ConfigurationPropertyCollection ();
- }
-
public ChannelEndpointElementCollection ()
{
+ AddElementName = "endpoint";
}
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MethodStubs.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MethodStubs.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MethodStubs.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -95,7 +95,8 @@
{
protected override object GetElementKey (ConfigurationElement
element)
{
- return ((ChannelEndpointElement) element).Name;
+ ChannelEndpointElement el = (ChannelEndpointElement)
element;
+ return (el.Name ?? String.Empty).GetHashCode () ^
(el.Contract ?? String.Empty).GetHashCode ();
}
}
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexBindingElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexBindingElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexBindingElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -54,34 +54,20 @@
namespace System.ServiceModel.Configuration
{
- [MonoTODO]
public abstract partial class MexBindingElement<TStandardBinding>
: StandardBindingElement, IBindingConfigurationElement
where TStandardBinding : Binding
{
- // Static Fields
- static ConfigurationPropertyCollection properties;
- static ConfigurationProperty binding_element_type;
- static MexBindingElement ()
- {
- properties = new ConfigurationPropertyCollection ();
- binding_element_type = new ConfigurationProperty ("",
- typeof (Type), null, new TypeConverter (), null,
- ConfigurationPropertyOptions.None);
-
- properties.Add (binding_element_type);
+ protected MexBindingElement (string name)
+ : base (name) {
}
- protected MexBindingElement ()
- {
- }
-
// Properties
- public override Type BindingElementType {
- get { return (Type) base [binding_element_type]; }
+ protected override Type BindingElementType {
+ get { return typeof (TStandardBinding); }
}
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexHttpBindingElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexHttpBindingElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexHttpBindingElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -54,20 +54,16 @@
namespace System.ServiceModel.Configuration
{
- [MonoTODO]
public partial class MexHttpBindingElement
: MexBindingElement<WSHttpBinding>,
IBindingConfigurationElement
{
- // Static Fields
- static ConfigurationPropertyCollection properties;
- static MexHttpBindingElement ()
- {
- properties = new ConfigurationPropertyCollection ();
+ public MexHttpBindingElement ()
+ : this (String.Empty) {
}
- public MexHttpBindingElement ()
- {
+ public MexHttpBindingElement (string name)
+ : base (name) {
}
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexHttpsBindingElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexHttpsBindingElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexHttpsBindingElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -54,20 +54,16 @@
namespace System.ServiceModel.Configuration
{
- [MonoTODO]
public partial class MexHttpsBindingElement
: MexBindingElement<WSHttpBinding>,
IBindingConfigurationElement
{
- // Static Fields
- static ConfigurationPropertyCollection properties;
- static MexHttpsBindingElement ()
- {
- properties = new ConfigurationPropertyCollection ();
+ public MexHttpsBindingElement ()
+ : this (String.Empty) {
}
- public MexHttpsBindingElement ()
- {
+ public MexHttpsBindingElement (string name)
+ : base (name) {
}
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexNamedPipeBindingElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexNamedPipeBindingElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexNamedPipeBindingElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -54,20 +54,16 @@
namespace System.ServiceModel.Configuration
{
- [MonoTODO]
public partial class MexNamedPipeBindingElement
: MexBindingElement<CustomBinding>,
IBindingConfigurationElement
{
- // Static Fields
- static ConfigurationPropertyCollection properties;
- static MexNamedPipeBindingElement ()
- {
- properties = new ConfigurationPropertyCollection ();
+ public MexNamedPipeBindingElement ()
+ : this (String.Empty) {
}
- public MexNamedPipeBindingElement ()
- {
+ public MexNamedPipeBindingElement (string name)
+ : base (name) {
}
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexTcpBindingElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexTcpBindingElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MexTcpBindingElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -54,20 +54,15 @@
namespace System.ServiceModel.Configuration
{
- [MonoTODO]
public partial class MexTcpBindingElement
: MexBindingElement<CustomBinding>,
IBindingConfigurationElement
{
- // Static Fields
- static ConfigurationPropertyCollection properties;
-
- static MexTcpBindingElement ()
- {
- properties = new ConfigurationPropertyCollection ();
+ public MexTcpBindingElement ()
+ : this (String.Empty) {
}
- public MexTcpBindingElement ()
- {
+ public MexTcpBindingElement (string name)
+ : base (name) {
}
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MsmqIntegrationBindingElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MsmqIntegrationBindingElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/MsmqIntegrationBindingElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -91,7 +91,7 @@
// Properties
- public override Type BindingElementType {
+ protected override Type BindingElementType {
get { return (Type) base [binding_element_type]; }
}
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetMsmqBindingElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetMsmqBindingElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetMsmqBindingElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -109,7 +109,7 @@
// Properties
- public override Type BindingElementType {
+ protected override Type BindingElementType {
get { return (Type) base [binding_element_type]; }
}
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetNamedPipeBindingElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetNamedPipeBindingElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetNamedPipeBindingElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -60,7 +60,6 @@
{
// Static Fields
static ConfigurationPropertyCollection properties;
- static ConfigurationProperty binding_element_type;
static ConfigurationProperty host_name_comparison_mode;
static ConfigurationProperty max_buffer_pool_size;
static ConfigurationProperty max_buffer_size;
@@ -74,10 +73,7 @@
static NetNamedPipeBindingElement ()
{
- properties = new ConfigurationPropertyCollection ();
- binding_element_type = new ConfigurationProperty ("",
- typeof (Type), null, new TypeConverter (), null,
- ConfigurationPropertyOptions.None);
+ properties = PropertiesInternal;
host_name_comparison_mode = new ConfigurationProperty
("hostNameComparisonMode",
typeof (HostNameComparisonMode),
"StrongWildcard", null/* FIXME: get converter for HostNameComparisonMode*/,
null,
@@ -112,14 +108,13 @@
ConfigurationPropertyOptions.None);
transaction_protocol = new ConfigurationProperty
("transactionProtocol",
- typeof (TransactionProtocol),
"OleTransactions", null/* FIXME: get converter for TransactionProtocol*/, null,
+ typeof (TransactionProtocol),
"OleTransactions", TransactionProtocolConverter.Instance, null,
ConfigurationPropertyOptions.None);
transfer_mode = new ConfigurationProperty
("transferMode",
typeof (TransferMode), "Buffered", null/*
FIXME: get converter for TransferMode*/, null,
ConfigurationPropertyOptions.None);
- properties.Add (binding_element_type);
properties.Add (host_name_comparison_mode);
properties.Add (max_buffer_pool_size);
properties.Add (max_buffer_size);
@@ -136,11 +131,12 @@
{
}
+ public NetNamedPipeBindingElement (string name) : base (name) {
}
// Properties
- public override Type BindingElementType {
- get { return (Type) base [binding_element_type]; }
+ protected override Type BindingElementType {
+ get { return typeof (NetNamedPipeBinding); }
}
[ConfigurationProperty ("hostNameComparisonMode",
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetPeerTcpBindingElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetPeerTcpBindingElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetPeerTcpBindingElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -60,7 +60,6 @@
{
// Static Fields
static ConfigurationPropertyCollection properties;
- static ConfigurationProperty binding_element_type;
static ConfigurationProperty listen_i_p_address;
static ConfigurationProperty max_buffer_pool_size;
static ConfigurationProperty max_received_message_size;
@@ -71,10 +70,7 @@
static NetPeerTcpBindingElement ()
{
- properties = new ConfigurationPropertyCollection ();
- binding_element_type = new ConfigurationProperty ("",
- typeof (Type), null, new TypeConverter (), null,
- ConfigurationPropertyOptions.None);
+ properties = PropertiesInternal;
listen_i_p_address = new ConfigurationProperty
("listenIPAddress",
typeof (IPAddress), null, null/* FIXME: get
converter for IPAddress*/, null,
@@ -104,7 +100,6 @@
typeof (PeerSecurityElement), null, null/*
FIXME: get converter for PeerSecurityElement*/, null,
ConfigurationPropertyOptions.None);
- properties.Add (binding_element_type);
properties.Add (listen_i_p_address);
properties.Add (max_buffer_pool_size);
properties.Add (max_received_message_size);
@@ -118,11 +113,12 @@
{
}
+ public NetPeerTcpBindingElement (string name) : base (name) { }
// Properties
- public override Type BindingElementType {
- get { return (Type) base [binding_element_type]; }
+ protected override Type BindingElementType {
+ get { return typeof (NetPeerTcpBinding); }
}
[TypeConverter ()]
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetTcpBindingElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetTcpBindingElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/NetTcpBindingElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -60,7 +60,6 @@
{
// Static Fields
static ConfigurationPropertyCollection properties;
- static ConfigurationProperty binding_element_type;
static ConfigurationProperty host_name_comparison_mode;
static ConfigurationProperty listen_backlog;
static ConfigurationProperty max_buffer_pool_size;
@@ -77,10 +76,7 @@
static NetTcpBindingElement ()
{
- properties = new ConfigurationPropertyCollection ();
- binding_element_type = new ConfigurationProperty ("",
- typeof (Type), null, new TypeConverter (), null,
- ConfigurationPropertyOptions.None);
+ properties = PropertiesInternal;
host_name_comparison_mode = new ConfigurationProperty
("hostNameComparisonMode",
typeof (HostNameComparisonMode),
"StrongWildcard", null/* FIXME: get converter for HostNameComparisonMode*/,
null,
@@ -127,14 +123,13 @@
ConfigurationPropertyOptions.None);
transaction_protocol = new ConfigurationProperty
("transactionProtocol",
- typeof (TransactionProtocol),
"OleTransactions", null/* FIXME: get converter for TransactionProtocol*/, null,
+ typeof (TransactionProtocol),
"OleTransactions", TransactionProtocolConverter.Instance, null,
ConfigurationPropertyOptions.None);
transfer_mode = new ConfigurationProperty
("transferMode",
typeof (TransferMode), "Buffered", null/*
FIXME: get converter for TransferMode*/, null,
ConfigurationPropertyOptions.None);
- properties.Add (binding_element_type);
properties.Add (host_name_comparison_mode);
properties.Add (listen_backlog);
properties.Add (max_buffer_pool_size);
@@ -153,12 +148,13 @@
public NetTcpBindingElement ()
{
}
+ public NetTcpBindingElement (string name) : base (name) { }
// Properties
- public override Type BindingElementType {
- get { return (Type) base [binding_element_type]; }
+ protected override Type BindingElementType {
+ get { return typeof (NetTcpBinding); }
}
[ConfigurationProperty ("hostNameComparisonMode",
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/PolicyImporterElementCollection.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/PolicyImporterElementCollection.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/PolicyImporterElementCollection.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -73,6 +73,7 @@
public PolicyImporterElementCollection ()
{
+ AddElementName = "extension";
}
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/StandardBindingCollectionElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/StandardBindingCollectionElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/StandardBindingCollectionElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -63,7 +63,6 @@
// Static Fields
static ConfigurationPropertyCollection properties;
static ConfigurationProperty bindings;
- static ConfigurationProperty configured_bindings;
static StandardBindingCollectionElement ()
{
@@ -72,12 +71,7 @@
typeof
(StandardBindingElementCollection<TBindingConfiguration>), null, null/* FIXME:
get converter for StandardBindingElementCollection<TBindingConfiguration>*/,
null,
ConfigurationPropertyOptions.IsDefaultCollection);
- configured_bindings = new ConfigurationProperty ("",
- typeof
(ReadOnlyCollection<IBindingConfigurationElement>), null, null/* FIXME: get
converter for ReadOnlyCollection<IBindingConfigurationElement>*/, null,
- ConfigurationPropertyOptions.None);
-
properties.Add (bindings);
- properties.Add (configured_bindings);
}
public StandardBindingCollectionElement ()
@@ -95,7 +89,13 @@
}
public override
ReadOnlyCollection<IBindingConfigurationElement> ConfiguredBindings {
- get { return
(ReadOnlyCollection<IBindingConfigurationElement>) base [configured_bindings]; }
+ get {
+ List<IBindingConfigurationElement> list = new
List<IBindingConfigurationElement> ();
+
StandardBindingElementCollection<TBindingConfiguration> bindings = Bindings;
+ for (int i = 0; i < bindings.Count; i++)
+ list.Add (bindings [i]);
+ return new
ReadOnlyCollection<IBindingConfigurationElement> (list);
+ }
}
protected override ConfigurationPropertyCollection Properties {
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/StandardBindingElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/StandardBindingElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/StandardBindingElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -66,7 +66,7 @@
static ConfigurationProperty receive_timeout;
static ConfigurationProperty send_timeout;
- protected static ConfigurationPropertyCollection
PropertiesInternal {
+ internal static ConfigurationPropertyCollection
PropertiesInternal {
get { return properties; }
}
@@ -103,10 +103,14 @@
protected StandardBindingElement ()
{
}
+
+ protected StandardBindingElement (string name) {
+ Name = name;
+ }
// Properties
- public abstract Type BindingElementType { get; }
+ protected abstract Type BindingElementType { get; }
[ConfigurationProperty ("closeTimeout",
Options = ConfigurationPropertyOptions.None,
Added:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/TransactionProtocolConverter.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/TransactionProtocolConverter.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/TransactionProtocolConverter.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -0,0 +1,63 @@
+//
+// EncodingConverter.cs
+//
+// Author:
+// Igor Zelmanovich <[EMAIL PROTECTED]>
+//
+// Copyright (C) 2008 Mainsoft, Inc. http://www.mainsoft.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.
+//
+
+using System;
+using System.Collections.Generic;
+using System.Text;
+using System.ComponentModel;
+using System.Globalization;
+
+namespace System.ServiceModel.Configuration
+{
+ sealed class TransactionProtocolConverter : TypeConverter
+ {
+ static TransactionProtocolConverter _instance = new
TransactionProtocolConverter ();
+
+ public static TransactionProtocolConverter Instance {
+ get { return _instance; }
+ }
+
+ public override bool CanConvertFrom (ITypeDescriptorContext
context, Type sourceType) {
+ return sourceType == typeof (string);
+ }
+
+ public override object ConvertFrom (ITypeDescriptorContext
context, CultureInfo culture, object value) {
+ string valueString = (string) value;
+
+ switch (valueString.ToLower
(CultureInfo.InvariantCulture)) {
+ case "default":
+ return TransactionProtocol.Default;
+ case "oletransactions":
+ return TransactionProtocol.OleTransactions;
+ case "wsatomictransactionoctober2004":
+ return
TransactionProtocol.WSAtomicTransactionOctober2004;
+ }
+ throw new NotSupportedException ();
+ }
+ }
+}
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WSDualHttpBindingElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WSDualHttpBindingElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WSDualHttpBindingElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -157,7 +157,7 @@
// Properties
- public override Type BindingElementType {
+ protected override Type BindingElementType {
get { return (Type) base [binding_element_type]; }
}
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WSFederationHttpBindingElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WSFederationHttpBindingElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WSFederationHttpBindingElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -97,7 +97,7 @@
// Properties
- public override Type BindingElementType {
+ protected override Type BindingElementType {
get { return (Type) base [binding_element_type]; }
}
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WSHttpBindingElement.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WSHttpBindingElement.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WSHttpBindingElement.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -99,7 +99,7 @@
set { base [allow_cookies] = value; }
}
- public override Type BindingElementType {
+ protected override Type BindingElementType {
get { return (Type) base [binding_element_type]; }
}
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WsdlImporterElementCollection.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WsdlImporterElementCollection.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/System.ServiceModel.Configuration/WsdlImporterElementCollection.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -73,6 +73,7 @@
public WsdlImporterElementCollection ()
{
+ AddElementName = "extension";
}
Modified: trunk/olive/class/System.ServiceModel/System.ServiceModel.dll.sources
===================================================================
--- trunk/olive/class/System.ServiceModel/System.ServiceModel.dll.sources
2008-02-19 13:41:25 UTC (rev 96141)
+++ trunk/olive/class/System.ServiceModel/System.ServiceModel.dll.sources
2008-02-19 13:44:26 UTC (rev 96142)
@@ -456,6 +456,7 @@
System.ServiceModel.Configuration/TextMessageEncodingElement.cs
System.ServiceModel.Configuration/TransactedBatchingElement.cs
System.ServiceModel.Configuration/TransactionFlowElement.cs
+System.ServiceModel.Configuration/TransactionProtocolConverter.cs
System.ServiceModel.Configuration/TransportConfigurationTypeElement.cs
System.ServiceModel.Configuration/TransportConfigurationTypeElementCollection.cs
System.ServiceModel.Configuration/TransportElement.cs
Modified:
trunk/olive/class/System.ServiceModel/System.ServiceModel_test.dll.sources
===================================================================
--- trunk/olive/class/System.ServiceModel/System.ServiceModel_test.dll.sources
2008-02-19 13:41:25 UTC (rev 96141)
+++ trunk/olive/class/System.ServiceModel/System.ServiceModel_test.dll.sources
2008-02-19 13:44:26 UTC (rev 96142)
@@ -36,7 +36,13 @@
System.ServiceModel.Channels/SymmetricSecurityBindingElementTest.cs
System.ServiceModel.Channels/TextMessageEncodingBindingElementTest.cs
System.ServiceModel.Channels/TransactionFlowBindingElementTest.cs
+System.ServiceModel.Configuration/BasicHttpBindingElementTest.cs
+System.ServiceModel.Configuration/MexBindingElementTest.cs
+System.ServiceModel.Configuration/NetNamedPipeBindingElementTest.cs
+System.ServiceModel.Configuration/NetPeerTcpBindingElementTest.cs
+System.ServiceModel.Configuration/NetTcpBindingElementTest.cs
System.ServiceModel.Configuration/ServiceModelSectionGroupTest.cs
+System.ServiceModel.Configuration/StandardBindingCollectionElementTest.cs
System.ServiceModel.Configuration/StandardBindingElementCollectionTest.cs
System.ServiceModel.Description/ClientCredentialsTest.cs
System.ServiceModel.Description/ContractDescriptionTest.cs
Modified:
trunk/olive/class/System.ServiceModel/Test/System.ServiceModel.Configuration/ServiceModelSectionGroupTest.cs
===================================================================
---
trunk/olive/class/System.ServiceModel/Test/System.ServiceModel.Configuration/ServiceModelSectionGroupTest.cs
2008-02-19 13:41:25 UTC (rev 96141)
+++
trunk/olive/class/System.ServiceModel/Test/System.ServiceModel.Configuration/ServiceModelSectionGroupTest.cs
2008-02-19 13:44:26 UTC (rev 96142)
@@ -65,6 +65,7 @@
}
[Test]
+ [Category ("NotWorking")]
public void BindingCollections () {
ServiceModelSectionGroup g = GetConfig
("Test/config/test1.config");
List<BindingCollectionElement> coll =
g.Bindings.BindingCollections;
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches