-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathClearUsernameBindingElement.cs
90 lines (77 loc) · 2.63 KB
/
ClearUsernameBindingElement.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
using System;
using System.Configuration;
using System.ServiceModel;
using System.ServiceModel.Channels;
using System.ComponentModel;
using System.ServiceModel.Configuration;
using System.Globalization;
/*
* Want more WCF tips?
* Visit http://webservices20.blogspot.com/
*/
namespace WebServices20.BindingExtenions
{
class ClearUsernameBindingElement : StandardBindingElement
{
private ConfigurationPropertyCollection properties;
protected override void OnApplyConfiguration(Binding binding)
{
ClearUsernameBinding b = binding as ClearUsernameBinding;
b.SetMessageVersion(MessageVersion);
b.SetEnableUnsecuredResponse(EnableUnsecuredResponse);
b.SetIncludeTimeStamp(IncludeTimeStamp);
}
protected override Type BindingElementType
{
get { return typeof(ClearUsernameBinding); }
}
protected override ConfigurationPropertyCollection Properties
{
get
{
if (this.properties == null)
{
ConfigurationPropertyCollection properties = base.Properties;
properties.Add(new ConfigurationProperty("messageVersion", typeof(MessageVersion), MessageVersion.Soap11, new MessageVersionConverter(), null, ConfigurationPropertyOptions.None));
properties.Add(new ConfigurationProperty("enableUnsecuredResponse", typeof(bool), false, TypeDescriptor.GetConverter(typeof(bool)), null, ConfigurationPropertyOptions.None));
properties.Add(new ConfigurationProperty("includeTimeStamp", typeof(bool), true, TypeDescriptor.GetConverter(typeof(bool)), null, ConfigurationPropertyOptions.None));
this.properties = properties;
}
return this.properties;
}
}
public MessageVersion MessageVersion
{
get
{
return (MessageVersion)base["messageVersion"];
}
set
{
base["messageVersion"] = value;
}
}
public bool EnableUnsecuredResponse
{
get
{
return (bool)base["enableUnsecuredResponse"];
}
set
{
base["enableUnsecuredResponse"] = value;
}
}
public bool IncludeTimeStamp
{
get
{
return (bool)base["includeTimeStamp"];
}
set
{
base["includeTimeStamp"] = value;
}
}
}
}