private static ActorMaterializerSettings Create(Config config) { return(new ActorMaterializerSettings( initialInputBufferSize: config.GetInt("initial-input-buffer-size", 4), maxInputBufferSize: config.GetInt("max-input-buffer-size", 16), dispatcher: config.GetString("dispatcher", string.Empty), supervisionDecider: Deciders.StoppingDecider, subscriptionTimeoutSettings: StreamSubscriptionTimeoutSettings.Create(config), isDebugLogging: config.GetBoolean("debug-logging"), outputBurstLimit: config.GetInt("output-burst-limit", 1000), isFuzzingMode: config.GetBoolean("debug.fuzzing-mode"), isAutoFusing: config.GetBoolean("auto-fusing", true), maxFixedBufferSize: config.GetInt("max-fixed-buffer-size", 1000000000), syncProcessingLimit: config.GetInt("sync-processing-limit", 1000))); }
// NOTE: Make sure that this class can handle empty Config private static ActorMaterializerSettings Create(Config config) { // No need to check for Config.IsEmpty because this function expects empty Config. if (config == null) { throw ConfigurationException.NullOrEmptyConfig <ActorMaterializerSettings>(); } return(new ActorMaterializerSettings( initialInputBufferSize: config.GetInt("initial-input-buffer-size", 4), maxInputBufferSize: config.GetInt("max-input-buffer-size", 16), dispatcher: config.GetString("dispatcher", string.Empty), supervisionDecider: Deciders.StoppingDecider, subscriptionTimeoutSettings: StreamSubscriptionTimeoutSettings.Create(config), isDebugLogging: config.GetBoolean("debug-logging", false), outputBurstLimit: config.GetInt("output-burst-limit", 1000), isFuzzingMode: config.GetBoolean("debug.fuzzing-mode", false), isAutoFusing: config.GetBoolean("auto-fusing", true), maxFixedBufferSize: config.GetInt("max-fixed-buffer-size", 1000000000), syncProcessingLimit: config.GetInt("sync-processing-limit", 1000), streamRefSettings: StreamRefSettings.Create(config.GetConfig("stream-ref")))); }