protected override void SetUp() { base.SetUp(); IDocumentSerializer serializer = new JsonNetDocumentSerializer(); IDocumentStoreFactory store = new FileDocumentStoreFactory(StorageBaseDir, serializer); RouteManager = new RouteManager(); Service = new SubscriptionService(store, RouteManager, MyQueueName); store.Create <Type, SubscriptionRegistration>().Clear(); }
public void WhenCreatingWithDefaultConstructorValuesItInitializesFromConfigFile() { // Arrange IDocumentSerializer serializer = new JsonNetDocumentSerializer(); IDocumentStoreFactory store = new FileDocumentStoreFactory(StorageBaseDir, serializer); IRouteManager routeManager = new RouteManager(); SubscriptionService service = new SubscriptionService(store, routeManager); Assert.AreEqual("Zebra", service.InputQueueName.Name); IList <RouteRegistration> routes = routeManager.GetRoutes().ToList(); Assert.AreEqual(2, routes.Count); Assert.AreEqual("Abc.Def", routes[0].MessageFilter); Assert.AreEqual("Alibaba", routes[0].Destination.Name); Assert.AreEqual("Xyz.Qwe", routes[1].MessageFilter); Assert.AreEqual("RobinHat", routes[1].Destination.Name); }
/// <summary> /// Use file based storage for subscriptions. /// </summary> /// <param name="cfg"></param> /// <param name="baseDir"></param> /// <returns></returns> public static MessageBusConfiguration WithFileSubscriptionStore(this MessageBusConfiguration cfg, string baseDir) { if (cfg.ContainsKey(SubscriptionStoreFactory_SettingsKey)) { throw new InvalidOperationException("You should not configure subscription store for message bus twice."); } Logger.Debug("Using plain files for storing subscription registrations."); Condition.Requires(cfg, "cfg").IsNotNull(); Condition.Requires(baseDir, "baseDir").IsNotNull(); IDocumentSerializer documentSerializer = GetSubscriptionSerializer(cfg); IDocumentStoreFactory docStoreFactory = new FileDocumentStoreFactory(baseDir, documentSerializer); cfg.Set(SubscriptionStoreFactory_SettingsKey, docStoreFactory); return(cfg); }
/// <summary> /// Use file based storing of events and internal data structures. /// </summary> /// <param name="cfg"></param> /// <param name="baseDir"></param> /// <returns></returns> public static EventStoreConfiguration WithFileDocumentStore(this EventStoreConfiguration cfg, string baseDir) { if (cfg.ContainsKey(DocumentStoreFactory_SettingsKey)) { throw new InvalidOperationException("You should not configure document store for event store twice."); } Logger.Debug("Using plain files for storing documents used in event store"); Condition.Requires(cfg, "cfg").IsNotNull(); Condition.Requires(baseDir, "baseDir").IsNotNull(); IDocumentSerializer documentSerializer = cfg.Get <IDocumentSerializer>(DocumentSerializer_SettingsKey); if (documentSerializer == null) { throw new InvalidOperationException("No document serializer has been configured for event store."); } IDocumentStoreFactory docStoreFactory = new FileDocumentStoreFactory(baseDir, documentSerializer); cfg.Set(DocumentStoreFactory_SettingsKey, docStoreFactory); return(cfg); }
/// <summary> /// Use file based storing of events and internal data structures. /// </summary> /// <param name="cfg"></param> /// <param name="baseDir"></param> /// <returns></returns> public static EventStoreConfiguration WithFileDocumentStore(this EventStoreConfiguration cfg, string baseDir) { if (cfg.ContainsKey(DocumentStoreFactory_SettingsKey)) throw new InvalidOperationException("You should not configure document store for event store twice."); Logger.Debug("Using plain files for storing documents used in event store"); Condition.Requires(cfg, "cfg").IsNotNull(); Condition.Requires(baseDir, "baseDir").IsNotNull(); IDocumentSerializer documentSerializer = cfg.Get<IDocumentSerializer>(DocumentSerializer_SettingsKey); if (documentSerializer == null) throw new InvalidOperationException("No document serializer has been configured for event store."); IDocumentStoreFactory docStoreFactory = new FileDocumentStoreFactory(baseDir, documentSerializer); cfg.Set(DocumentStoreFactory_SettingsKey, docStoreFactory); return cfg; }
protected override void SetUp() { base.SetUp(); IDocumentSerializer serializer = new JsonNetDocumentSerializer(); IDocumentStoreFactory store = new FileDocumentStoreFactory(StorageBaseDir, serializer); RouteManager = new RouteManager(); Service = new SubscriptionService(store, RouteManager, MyQueueName); store.Create<Type, SubscriptionRegistration>().Clear(); }
public void WhenCreatingWithDefaultConstructorValuesItInitializesFromConfigFile() { // Arrange IDocumentSerializer serializer = new JsonNetDocumentSerializer(); IDocumentStoreFactory store = new FileDocumentStoreFactory(StorageBaseDir, serializer); IRouteManager routeManager = new RouteManager(); SubscriptionService service = new SubscriptionService(store, routeManager); Assert.AreEqual("Zebra", service.InputQueueName.Name); IList<RouteRegistration> routes = routeManager.GetRoutes().ToList(); Assert.AreEqual(2, routes.Count); Assert.AreEqual("Abc.Def", routes[0].MessageFilter); Assert.AreEqual("Alibaba", routes[0].Destination.Name); Assert.AreEqual("Xyz.Qwe", routes[1].MessageFilter); Assert.AreEqual("RobinHat", routes[1].Destination.Name); }