static Configure UseNHibernateSubscriptionPersisterInternal(this Configure config, Configuration configuration, bool autoUpdateSchema) { ConfigureNHibernate.ThrowIfRequiredPropertiesAreMissing(ConfigureNHibernate.SubscriptionStorageProperties); Unicast.Subscriptions.NHibernate.Installer.Installer.RunInstaller = autoUpdateSchema; ConfigureNHibernate.AddMappings<SubscriptionMap>(configuration); var sessionSource = new SubscriptionStorageSessionProvider(configuration.BuildSessionFactory()); config.Configurer.RegisterSingleton<ISubscriptionStorageSessionProvider>(sessionSource); config.Configurer.ConfigureComponent<SubscriptionStorage>(DependencyLifecycle.InstancePerCall); return config; }
static Configure UseNHibernateTimeoutPersisterInternal(this Configure config, Configuration configuration, bool autoUpdateSchema) { ConfigureNHibernate.ThrowIfRequiredPropertiesAreMissing(ConfigureNHibernate.TimeoutPersisterProperties); TimeoutPersisters.NHibernate.Installer.Installer.RunInstaller = autoUpdateSchema; ConfigureNHibernate.AddMappings<TimeoutEntityMap>(configuration); config.Configurer.ConfigureComponent<TimeoutStorage>(DependencyLifecycle.SingleInstance) .ConfigureProperty(p => p.SessionFactory, configuration.BuildSessionFactory()); return config; }