public Configuration With(ManyToOneConcurrentArrayQueuePluginConfiguration configuration) { ManyToOneConcurrentArrayQueuePluginConfiguration = configuration; return(this); }
public void TestThatConfigurationConfirgures() { var configuration = Configuration .Define() .With(PooledCompletesPluginConfiguration .Define() .WithMailbox("queueMailbox") .WithPoolSize(10)) .With(SharedRingBufferMailboxPluginConfiguration .Define() .WithRingSize(65535) .WithFixedBackoff(2) .WithNotifyOnSend(true) .WithDispatcherThrottlingCount(10)) .With(ManyToOneConcurrentArrayQueuePluginConfiguration .Define() .WithRingSize(65535) .WithFixedBackoff(2) .WithNotifyOnSend(true) .WithDispatcherThrottlingCount(10) .WithSendRetires(10)) .With(ConcurrentQueueMailboxPluginConfiguration .Define() .WithDefaultMailbox() .WithNumberOfDispatchersFactor(1.5f) .WithNumberOfDispatchers(0) .WithDispatcherThrottlingCount(10)) .With(ConsoleLoggerPluginConfiguration .Define() .WithDefaultLogger() .WithName("vlingo-net/actors(test)")) .With(CommonSupervisorsPluginConfiguration .Define() .WithSupervisor("default", "pingSupervisor", typeof(IPing), typeof(PingSupervisorActor)) .WithSupervisor("default", "pongSupervisor", typeof(IPong), typeof(PongSupervisorActor))) .With(DefaultSupervisorOverridePluginConfiguration .Define() .WithSupervisor("default", "overrideSupervisor", typeof(DefaultSupervisorOverride))) .With(DirectoryEvictionConfiguration .Define() .WithFillRatioHigh(0.75F) .WithLruThresholdMillis(10000)) .UsingMainProxyGeneratedClassesPath("target/classes/") .UsingMainProxyGeneratedSourcesPath("target/generated-sources/") .UsingTestProxyGeneratedClassesPath("target/test-classes/") .UsingTestProxyGeneratedSourcesPath("target/generated-test-sources/"); Assert.NotNull(configuration); Assert.NotNull(configuration.PooledCompletesPluginConfiguration); Assert.Equal("queueMailbox", configuration.PooledCompletesPluginConfiguration.Mailbox); Assert.Equal(10, configuration.PooledCompletesPluginConfiguration.PoolSize); Assert.NotNull(configuration.SharedRingBufferMailboxPluginConfiguration); Assert.False(configuration.SharedRingBufferMailboxPluginConfiguration.IsDefaultMailbox); Assert.Equal(65535, configuration.SharedRingBufferMailboxPluginConfiguration.RingSize); Assert.Equal(2, configuration.SharedRingBufferMailboxPluginConfiguration.FixedBackoff); Assert.True(configuration.SharedRingBufferMailboxPluginConfiguration.NotifyOnSend); Assert.Equal(10, configuration.SharedRingBufferMailboxPluginConfiguration.DispatcherThrottlingCount); Assert.NotNull(configuration.ManyToOneConcurrentArrayQueuePluginConfiguration); Assert.False(configuration.ManyToOneConcurrentArrayQueuePluginConfiguration.IsDefaultMailbox); Assert.Equal(65535, configuration.ManyToOneConcurrentArrayQueuePluginConfiguration.RingSize); Assert.Equal(2, configuration.ManyToOneConcurrentArrayQueuePluginConfiguration.FixedBackoff); Assert.True(configuration.SharedRingBufferMailboxPluginConfiguration.NotifyOnSend); Assert.Equal(10, configuration.ManyToOneConcurrentArrayQueuePluginConfiguration.DispatcherThrottlingCount); Assert.NotNull(configuration.ConcurrentQueueMailboxPluginConfiguration); Assert.True(configuration.ConcurrentQueueMailboxPluginConfiguration.IsDefaultMailbox); Assert.Equal(1.5f, configuration.ConcurrentQueueMailboxPluginConfiguration.NumberOfDispatchersFactor, 0); Assert.Equal(10, configuration.ConcurrentQueueMailboxPluginConfiguration.DispatcherThrottlingCount); Assert.NotNull(configuration.ConsoleLoggerPluginConfiguration); Assert.True(configuration.ConsoleLoggerPluginConfiguration.IsDefaultLogger); Assert.Equal("vlingo-net/actors(test)", configuration.ConsoleLoggerPluginConfiguration.Name); Assert.NotNull(configuration.CommonSupervisorsPluginConfiguration); Assert.Equal(2, configuration.CommonSupervisorsPluginConfiguration.Count); Assert.Equal("default", configuration.CommonSupervisorsPluginConfiguration.StageName(0)); Assert.Equal("pingSupervisor", configuration.CommonSupervisorsPluginConfiguration.SupervisorName(0)); Assert.Equal(typeof(IPing), configuration.CommonSupervisorsPluginConfiguration.SupervisedProtocol(0)); Assert.Equal(typeof(PingSupervisorActor), configuration.CommonSupervisorsPluginConfiguration.SupervisorClass(0)); Assert.Equal("default", configuration.CommonSupervisorsPluginConfiguration.StageName(1)); Assert.Equal("pongSupervisor", configuration.CommonSupervisorsPluginConfiguration.SupervisorName(1)); Assert.Equal(typeof(IPong), configuration.CommonSupervisorsPluginConfiguration.SupervisedProtocol(1)); Assert.Equal(typeof(PongSupervisorActor), configuration.CommonSupervisorsPluginConfiguration.SupervisorClass(1)); Assert.NotNull(configuration.DefaultSupervisorOverridePluginConfiguration); Assert.Equal(1, configuration.DefaultSupervisorOverridePluginConfiguration.Count); Assert.Equal("default", configuration.DefaultSupervisorOverridePluginConfiguration.StageName(0)); Assert.Equal("overrideSupervisor", configuration.DefaultSupervisorOverridePluginConfiguration.Name); Assert.Equal(typeof(DefaultSupervisorOverride), configuration.DefaultSupervisorOverridePluginConfiguration.SupervisorClass(0)); Assert.Equal("directoryEviction", configuration.DirectoryEvictionConfiguration.Name); Assert.Equal(10000, configuration.DirectoryEvictionConfiguration.LruThresholdMillis); Assert.Equal(0.75F, configuration.DirectoryEvictionConfiguration.FillRatioHigh, 0); Assert.Equal("target/classes/", configuration.MainProxyGeneratedClassesPath); Assert.Equal("target/generated-sources/", configuration.MainProxyGeneratedSourcesPath); Assert.Equal("target/test-classes/", configuration.TestProxyGeneratedClassesPath); Assert.Equal("target/generated-test-sources/", configuration.TestProxyGeneratedSourcesPath); }
private ManyToOneConcurrentArrayQueuePlugin(IPluginConfiguration configuration) { _configuration = (ManyToOneConcurrentArrayQueuePluginConfiguration)configuration; _dispatchers = new ConcurrentDictionary <int, ManyToOneConcurrentArrayQueueDispatcher>(16, 1); }
public Configuration With(ManyToOneConcurrentArrayQueuePluginConfiguration configuration) { ManyToOneConcurrentArrayQueuePluginConfiguration ??= configuration; AddConfigurationOverride(configuration); return(this); }
public ManyToOneConcurrentArrayQueuePlugin(string?name = null) { _configuration = ManyToOneConcurrentArrayQueuePluginConfiguration.Define(); _dispatchers = new ConcurrentDictionary <int, ManyToOneConcurrentArrayQueueDispatcher>(16, 1); }