C# Class Castle.ActiveRecord.Framework.Scopes.AbstractScope

Abstract ISessionScope implementation
Inheritance: System.MarshalByRefObject, ISessionScope
Exibir arquivo Open project: nats/castle-1.0.3-mono Class Usage Examples

Protected Properties

Property Type Description
key2Session ISession>.IDictionary

Public Methods

Method Description
AbstractScope ( FlushAction flushAction, SessionScopeType type ) : System

Initializes a new instance of the AbstractScope class.

Dispose ( ) : void

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

FailSession ( ISession session ) : void

Marks the session as failed

Flush ( ) : void

Flushes the sessions that this scope is maintaining

GetSession ( object key ) : ISession

This method should return the session instance associated with the key.

IsKeyKnown ( object key ) : bool

This method is invoked when the Castle.ActiveRecord.Framework.ISessionFactoryHolder instance needs a session instance. Instead of creating one it interrogates the active scope for one. The scope implementation must check if it has a session registered for the given key. RegisterSession

OpenSession ( ISessionFactory sessionFactory, IInterceptor interceptor ) : ISession

If the WantsToCreateTheSession returned true then this method is invoked to allow the scope to create a properly configured session

RegisterSession ( object key, ISession session ) : void

This method is invoked when no session was available at and the Castle.ActiveRecord.Framework.ISessionFactoryHolder just created one. So it registers the session created within this scope using a key. The scope implementation shouldn't make any assumption on what the key actually is as we reserve the right to change it IsKeyKnown

Protected Methods

Method Description
DiscardSessions ( ICollection sessions ) : void

Discards the sessions.

Initialize ( ISession session ) : void

Initializes the specified session.

PerformDisposal ( ICollection sessions ) : void

Performs the disposal.

PerformDisposal ( ICollection sessions, bool flush, bool close ) : void

Performs the disposal.

SetFlushMode ( ISession session ) : void

Sets the flush mode.

Private Methods

Method Description
GetSessions ( ) : ICollection

Gets the sessions.

RemoveSession ( ISession session ) : void

Removes the session.

Method Details

AbstractScope() public method

Initializes a new instance of the AbstractScope class.
public AbstractScope ( FlushAction flushAction, SessionScopeType type ) : System
flushAction FlushAction The flush action.
type SessionScopeType The type.
return System

DiscardSessions() protected method

Discards the sessions.
protected DiscardSessions ( ICollection sessions ) : void
sessions ICollection The sessions.
return void

Dispose() public method

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
public Dispose ( ) : void
return void

FailSession() public abstract method

Marks the session as failed
public abstract FailSession ( ISession session ) : void
session ISession The session
return void

Flush() public method

Flushes the sessions that this scope is maintaining
public Flush ( ) : void
return void

GetSession() public method

This method should return the session instance associated with the key.
public GetSession ( object key ) : ISession
key object an object instance
return ISession

Initialize() protected method

Initializes the specified session.
protected Initialize ( ISession session ) : void
session ISession The session.
return void

IsKeyKnown() public method

This method is invoked when the Castle.ActiveRecord.Framework.ISessionFactoryHolder instance needs a session instance. Instead of creating one it interrogates the active scope for one. The scope implementation must check if it has a session registered for the given key. RegisterSession
public IsKeyKnown ( object key ) : bool
key object an object instance
return bool

OpenSession() public method

If the WantsToCreateTheSession returned true then this method is invoked to allow the scope to create a properly configured session
public OpenSession ( ISessionFactory sessionFactory, IInterceptor interceptor ) : ISession
sessionFactory ISessionFactory From where to open the session
interceptor IInterceptor the NHibernate interceptor
return ISession

PerformDisposal() protected method

Performs the disposal.
protected PerformDisposal ( ICollection sessions ) : void
sessions ICollection The sessions.
return void

PerformDisposal() protected method

Performs the disposal.
protected PerformDisposal ( ICollection sessions, bool flush, bool close ) : void
sessions ICollection The sessions.
flush bool if set to true [flush].
close bool if set to true [close].
return void

RegisterSession() public method

This method is invoked when no session was available at and the Castle.ActiveRecord.Framework.ISessionFactoryHolder just created one. So it registers the session created within this scope using a key. The scope implementation shouldn't make any assumption on what the key actually is as we reserve the right to change it IsKeyKnown
public RegisterSession ( object key, ISession session ) : void
key object an object instance
session ISession An instance of ISession
return void

SetFlushMode() protected method

Sets the flush mode.
protected SetFlushMode ( ISession session ) : void
session ISession The session.
return void

Property Details

key2Session protected_oe property

Map between a key to its session
protected IDictionary key2Session
return ISession>.IDictionary