Пример #1
0
        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;
            }
        }
Пример #2
0
 public NHibernateSubscriptionStore(ISessionFactory sessionFactory, ILoggerFactory loggerFactory)
 {
     _sessionFactory = sessionFactory;
     _memoryStore    = new InMemorySubscriptionStore();
     _logger         = loggerFactory.Create("EventSourcing.NHibernateSubscriptionStore");
 }