Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / Configuration / SqlCacheDependencyDatabase.cs / 1305376 / SqlCacheDependencyDatabase.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.Configuration {
using System;
using System.Xml;
using System.Configuration;
using System.Collections.Specialized;
using System.Collections;
using System.Globalization;
using System.IO;
using System.Text;
using System.Diagnostics;
using System.Security.Permissions;
// class SqlCacheDependencySection
public sealed class SqlCacheDependencyDatabase : ConfigurationElement {
private static readonly ConfigurationElementProperty s_elemProperty = new ConfigurationElementProperty(new CallbackValidator(typeof(SqlCacheDependencyDatabase), Validate));
private static ConfigurationPropertyCollection _properties;
private static readonly ConfigurationProperty _propName;
private static readonly ConfigurationProperty _propConnectionStringName;
private static readonly ConfigurationProperty _propPollTime;
static SqlCacheDependencyDatabase() {
// Property initialization
_properties = new ConfigurationPropertyCollection();
_propName =
new ConfigurationProperty("name",
typeof(string),
null,
null,
StdValidatorsAndConverters.NonEmptyStringValidator,
ConfigurationPropertyOptions.IsRequired |
ConfigurationPropertyOptions.IsKey);
_propConnectionStringName =
new ConfigurationProperty("connectionStringName",
typeof(string),
null,
null,
StdValidatorsAndConverters.NonEmptyStringValidator,
ConfigurationPropertyOptions.IsRequired);
_propPollTime = new ConfigurationProperty("pollTime",
typeof(int),
60000,
ConfigurationPropertyOptions.None);
_properties.Add(_propName);
_properties.Add(_propConnectionStringName);
_properties.Add(_propPollTime);
}
private int defaultPollTime; // This may be set by the outer node to specify the default poll time (i.e. not specified on this node)
public SqlCacheDependencyDatabase(string name, string connectionStringName, int pollTime) {
Name = name;
ConnectionStringName = connectionStringName;
PollTime = pollTime;
}
public SqlCacheDependencyDatabase(string name, string connectionStringName) {
Name = name;
ConnectionStringName = connectionStringName;
}
internal SqlCacheDependencyDatabase() {
}
protected override ConfigurationPropertyCollection Properties {
get {
return _properties;
}
}
protected override ConfigurationElementProperty ElementProperty {
get {
return s_elemProperty;
}
}
private static void Validate(object value) {
if (value == null) {
throw new ArgumentNullException("sqlCacheDependencyDatabase");
}
Debug.Assert(value is SqlCacheDependencyDatabase);
SqlCacheDependencyDatabase elem = (SqlCacheDependencyDatabase)value;
if (elem.PollTime != 0 && elem.PollTime < 500) {
throw new ConfigurationErrorsException(
SR.GetString(SR.Invalid_sql_cache_dep_polltime),
elem.ElementInformation.Properties["pollTime"].Source,
elem.ElementInformation.Properties["pollTime"].LineNumber);
}
}
internal void CheckDefaultPollTime(int value) {
// This method will be called by the outer node.
// If the poolTime property is not specified in the node, then grab the one
// from above.
if (ElementInformation.Properties["pollTime"].ValueOrigin == PropertyValueOrigin.Default) {
defaultPollTime = value;
}
}
[ConfigurationProperty("name", IsRequired = true, IsKey = true)]
[StringValidator(MinLength = 1)]
public string Name {
get {
return (string)base[_propName];
}
set {
base[_propName] = value;
}
}
[ConfigurationProperty("connectionStringName", IsRequired = true)]
[StringValidator(MinLength = 1)]
public string ConnectionStringName {
get {
return (string)base[_propConnectionStringName];
}
set {
base[_propConnectionStringName] = value;
}
}
[ConfigurationProperty("pollTime", DefaultValue = 60000)]
public int PollTime {
get {
if (ElementInformation.Properties["pollTime"].ValueOrigin == PropertyValueOrigin.Default) {
return defaultPollTime; // Return the default value from outer node
}
else {
return (int)base[_propPollTime];
}
}
set {
base[_propPollTime] = value;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.Configuration {
using System;
using System.Xml;
using System.Configuration;
using System.Collections.Specialized;
using System.Collections;
using System.Globalization;
using System.IO;
using System.Text;
using System.Diagnostics;
using System.Security.Permissions;
// class SqlCacheDependencySection
public sealed class SqlCacheDependencyDatabase : ConfigurationElement {
private static readonly ConfigurationElementProperty s_elemProperty = new ConfigurationElementProperty(new CallbackValidator(typeof(SqlCacheDependencyDatabase), Validate));
private static ConfigurationPropertyCollection _properties;
private static readonly ConfigurationProperty _propName;
private static readonly ConfigurationProperty _propConnectionStringName;
private static readonly ConfigurationProperty _propPollTime;
static SqlCacheDependencyDatabase() {
// Property initialization
_properties = new ConfigurationPropertyCollection();
_propName =
new ConfigurationProperty("name",
typeof(string),
null,
null,
StdValidatorsAndConverters.NonEmptyStringValidator,
ConfigurationPropertyOptions.IsRequired |
ConfigurationPropertyOptions.IsKey);
_propConnectionStringName =
new ConfigurationProperty("connectionStringName",
typeof(string),
null,
null,
StdValidatorsAndConverters.NonEmptyStringValidator,
ConfigurationPropertyOptions.IsRequired);
_propPollTime = new ConfigurationProperty("pollTime",
typeof(int),
60000,
ConfigurationPropertyOptions.None);
_properties.Add(_propName);
_properties.Add(_propConnectionStringName);
_properties.Add(_propPollTime);
}
private int defaultPollTime; // This may be set by the outer node to specify the default poll time (i.e. not specified on this node)
public SqlCacheDependencyDatabase(string name, string connectionStringName, int pollTime) {
Name = name;
ConnectionStringName = connectionStringName;
PollTime = pollTime;
}
public SqlCacheDependencyDatabase(string name, string connectionStringName) {
Name = name;
ConnectionStringName = connectionStringName;
}
internal SqlCacheDependencyDatabase() {
}
protected override ConfigurationPropertyCollection Properties {
get {
return _properties;
}
}
protected override ConfigurationElementProperty ElementProperty {
get {
return s_elemProperty;
}
}
private static void Validate(object value) {
if (value == null) {
throw new ArgumentNullException("sqlCacheDependencyDatabase");
}
Debug.Assert(value is SqlCacheDependencyDatabase);
SqlCacheDependencyDatabase elem = (SqlCacheDependencyDatabase)value;
if (elem.PollTime != 0 && elem.PollTime < 500) {
throw new ConfigurationErrorsException(
SR.GetString(SR.Invalid_sql_cache_dep_polltime),
elem.ElementInformation.Properties["pollTime"].Source,
elem.ElementInformation.Properties["pollTime"].LineNumber);
}
}
internal void CheckDefaultPollTime(int value) {
// This method will be called by the outer node.
// If the poolTime property is not specified in the node, then grab the one
// from above.
if (ElementInformation.Properties["pollTime"].ValueOrigin == PropertyValueOrigin.Default) {
defaultPollTime = value;
}
}
[ConfigurationProperty("name", IsRequired = true, IsKey = true)]
[StringValidator(MinLength = 1)]
public string Name {
get {
return (string)base[_propName];
}
set {
base[_propName] = value;
}
}
[ConfigurationProperty("connectionStringName", IsRequired = true)]
[StringValidator(MinLength = 1)]
public string ConnectionStringName {
get {
return (string)base[_propConnectionStringName];
}
set {
base[_propConnectionStringName] = value;
}
}
[ConfigurationProperty("pollTime", DefaultValue = 60000)]
public int PollTime {
get {
if (ElementInformation.Properties["pollTime"].ValueOrigin == PropertyValueOrigin.Default) {
return defaultPollTime; // Return the default value from outer node
}
else {
return (int)base[_propPollTime];
}
}
set {
base[_propPollTime] = value;
}
}
}
}
// 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
- MatchingStyle.cs
- MetadataArtifactLoaderFile.cs
- DocumentGridContextMenu.cs
- RSAOAEPKeyExchangeFormatter.cs
- ListViewTableRow.cs
- PageAsyncTaskManager.cs
- XPathArrayIterator.cs
- _SpnDictionary.cs
- NumericUpDownAcceleration.cs
- BindingMAnagerBase.cs
- SizeAnimationUsingKeyFrames.cs
- CompoundFileDeflateTransform.cs
- BuildManagerHost.cs
- DataObjectEventArgs.cs
- WindowsGrip.cs
- FunctionImportElement.cs
- PieceNameHelper.cs
- securitymgrsite.cs
- RightsManagementInformation.cs
- JsonDeserializer.cs
- BooleanToSelectiveScrollingOrientationConverter.cs
- IndexingContentUnit.cs
- CoordinationService.cs
- Paragraph.cs
- DeflateStreamAsyncResult.cs
- SecurityPolicySection.cs
- BitmapSourceSafeMILHandle.cs
- InkCanvasAutomationPeer.cs
- ZipIOCentralDirectoryBlock.cs
- DiscoveryDocument.cs
- XamlDebuggerXmlReader.cs
- ManagementQuery.cs
- TemplateEditingFrame.cs
- InvalidPrinterException.cs
- DataGridViewCellEventArgs.cs
- ClientConfigPaths.cs
- FilterQueryOptionExpression.cs
- Metafile.cs
- WaitHandleCannotBeOpenedException.cs
- Socket.cs
- XmlAttributeCollection.cs
- ServiceInstanceProvider.cs
- RefExpr.cs
- UnsafeNativeMethodsTablet.cs
- XamlToRtfWriter.cs
- DrawingState.cs
- OleDbWrapper.cs
- Executor.cs
- Hex.cs
- UInt16Storage.cs
- OptimisticConcurrencyException.cs
- contentDescriptor.cs
- SystemColorTracker.cs
- EventLogQuery.cs
- ReferenceConverter.cs
- DoubleLinkList.cs
- TrackBar.cs
- DrawingContextDrawingContextWalker.cs
- Single.cs
- EntityViewContainer.cs
- StringKeyFrameCollection.cs
- SafeIUnknown.cs
- ViewSimplifier.cs
- ContractNamespaceAttribute.cs
- SerializationException.cs
- CompressionTransform.cs
- IgnoreFileBuildProvider.cs
- ObjectToIdCache.cs
- XPathDocumentIterator.cs
- SerializationSectionGroup.cs
- Triplet.cs
- DateTimeOffsetConverter.cs
- DockingAttribute.cs
- ReadOnlyActivityGlyph.cs
- PointHitTestResult.cs
- ImageBrush.cs
- AnnotationMap.cs
- WindowsRichEdit.cs
- ContainsRowNumberChecker.cs
- NumberSubstitution.cs
- XmlQueryType.cs
- SqlTypeSystemProvider.cs
- MetadataArtifactLoaderResource.cs
- ParserContext.cs
- ScrollableControlDesigner.cs
- WebPartUtil.cs
- CodeAccessSecurityEngine.cs
- RightsManagementInformation.cs
- HttpStaticObjectsCollectionWrapper.cs
- ButtonChrome.cs
- BitmapEffectvisualstate.cs
- Int32RectValueSerializer.cs
- TitleStyle.cs
- Encoding.cs
- PersonalizableTypeEntry.cs
- XmlSchemaSimpleType.cs
- EntitySetBaseCollection.cs
- InlinedAggregationOperatorEnumerator.cs
- OracleCommand.cs
- PeerNameRegistration.cs