public void SetUp() { var config = Configure.With(new[] { GetType().Assembly }) .DefaultBuilder() .EmbeddedRavenSubscriptionStorage(); subscriptionStorage = config.Builder.Build <RavenSubscriptionStorage>(); }
public void SetUp() { var config = Configure.With(new[] { GetType().Assembly }) .DefaultBuilder() .EmbeddedRavenSubscriptionStorage(); subscriptionStorage = config.Builder.Build<RavenSubscriptionStorage>(); }
public void SetUp() { using (var server = GetNewServer()) { connectionStringName = "Raven"; var config = Configure.With(new[] {GetType().Assembly}) .DefaultBuilder() .RavenSubscriptionStorage(connectionStringName); subscriptionStorage = config.Builder.Build<RavenSubscriptionStorage>(); } }
public void SetUp() { var config = Configure.With(new[] { GetType().Assembly }) .DefineEndpointName("MyEndpoint") .DefaultBuilder() .RavenPersistence(); store = config.Builder.Build <IDocumentStore>(); config = config.RavenSubscriptionStorage(); subscriptionStorage = config.Builder.Build <RavenSubscriptionStorage>(); }
public void SetUp() { using (var server = GetNewServer()) { connectionStringName = "Raven"; var config = Configure.With(new[] { GetType().Assembly }) .DefaultBuilder() .RavenSubscriptionStorage(connectionStringName); subscriptionStorage = config.Builder.Build <RavenSubscriptionStorage>(); } }
public void SetUp() { using (var server = GetNewServer()) { var config = Configure.With(new[] {GetType().Assembly}) .DefaultBuilder() .RavenPersistence(); store = config.Builder.Build<IDocumentStore>(); config = config.RavenSubscriptionStorage(); subscriptionStorage = config.Builder.Build<RavenSubscriptionStorage>(); } }
public void SetUp() { using (var server = GetNewServer()) { var config = Configure.With(new[] { GetType().Assembly }) .DefaultBuilder() .RavenPersistence(); store = config.Builder.Build <IDocumentStore>(); config = config.RavenSubscriptionStorage(); subscriptionStorage = config.Builder.Build <RavenSubscriptionStorage>(); } }
public override void Run() { using (var store = new DocumentStore()) { store.Url = "http://localhost:8080"; store.Initialize(); var ravenStorage = new RavenSubscriptionStorage(new StoreAccessor(store)); ravenStorage.Init(); var subscriptionStorage = (ISubscriptionStorage)ravenStorage; var testEventMessage = new MessageType(typeof(TestEvent)); for (var i = 0; i < NumberOfSubscribers; i++) { subscriptionStorage.Subscribe(Address.Parse("endpoint" + i), new List <MessageType> { testEventMessage }); } var sw = new Stopwatch(); sw.Start(); Parallel.For( 0, NumberMessages, new ParallelOptions { MaxDegreeOfParallelism = NumberOfThreads }, x => { using (var tx = new TransactionScope()) { subscriptionStorage.GetSubscriberAddressesForMessage(new[] { new MessageType(typeof(TestEvent)) }); tx.Complete(); } }); sw.Stop(); var elapsedMS = sw.ElapsedMilliseconds; Console.Out.WriteLine("Average (ms): {0} - Total:{1}", NumberMessages / elapsedMS, elapsedMS); } }
protected override void Load(ContainerBuilder builder) { IWireup wireup = new WireupModule(); wireup = wireup.Configure <LoggingWireup>() .UseLog4Net(); wireup = wireup.Configure <TransportWireup>() .ReceiveWith(1.Threads()); // number of threads to use for handlers wireup = wireup.Configure <SerializationWireup>() .WithJsonSerializer() .CompressMessages(); wireup = wireup.Configure <EndpointWireup>() .ListenOn("msmq://./Sample.AppService") .ForwardPoisonMessagesTo("msmq://./Sample.Error") .RetryAtLeast(3.Times()); IDocumentStore store = new DocumentStore() { ConnectionStringName = "SubscriptionStorage" }; store.Initialize(); // maybe register the store in the container? RavenSubscriptionStorage subscriptionStorage = new RavenSubscriptionStorage(store); builder.RegisterInstance <RavenSubscriptionStorage>(subscriptionStorage) .As <IStoreSubscriptions>() .SingleInstance() .ExternallyOwned(); wireup = wireup.Configure <SubscriptionStorageWireup>() .WithCustomSubscriptionStorage(subscriptionStorage); // .ConnectTo("SubscriptionStorage"); Type[] commandTypes = new Type[] { typeof(CreatePerson), typeof(MovePerson), typeof(KillPerson), typeof(CreateDocument), typeof(CreateShareClass), typeof(AssociateShareClassToDocument) }; wireup = wireup.Configure <MessageBusWireup>() .RegisterMessageEndpoint("msmq://./Sample.AppService", commandTypes) .RegisterMessageTimeToLive(TimeSpan.MaxValue, commandTypes) .RegisterTransientMessage(commandTypes); builder.RegisterType <CreatePersonCommandHandler>(); builder.RegisterType <MovePersonCommandHandler>(); builder.RegisterType <KillPersonCommandHandler>(); builder.RegisterType <CreateDocumentCommandHandler>(); builder.RegisterType <CreateShareClassCommandHandler>(); builder.RegisterType <AssociateShareClassToDocumentCommandHandler>(); wireup = wireup.Configure <MessageHandlerWireup>() .AddHandler(c => c.Resolve <CreatePersonCommandHandler>()) .AddHandler(c => c.Resolve <MovePersonCommandHandler>()) .AddHandler(c => c.Resolve <KillPersonCommandHandler>()) .AddHandler(c => c.Resolve <CreateDocumentCommandHandler>()) .AddHandler(c => c.Resolve <CreateShareClassCommandHandler>()) .AddHandler(c => c.Resolve <AssociateShareClassToDocumentCommandHandler>()); wireup.Register(builder); builder.RegisterType <TransactionScopeUnitOfWork>() .As <IHandleUnitOfWork>() .InstancePerLifetimeScope() .ExternallyOwned(); }