public void RefreshSubscriptions() { using (var session = _sessionFactory.OpenSession()) { var subscriptions = session.CreateCriteria <Subscription>().List <Subscription>(); var memoryStore = new InMemorySubscriptionStore(); foreach (var subscription in subscriptions) { var address = Address.Parse(subscription.SubscriberAddress as string); var messageType = Type.GetType(subscription.MessageType as string); if (messageType != null) { memoryStore.Subscribe(address, messageType); } } _memoryStore = memoryStore; } }
public NHibernateSubscriptionStore(ISessionFactory sessionFactory, ILoggerFactory loggerFactory) { _sessionFactory = sessionFactory; _memoryStore = new InMemorySubscriptionStore(); _logger = loggerFactory.Create("EventSourcing.NHibernateSubscriptionStore"); }