feat(batch28): implement jetstream api consumer/message/snapshot handlers
This commit is contained in:
@@ -545,4 +545,22 @@ public sealed partial class Account
|
||||
|
||||
return EnableAllJetStreamServiceImportsAndMappings();
|
||||
}
|
||||
|
||||
internal Exception? JsNonClusteredStreamLimitsCheck(StreamConfig config)
|
||||
{
|
||||
var (server, jsa, err) = CheckForJetStream();
|
||||
if (err is not null || server is null || jsa is null)
|
||||
return err ?? new InvalidOperationException("jetstream not enabled for account");
|
||||
|
||||
var selected = jsa.SelectLimits(config.Replicas);
|
||||
if (!selected.Found)
|
||||
return new InvalidOperationException(JsApiErrors.NewJSNoLimitsError().Description ?? "jetstream limits not configured");
|
||||
|
||||
var reservation = jsa.TieredReservation(selected.Tier, config);
|
||||
var js = server.GetJetStream();
|
||||
if (js is null)
|
||||
return new InvalidOperationException("jetstream not enabled");
|
||||
|
||||
return js.CheckAccountLimits(selected.Limits, config, reservation);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user