Portoa.NHibernate Interceptor that instructs NHibernate to build entities using an implementation of IServiceProvider Stolen mostly from Mike Valenty Interface used to enable events before and after NHibernate constructs an entity Invoked before an entity is instantiated. Arguments are the entity name, its ID and a service provider Invoked after an entity is instantiated. Arguments are the entity and a service provider Empty session decorator, for easier implementing of the ISession object This is why you don't create interfaces with dozens of methods. The ISession being decorated Handles transactions in NHibernate, does not support nested transactions Default repository implementation for entities with integral identifiers The entity type Default repository implementation for NHibernate The entity type The identifier type The current session