New tests.
[mono.git] / mcs / class / System.ServiceModel / System.ServiceModel.Configuration / ServiceMetadataPublishingElement.cs
index 40d59d62a048ea9ec86d90c463d56aa2da813ec7..351deef520d600d4386d3b1992e417262cd7859f 100644 (file)
@@ -69,6 +69,20 @@ namespace System.ServiceModel.Configuration
                        set { base ["externalMetadataLocation"] = value; }
                }
 
+               [StringValidator (MinLength = 0)]
+               [ConfigurationProperty ("httpGetBinding", DefaultValue = "")]
+               public string HttpGetBinding {
+                       get { return (string) base ["httpGetBinding"]; }
+                       set { base ["httpGetBinding"] = value; }
+               }
+
+               [ConfigurationProperty ("httpGetBindingConfiguration", DefaultValue = "")]
+               [StringValidator (MinLength = 0)]
+               public string HttpGetBindingConfiguration {
+                       get { return (string) base ["httpGetBindingConfiguration"]; }
+                       set { base ["httpGetBindingConfiguration"] = value; }
+               }
+
                [ConfigurationProperty ("httpGetEnabled",
                         Options = ConfigurationPropertyOptions.None,
                        DefaultValue = false)]
@@ -84,6 +98,20 @@ namespace System.ServiceModel.Configuration
                        set { base ["httpGetUrl"] = value; }
                }
 
+               [StringValidator (MinLength = 0)]
+               [ConfigurationProperty ("httpsGetBinding", DefaultValue = "")]
+               public string HttpsGetBinding {
+                       get { return (string) base ["httpsGetBinding"]; }
+                       set { base ["httpsGetBinding"] = value; }
+               }
+
+               [ConfigurationProperty ("httpsGetBindingConfiguration", DefaultValue = "")]
+               [StringValidator (MinLength = 0)]
+               public string HttpsGetBindingConfiguration {
+                       get { return (string) base ["httpsGetBindingConfiguration"]; }
+                       set { base ["httpsGetBindingConfiguration"] = value; }
+               }
+
                [ConfigurationProperty ("httpsGetEnabled",
                         Options = ConfigurationPropertyOptions.None,
                        DefaultValue = false)]
@@ -109,6 +137,10 @@ namespace System.ServiceModel.Configuration
                        b.HttpsGetEnabled = HttpsGetEnabled;
                        b.HttpGetUrl = HttpGetUrl;
                        b.HttpsGetUrl = HttpsGetUrl;
+                       if (!String.IsNullOrEmpty (HttpGetBinding))
+                               b.HttpGetBinding = ConfigUtil.CreateBinding (HttpGetBinding, HttpGetBindingConfiguration);
+                       if (!String.IsNullOrEmpty (HttpsGetBinding))
+                               b.HttpsGetBinding = ConfigUtil.CreateBinding (HttpsGetBinding, HttpsGetBindingConfiguration);
                        return b;
                }