protected SnapshotStore() { var extension = Persistence.Instance.Apply(Context.System); if (extension == null) { throw new ArgumentException("Couldn't initialize SnapshotStore instance, because associated Persistence extension has not been used in current actor system context."); } _publish = extension.Settings.Internal.PublishPluginCommands; var config = extension.ConfigFor(Self); _breaker = CircuitBreaker.Create( config.GetInt("circuit-breaker.max-failures"), config.GetTimeSpan("circuit-breaker.call-timeout"), config.GetTimeSpan("circuit-breaker.reset-timeout")); }