|
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------------
namespace System.ServiceModel.Configuration
{
using System.Configuration;
using System.ServiceModel.Description;
using System.Collections.Generic;
using System.ComponentModel;
public sealed partial class UseRequestHeadersForMetadataAddressElement : BehaviorExtensionElement
{
public UseRequestHeadersForMetadataAddressElement()
{
}
[ConfigurationProperty(ConfigurationStrings.DefaultPorts)]
public DefaultPortElementCollection DefaultPorts
{
get { return (DefaultPortElementCollection)base[ConfigurationStrings.DefaultPorts]; }
}
public override void CopyFrom(ServiceModelExtensionElement from)
{
base.CopyFrom(from);
UseRequestHeadersForMetadataAddressElement source = (UseRequestHeadersForMetadataAddressElement)from;
this.DefaultPorts.Clear();
foreach (DefaultPortElement DefaultPort in source.DefaultPorts)
{
this.DefaultPorts.Add(new DefaultPortElement(DefaultPort));
}
}
protected internal override object CreateBehavior()
{
UseRequestHeadersForMetadataAddressBehavior behavior = new UseRequestHeadersForMetadataAddressBehavior();
foreach (DefaultPortElement DefaultPort in this.DefaultPorts)
{
behavior.DefaultPortsByScheme.Add(DefaultPort.Scheme, DefaultPort.Port);
}
return behavior;
}
public override Type BehaviorType
{
get { return typeof(UseRequestHeadersForMetadataAddressBehavior); }
}
}
}
|