MsmqIntegrationElement.cs 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. //------------------------------------------------------------------------------
  2. // Copyright (c) Microsoft Corporation. All rights reserved.
  3. //------------------------------------------------------------------------------
  4. namespace System.ServiceModel.Configuration
  5. {
  6. using System.Configuration;
  7. using System.Net.Security;
  8. using System.ServiceModel.Channels;
  9. using Msmq = System.ServiceModel.MsmqIntegration;
  10. public sealed partial class MsmqIntegrationElement : MsmqElementBase
  11. {
  12. public override Type BindingElementType
  13. {
  14. get { return typeof(Msmq.MsmqIntegrationBindingElement); }
  15. }
  16. public override void CopyFrom(ServiceModelExtensionElement from)
  17. {
  18. base.CopyFrom(from);
  19. MsmqIntegrationElement source = from as MsmqIntegrationElement;
  20. if (null != source)
  21. this.SerializationFormat = source.SerializationFormat;
  22. }
  23. protected override TransportBindingElement CreateDefaultBindingElement()
  24. {
  25. return new Msmq.MsmqIntegrationBindingElement();
  26. }
  27. public override void ApplyConfiguration(BindingElement bindingElement)
  28. {
  29. base.ApplyConfiguration(bindingElement);
  30. Msmq.MsmqIntegrationBindingElement binding = bindingElement as Msmq.MsmqIntegrationBindingElement;
  31. binding.SerializationFormat = this.SerializationFormat;
  32. }
  33. protected internal override void InitializeFrom(BindingElement bindingElement)
  34. {
  35. base.InitializeFrom(bindingElement);
  36. Msmq.MsmqIntegrationBindingElement binding = bindingElement as Msmq.MsmqIntegrationBindingElement;
  37. SetPropertyValueIfNotDefaultValue(ConfigurationStrings.SerializationFormat, binding.SerializationFormat);
  38. }
  39. [ConfigurationProperty(ConfigurationStrings.SerializationFormat, DefaultValue = MsmqIntegrationDefaults.SerializationFormat)]
  40. [ServiceModelEnumValidator(typeof(Msmq.MsmqMessageSerializationFormatHelper))]
  41. public Msmq.MsmqMessageSerializationFormat SerializationFormat
  42. {
  43. get { return (Msmq.MsmqMessageSerializationFormat)base[ConfigurationStrings.SerializationFormat]; }
  44. set { base[ConfigurationStrings.SerializationFormat] = value; }
  45. }
  46. }
  47. }