Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / NetFx35 / System.WorkflowServices / System / ServiceModel / Description / PersistenceProviderBehavior.cs / 1305376 / PersistenceProviderBehavior.cs
//------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------
namespace System.ServiceModel.Description
{
using System;
using System.Globalization;
using System.ServiceModel.Administration;
using System.ServiceModel.Persistence;
public class PersistenceProviderBehavior : IServiceBehavior, IWmiInstanceProvider
{
internal static readonly TimeSpan DefaultPersistenceOperationTimeout = TimeSpan.Parse(DefaultPersistenceOperationTimeoutString, CultureInfo.InvariantCulture);
// 30 seconds was chosen because it is the default timeout for SqlCommand
// (seemed like a reasonable reference point)
internal const string DefaultPersistenceOperationTimeoutString = "00:00:30";
TimeSpan persistenceOperationTimeout;
PersistenceProviderFactory persistenceProviderFactory;
public PersistenceProviderBehavior(PersistenceProviderFactory providerFactory)
: this(providerFactory, DefaultPersistenceOperationTimeout)
{
// empty
}
public PersistenceProviderBehavior(PersistenceProviderFactory providerFactory, TimeSpan persistenceOperationTimeout)
{
this.PersistenceProviderFactory = providerFactory;
this.PersistenceOperationTimeout = persistenceOperationTimeout;
}
public TimeSpan PersistenceOperationTimeout
{
get
{
return this.persistenceOperationTimeout;
}
set
{
if (value < TimeSpan.Zero)
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(
new ArgumentOutOfRangeException(SR2.GetString(SR2.PersistenceOperationTimeoutOutOfRange)));
}
this.persistenceOperationTimeout = value;
}
}
public PersistenceProviderFactory PersistenceProviderFactory
{
get
{
return this.persistenceProviderFactory;
}
set
{
if (value == null)
{
throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgumentNull("value");
}
this.persistenceProviderFactory = value;
}
}
public virtual void AddBindingParameters(ServiceDescription serviceDescription, ServiceHostBase serviceHostBase, System.Collections.ObjectModel.Collection endpoints, System.ServiceModel.Channels.BindingParameterCollection bindingParameters)
{
// empty
}
public virtual void ApplyDispatchBehavior(ServiceDescription serviceDescription, ServiceHostBase serviceHostBase)
{
// empty
}
void IWmiInstanceProvider.FillInstance(IWmiInstance wmiInstance)
{
wmiInstance.SetProperty("PersistenceOperationTimeout", this.PersistenceOperationTimeout.ToString());
wmiInstance.SetProperty("PersistenceProviderFactoryType", this.PersistenceProviderFactory.GetType().FullName);
}
string IWmiInstanceProvider.GetInstanceType()
{
return "PersistenceProviderBehavior";
}
public virtual void Validate(ServiceDescription serviceDescription, ServiceHostBase serviceHostBase)
{
// empty
}
}
}
// 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
- XmlSchemaAttributeGroupRef.cs
- RelationshipConstraintValidator.cs
- DataGridViewEditingControlShowingEventArgs.cs
- ChannelHandler.cs
- ProbeMatchesMessageCD1.cs
- EntityDataSourceChangingEventArgs.cs
- StructuredType.cs
- MailHeaderInfo.cs
- FormsAuthenticationConfiguration.cs
- TransformedBitmap.cs
- XmlSerializationWriter.cs
- OleDbConnectionPoolGroupProviderInfo.cs
- DataGridItemCollection.cs
- CommentAction.cs
- AlphabeticalEnumConverter.cs
- ConfigurationLockCollection.cs
- Int16Converter.cs
- ResXDataNode.cs
- ComponentEditorForm.cs
- StringArrayConverter.cs
- QueryContinueDragEvent.cs
- CompositeTypefaceMetrics.cs
- Size3DValueSerializer.cs
- WSSecurityOneDotZeroSendSecurityHeader.cs
- EncryptedKey.cs
- ActivityDesignerAccessibleObject.cs
- Tool.cs
- Enum.cs
- cache.cs
- SplitContainer.cs
- ReflectTypeDescriptionProvider.cs
- linebase.cs
- WebContext.cs
- MDIControlStrip.cs
- HotCommands.cs
- DataKeyArray.cs
- ImageIndexConverter.cs
- FullTrustAssembly.cs
- HttpResponseHeader.cs
- PackWebRequestFactory.cs
- ComAdminWrapper.cs
- DesigntimeLicenseContextSerializer.cs
- BevelBitmapEffect.cs
- ColumnCollection.cs
- Confirm.cs
- AssemblyBuilder.cs
- DeferredTextReference.cs
- DataGridViewComboBoxColumnDesigner.cs
- HtmlShimManager.cs
- ButtonDesigner.cs
- TdsParserSafeHandles.cs
- WindowsAuthenticationModule.cs
- IIS7WorkerRequest.cs
- LayoutInformation.cs
- WinInet.cs
- SiteMapSection.cs
- AppDomainManager.cs
- EntityContainer.cs
- AssemblyGen.cs
- GridItemProviderWrapper.cs
- MouseGesture.cs
- ProtocolReflector.cs
- XmlSchemaSimpleContentRestriction.cs
- TableHeaderCell.cs
- ReceiveContext.cs
- NamedPermissionSet.cs
- SqlProviderServices.cs
- DbConnectionStringBuilder.cs
- SvcMapFileLoader.cs
- SourceFileBuildProvider.cs
- DrawingServices.cs
- MenuTracker.cs
- SafeCloseHandleCritical.cs
- ImportCatalogPart.cs
- SevenBitStream.cs
- MembershipSection.cs
- PartialCachingControl.cs
- HostingEnvironmentSection.cs
- FontUnitConverter.cs
- TraceHwndHost.cs
- HealthMonitoringSection.cs
- OneOfElement.cs
- Point3DCollection.cs
- SafeSecurityHandles.cs
- RequestDescription.cs
- TreeBuilder.cs
- EpmCustomContentSerializer.cs
- SwitchElementsCollection.cs
- _SpnDictionary.cs
- DataListItemEventArgs.cs
- XmlTextEncoder.cs
- SessionIDManager.cs
- AddInBase.cs
- NotifyParentPropertyAttribute.cs
- DataGridViewButtonCell.cs
- FloatUtil.cs
- SignatureResourcePool.cs
- DataListItemEventArgs.cs
- EntityContainer.cs
- oledbmetadatacolumnnames.cs