Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / fx / src / xsp / System / Web / State / ISessionStateStore.cs / 1 / ISessionStateStore.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * SessionStateStoreProviderBase * */ namespace System.Web.SessionState { using System.Xml; using System.Security.Permissions; using System.Configuration.Provider; using System.Collections.Specialized; [FlagsAttribute()] internal enum SessionStateItemFlags : int { None = 0x00000000, Uninitialized = 0x00000001, IgnoreCacheItemRemoved = 0x00000002 } [FlagsAttribute()] public enum SessionStateActions : int { None = 0x00000000, InitializeItem = 0x00000001 } // This interface is used by SessionStateModule to read/write the session state data [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public abstract class SessionStateStoreProviderBase : ProviderBase { public abstract void Dispose(); // Called by SessionStateModule to notify the provider that Session_End is defined // in global.asax, and so when an item expires, it should call the expireCallback // If the provider does not support session expiry, it should return false. public abstract bool SetItemExpireCallback(SessionStateItemExpireCallback expireCallback); // Called at the beginning of the AcquireRequestState event public abstract void InitializeRequest(HttpContext context); // Get and return a SessionStateStoreData. // Please public abstract SessionStateStoreData GetItem(HttpContext context, String id, out bool locked, out TimeSpan lockAge, out object lockId, out SessionStateActions actions); // Get and lock a SessionStateStoreData. // Please public abstract SessionStateStoreData GetItemExclusive(HttpContext context, String id, out bool locked, out TimeSpan lockAge, out object lockId, out SessionStateActions actions); // Unlock an item locked by GetExclusive // 'lockId' is the lock context returned by previous call to GetExclusive public abstract void ReleaseItemExclusive(HttpContext context, String id, object lockId); // Write an item. // Note: The item is originally obtained by GetExclusive // Because SessionStateModule will release (by ReleaseExclusive) am item if // it has been locked for too long, so it is possible that the request calling // Set() may have lost the lock to someone else already. This can be // discovered by comparing the supplied lockId with the lockId value // stored with the state item. public abstract void SetAndReleaseItemExclusive(HttpContext context, String id, SessionStateStoreData item, object lockId, bool newItem); // Remove an item. See the public abstract void RemoveItem(HttpContext context, String id, object lockId, SessionStateStoreData item); // Reset the expire time of an item based on its timeout value public abstract void ResetItemTimeout(HttpContext context, String id); // Create a brand new SessionStateStoreData. The created SessionStateStoreData must have // a non-null ISessionStateItemCollection. public abstract SessionStateStoreData CreateNewStoreData(HttpContext context, int timeout); public abstract void CreateUninitializedItem(HttpContext context, String id, int timeout); // Called during EndRequest event public abstract void EndRequest(HttpContext context); internal virtual void Initialize(string name, NameValueCollection config, IPartitionResolver partitionResolver) { } } [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class SessionStateStoreData { ISessionStateItemCollection _sessionItems; HttpStaticObjectsCollection _staticObjects; int _timeout; public SessionStateStoreData(ISessionStateItemCollection sessionItems, HttpStaticObjectsCollection staticObjects, int timeout) { _sessionItems = sessionItems; _staticObjects = staticObjects; _timeout = timeout; } virtual public ISessionStateItemCollection Items { get { return _sessionItems; } } virtual public HttpStaticObjectsCollection StaticObjects { get { return _staticObjects; } } virtual public int Timeout { get { return _timeout; } set { _timeout = value; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- GridSplitter.cs
- TypeDependencyAttribute.cs
- ReferenceService.cs
- UITypeEditors.cs
- TextStore.cs
- SiteMapNodeCollection.cs
- InvariantComparer.cs
- SiteMapDataSourceView.cs
- SolidBrush.cs
- CardSpaceShim.cs
- TraceContext.cs
- XmlDataSourceView.cs
- SchemaName.cs
- ListControl.cs
- TagNameToTypeMapper.cs
- IItemProperties.cs
- QueryContinueDragEventArgs.cs
- Menu.cs
- SqlClientMetaDataCollectionNames.cs
- regiisutil.cs
- TypeTypeConverter.cs
- XhtmlBasicValidatorAdapter.cs
- XmlDataDocument.cs
- ThemeableAttribute.cs
- NavigatorOutput.cs
- FillErrorEventArgs.cs
- PrimitiveDataContract.cs
- CommittableTransaction.cs
- Globals.cs
- FunctionUpdateCommand.cs
- OutOfProcStateClientManager.cs
- CustomCategoryAttribute.cs
- LineGeometry.cs
- ColumnReorderedEventArgs.cs
- ScrollableControl.cs
- ReadOnlyCollectionBase.cs
- ContainerUIElement3D.cs
- Int16Animation.cs
- TextParagraphCache.cs
- ResourceContainer.cs
- CodeAttributeArgumentCollection.cs
- MethodBuilder.cs
- CodeDirectiveCollection.cs
- BamlResourceDeserializer.cs
- NamespaceInfo.cs
- SupportingTokenChannel.cs
- CfgParser.cs
- CapacityStreamGeometryContext.cs
- Types.cs
- DeviceContext.cs
- MenuItemBinding.cs
- CurrentChangedEventManager.cs
- BitmapEffectDrawingContextState.cs
- XmlQualifiedName.cs
- ControlEvent.cs
- HashLookup.cs
- DataControlButton.cs
- GlyphElement.cs
- XmlSchemaNotation.cs
- DataGridViewElement.cs
- UriExt.cs
- SqlDuplicator.cs
- RuntimeComponentFilter.cs
- SettingsPropertyCollection.cs
- JsonWriterDelegator.cs
- StreamGeometryContext.cs
- ChangeTracker.cs
- PageHandlerFactory.cs
- sqlcontext.cs
- Queue.cs
- ElementUtil.cs
- ProviderConnectionPoint.cs
- TagMapCollection.cs
- COM2ColorConverter.cs
- ConnectionStringSettings.cs
- DeleteWorkflowOwnerCommand.cs
- DataTable.cs
- DataGridPagerStyle.cs
- TreeNodeSelectionProcessor.cs
- SqlMethodTransformer.cs
- EntityRecordInfo.cs
- WorkflowMarkupSerializerMapping.cs
- BamlLocalizableResourceKey.cs
- AesCryptoServiceProvider.cs
- DynamicILGenerator.cs
- KeyTime.cs
- FileRecordSequenceCompletedAsyncResult.cs
- X509IssuerSerialKeyIdentifierClause.cs
- ArrangedElement.cs
- ScriptBehaviorDescriptor.cs
- DesignerActionUIService.cs
- DataServiceResponse.cs
- StyleBamlRecordReader.cs
- Delegate.cs
- SchemaMerger.cs
- XhtmlBasicCommandAdapter.cs
- ObjectQueryExecutionPlan.cs
- RectAnimation.cs
- QilStrConcat.cs
- ConfigXmlCDataSection.cs