1 //------------------------------------------------------------------------------
2 // Copyright (c) Microsoft Corporation. All rights reserved.
3 //------------------------------------------------------------------------------
5 namespace System
.ServiceModel
.Configuration
7 using System
.Configuration
;
8 using System
.Globalization
;
10 using System
.Net
.Security
;
11 using System
.ServiceModel
;
12 using System
.ServiceModel
.Channels
;
13 using System
.ServiceModel
.Security
;
14 using System
.ComponentModel
;
16 public sealed partial class MsmqTransportSecurityElement
: ServiceModelConfigurationElement
19 [ConfigurationProperty(ConfigurationStrings
.MsmqAuthenticationMode
, DefaultValue
= MsmqDefaults
.MsmqAuthenticationMode
)]
20 [ServiceModelEnumValidator(typeof(MsmqAuthenticationModeHelper
))]
21 public MsmqAuthenticationMode MsmqAuthenticationMode
23 get { return (MsmqAuthenticationMode)base[ConfigurationStrings.MsmqAuthenticationMode]; }
24 set { base[ConfigurationStrings.MsmqAuthenticationMode] = value; }
27 [ConfigurationProperty(ConfigurationStrings
.MsmqEncryptionAlgorithm
, DefaultValue
= MsmqDefaults
.MsmqEncryptionAlgorithm
)]
28 [ServiceModelEnumValidator(typeof(MsmqEncryptionAlgorithmHelper
))]
29 public MsmqEncryptionAlgorithm MsmqEncryptionAlgorithm
31 get { return (MsmqEncryptionAlgorithm)base[ConfigurationStrings.MsmqEncryptionAlgorithm]; }
32 set { base[ConfigurationStrings.MsmqEncryptionAlgorithm] = value; }
35 [ConfigurationProperty(ConfigurationStrings
.MsmqProtectionLevel
, DefaultValue
= MsmqDefaults
.MsmqProtectionLevel
)]
36 [ServiceModelEnumValidator(typeof(ProtectionLevelHelper
))]
37 public ProtectionLevel MsmqProtectionLevel
39 get { return (ProtectionLevel)base[ConfigurationStrings.MsmqProtectionLevel]; }
40 set { base[ConfigurationStrings.MsmqProtectionLevel] = value; }
43 [ConfigurationProperty(ConfigurationStrings
.MsmqSecureHashAlgorithm
)]
44 [ServiceModelEnumValidator(typeof(MsmqSecureHashAlgorithmHelper
))]
45 public MsmqSecureHashAlgorithm MsmqSecureHashAlgorithm
47 get { return (MsmqSecureHashAlgorithm)(base[ConfigurationStrings.MsmqSecureHashAlgorithm] ?? MsmqDefaults.MsmqSecureHashAlgorithm); }
48 set { base[ConfigurationStrings.MsmqSecureHashAlgorithm] = value; }
51 internal void ApplyConfiguration(MsmqTransportSecurity security
)
54 throw DiagnosticUtility
.ExceptionUtility
.ThrowHelperArgumentNull("security");
56 security
.MsmqAuthenticationMode
= this.MsmqAuthenticationMode
;
57 security
.MsmqEncryptionAlgorithm
= this.MsmqEncryptionAlgorithm
;
58 security
.MsmqProtectionLevel
= this.MsmqProtectionLevel
;
59 security
.MsmqSecureHashAlgorithm
= this.MsmqSecureHashAlgorithm
;
62 internal void InitializeFrom(MsmqTransportSecurity security
)
65 throw DiagnosticUtility
.ExceptionUtility
.ThrowHelperArgumentNull("security");
67 SetPropertyValueIfNotDefaultValue(ConfigurationStrings
.MsmqAuthenticationMode
, security
.MsmqAuthenticationMode
);
68 SetPropertyValueIfNotDefaultValue(ConfigurationStrings
.MsmqEncryptionAlgorithm
, security
.MsmqEncryptionAlgorithm
);
69 SetPropertyValueIfNotDefaultValue(ConfigurationStrings
.MsmqProtectionLevel
, security
.MsmqProtectionLevel
);
70 SetPropertyValueIfNotDefaultValue(ConfigurationStrings
.MsmqSecureHashAlgorithm
, security
.MsmqSecureHashAlgorithm
);