Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / Net / System / Net / Configuration / SmtpSection.cs / 1 / SmtpSection.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Net.Configuration
{
using System;
using System.Configuration;
using System.ComponentModel;
using System.Globalization;
using System.Net;
using System.Net.Mail;
using System.Reflection;
using System.Threading;
public sealed class SmtpSection : ConfigurationSection
{
public SmtpSection()
{
this.properties.Add(this.deliveryMethod);
this.properties.Add(this.from);
this.properties.Add(this.network);
this.properties.Add(this.specifiedPickupDirectory);
}
[ConfigurationProperty(ConfigurationStrings.DeliveryMethod, DefaultValue = (SmtpDeliveryMethod) SmtpDeliveryMethod.Network)]
public SmtpDeliveryMethod DeliveryMethod
{
get {
return (SmtpDeliveryMethod)this[this.deliveryMethod];
}
set {
this[this.deliveryMethod] = value;
}
}
[ConfigurationProperty(ConfigurationStrings.From)]
public string From
{
get { return (string)this[this.from]; }
set { this[this.from] = value; }
}
[ConfigurationProperty(ConfigurationStrings.Network)]
public SmtpNetworkElement Network
{
get {
return (SmtpNetworkElement)this[this.network];
}
}
[ConfigurationProperty(ConfigurationStrings.SpecifiedPickupDirectory)]
public SmtpSpecifiedPickupDirectoryElement SpecifiedPickupDirectory
{
get {
return (SmtpSpecifiedPickupDirectoryElement)this[this.specifiedPickupDirectory];
}
}
protected override ConfigurationPropertyCollection Properties
{
get
{
return this.properties;
}
}
//
ConfigurationPropertyCollection properties = new ConfigurationPropertyCollection();
readonly ConfigurationProperty from =
new ConfigurationProperty(ConfigurationStrings.From, typeof(string), null,
ConfigurationPropertyOptions.None);
readonly ConfigurationProperty network =
new ConfigurationProperty(ConfigurationStrings.Network, typeof(SmtpNetworkElement), null,
ConfigurationPropertyOptions.None);
readonly ConfigurationProperty specifiedPickupDirectory =
new ConfigurationProperty(ConfigurationStrings.SpecifiedPickupDirectory, typeof(SmtpSpecifiedPickupDirectoryElement), null,
ConfigurationPropertyOptions.None);
readonly ConfigurationProperty deliveryMethod =
new ConfigurationProperty(ConfigurationStrings.DeliveryMethod, typeof(SmtpDeliveryMethod), SmtpDeliveryMethod.Network, new SmtpDeliveryMethodTypeConverter(), null,
ConfigurationPropertyOptions.None);
class SmtpDeliveryMethodTypeConverter : TypeConverter {
public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType) {
if (sourceType == typeof(string)) {
return true;
}
return base.CanConvertFrom(context, sourceType);
}
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value) {
string s = value as string;
if (s != null) {
s = s.ToLower(CultureInfo.InvariantCulture);
switch (s) {
case "network":
return SmtpDeliveryMethod.Network;
case "specifiedpickupdirectory":
return SmtpDeliveryMethod.SpecifiedPickupDirectory;
#if !FEATURE_PAL
case "pickupdirectoryfromiis":
return SmtpDeliveryMethod.PickupDirectoryFromIis;
#endif
}
}
return base.ConvertFrom(context, culture, value);
}
}
}
internal sealed class SmtpSectionInternal
{
internal SmtpSectionInternal(SmtpSection section)
{
this.deliveryMethod = section.DeliveryMethod;
this.from = section.From;
this.network = new SmtpNetworkElementInternal(section.Network);
this.specifiedPickupDirectory = new SmtpSpecifiedPickupDirectoryElementInternal(section.SpecifiedPickupDirectory);
}
internal SmtpDeliveryMethod DeliveryMethod
{
get { return this.deliveryMethod; }
}
internal SmtpNetworkElementInternal Network
{
get { return this.network; }
}
internal string From
{
get { return this.from; }
}
internal SmtpSpecifiedPickupDirectoryElementInternal SpecifiedPickupDirectory
{
get { return this.specifiedPickupDirectory; }
}
SmtpDeliveryMethod deliveryMethod;
string from = null;
SmtpNetworkElementInternal network = null;
SmtpSpecifiedPickupDirectoryElementInternal specifiedPickupDirectory = null;
internal static object ClassSyncObject
{
get
{
if (classSyncObject == null)
{
Interlocked.CompareExchange(ref classSyncObject, new object(), null);
}
return classSyncObject;
}
}
internal static SmtpSectionInternal GetSection()
{
lock (ClassSyncObject)
{
SmtpSection section = PrivilegedConfigurationManager.GetSection(ConfigurationStrings.SmtpSectionPath) as SmtpSection;
if (section == null)
return null;
return new SmtpSectionInternal(section);
}
}
private static object classSyncObject;
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Net.Configuration
{
using System;
using System.Configuration;
using System.ComponentModel;
using System.Globalization;
using System.Net;
using System.Net.Mail;
using System.Reflection;
using System.Threading;
public sealed class SmtpSection : ConfigurationSection
{
public SmtpSection()
{
this.properties.Add(this.deliveryMethod);
this.properties.Add(this.from);
this.properties.Add(this.network);
this.properties.Add(this.specifiedPickupDirectory);
}
[ConfigurationProperty(ConfigurationStrings.DeliveryMethod, DefaultValue = (SmtpDeliveryMethod) SmtpDeliveryMethod.Network)]
public SmtpDeliveryMethod DeliveryMethod
{
get {
return (SmtpDeliveryMethod)this[this.deliveryMethod];
}
set {
this[this.deliveryMethod] = value;
}
}
[ConfigurationProperty(ConfigurationStrings.From)]
public string From
{
get { return (string)this[this.from]; }
set { this[this.from] = value; }
}
[ConfigurationProperty(ConfigurationStrings.Network)]
public SmtpNetworkElement Network
{
get {
return (SmtpNetworkElement)this[this.network];
}
}
[ConfigurationProperty(ConfigurationStrings.SpecifiedPickupDirectory)]
public SmtpSpecifiedPickupDirectoryElement SpecifiedPickupDirectory
{
get {
return (SmtpSpecifiedPickupDirectoryElement)this[this.specifiedPickupDirectory];
}
}
protected override ConfigurationPropertyCollection Properties
{
get
{
return this.properties;
}
}
//
ConfigurationPropertyCollection properties = new ConfigurationPropertyCollection();
readonly ConfigurationProperty from =
new ConfigurationProperty(ConfigurationStrings.From, typeof(string), null,
ConfigurationPropertyOptions.None);
readonly ConfigurationProperty network =
new ConfigurationProperty(ConfigurationStrings.Network, typeof(SmtpNetworkElement), null,
ConfigurationPropertyOptions.None);
readonly ConfigurationProperty specifiedPickupDirectory =
new ConfigurationProperty(ConfigurationStrings.SpecifiedPickupDirectory, typeof(SmtpSpecifiedPickupDirectoryElement), null,
ConfigurationPropertyOptions.None);
readonly ConfigurationProperty deliveryMethod =
new ConfigurationProperty(ConfigurationStrings.DeliveryMethod, typeof(SmtpDeliveryMethod), SmtpDeliveryMethod.Network, new SmtpDeliveryMethodTypeConverter(), null,
ConfigurationPropertyOptions.None);
class SmtpDeliveryMethodTypeConverter : TypeConverter {
public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType) {
if (sourceType == typeof(string)) {
return true;
}
return base.CanConvertFrom(context, sourceType);
}
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value) {
string s = value as string;
if (s != null) {
s = s.ToLower(CultureInfo.InvariantCulture);
switch (s) {
case "network":
return SmtpDeliveryMethod.Network;
case "specifiedpickupdirectory":
return SmtpDeliveryMethod.SpecifiedPickupDirectory;
#if !FEATURE_PAL
case "pickupdirectoryfromiis":
return SmtpDeliveryMethod.PickupDirectoryFromIis;
#endif
}
}
return base.ConvertFrom(context, culture, value);
}
}
}
internal sealed class SmtpSectionInternal
{
internal SmtpSectionInternal(SmtpSection section)
{
this.deliveryMethod = section.DeliveryMethod;
this.from = section.From;
this.network = new SmtpNetworkElementInternal(section.Network);
this.specifiedPickupDirectory = new SmtpSpecifiedPickupDirectoryElementInternal(section.SpecifiedPickupDirectory);
}
internal SmtpDeliveryMethod DeliveryMethod
{
get { return this.deliveryMethod; }
}
internal SmtpNetworkElementInternal Network
{
get { return this.network; }
}
internal string From
{
get { return this.from; }
}
internal SmtpSpecifiedPickupDirectoryElementInternal SpecifiedPickupDirectory
{
get { return this.specifiedPickupDirectory; }
}
SmtpDeliveryMethod deliveryMethod;
string from = null;
SmtpNetworkElementInternal network = null;
SmtpSpecifiedPickupDirectoryElementInternal specifiedPickupDirectory = null;
internal static object ClassSyncObject
{
get
{
if (classSyncObject == null)
{
Interlocked.CompareExchange(ref classSyncObject, new object(), null);
}
return classSyncObject;
}
}
internal static SmtpSectionInternal GetSection()
{
lock (ClassSyncObject)
{
SmtpSection section = PrivilegedConfigurationManager.GetSection(ConfigurationStrings.SmtpSectionPath) as SmtpSection;
if (section == null)
return null;
return new SmtpSectionInternal(section);
}
}
private static object classSyncObject;
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- HashMembershipCondition.cs
- BulletChrome.cs
- TextAction.cs
- OleAutBinder.cs
- TransformPatternIdentifiers.cs
- XmlUnspecifiedAttribute.cs
- WebHttpBehavior.cs
- Select.cs
- InternalTransaction.cs
- ListViewHitTestInfo.cs
- ToolbarAUtomationPeer.cs
- ColorComboBox.cs
- CommentEmitter.cs
- BaseTemplateCodeDomTreeGenerator.cs
- IdentityManager.cs
- KnownBoxes.cs
- RichTextBoxDesigner.cs
- ConfigXmlText.cs
- TTSEvent.cs
- ScriptManagerProxy.cs
- TransformConverter.cs
- DesignerTransaction.cs
- ThreadPool.cs
- HttpModuleCollection.cs
- ToolStripDropDownButton.cs
- CompiledXpathExpr.cs
- CompareValidator.cs
- MsdtcClusterUtils.cs
- RegisteredDisposeScript.cs
- OleDbPermission.cs
- UpdatePanelTriggerCollection.cs
- DBDataPermissionAttribute.cs
- MiniLockedBorderGlyph.cs
- RevocationPoint.cs
- httpserverutility.cs
- FastEncoderWindow.cs
- User.cs
- _RequestCacheProtocol.cs
- BulletedListEventArgs.cs
- SqlXmlStorage.cs
- serverconfig.cs
- TypeTypeConverter.cs
- DataTrigger.cs
- LocalizableResourceBuilder.cs
- XmlDocument.cs
- MailBnfHelper.cs
- CodeVariableReferenceExpression.cs
- ServiceContractListItem.cs
- DataGridViewSortCompareEventArgs.cs
- XmlSchemaAnnotation.cs
- InvalidCastException.cs
- FunctionParameter.cs
- MatrixAnimationBase.cs
- Matrix3DConverter.cs
- MessageContractExporter.cs
- RSACryptoServiceProvider.cs
- XmlSecureResolver.cs
- TrackingServices.cs
- securitycriticaldataClass.cs
- CacheMemory.cs
- Image.cs
- XmlLanguage.cs
- ComponentResourceManager.cs
- RegionIterator.cs
- SmiContext.cs
- _AutoWebProxyScriptWrapper.cs
- SynthesizerStateChangedEventArgs.cs
- Soap12FormatExtensions.cs
- MenuItemStyleCollection.cs
- MemoryFailPoint.cs
- ColumnResizeAdorner.cs
- TextPatternIdentifiers.cs
- DbDataAdapter.cs
- BitArray.cs
- CallInfo.cs
- SqlUtils.cs
- SecurityMessageProperty.cs
- ObjectResult.cs
- IdentityManager.cs
- ProviderManager.cs
- DataServiceHostFactory.cs
- XamlSerializerUtil.cs
- SelectionRangeConverter.cs
- TextCompositionManager.cs
- TypeBuilder.cs
- NamedPipeHostedTransportConfiguration.cs
- ActivityExecutorSurrogate.cs
- MdiWindowListItemConverter.cs
- propertytag.cs
- ButtonBaseAdapter.cs
- TypeDescriptionProvider.cs
- TextMarkerSource.cs
- MsiStyleLogWriter.cs
- basecomparevalidator.cs
- ClientScriptManagerWrapper.cs
- AbstractDataSvcMapFileLoader.cs
- ScriptIgnoreAttribute.cs
- IPAddress.cs
- ActivityExecutorOperation.cs
- SafeFindHandle.cs