feat: define jetstream storage interfaces
This commit is contained in:
9
src/NATS.Server/JetStream/Storage/IStreamStore.cs
Normal file
9
src/NATS.Server/JetStream/Storage/IStreamStore.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using NATS.Server.JetStream.Models;
|
||||
|
||||
namespace NATS.Server.JetStream.Storage;
|
||||
|
||||
public interface IStreamStore
|
||||
{
|
||||
ValueTask<ulong> AppendAsync(string subject, ReadOnlyMemory<byte> payload, CancellationToken ct);
|
||||
ValueTask<StreamState> GetStateAsync(CancellationToken ct);
|
||||
}
|
||||
9
src/NATS.Server/JetStream/Storage/StoredMessage.cs
Normal file
9
src/NATS.Server/JetStream/Storage/StoredMessage.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
namespace NATS.Server.JetStream.Storage;
|
||||
|
||||
public sealed class StoredMessage
|
||||
{
|
||||
public ulong Sequence { get; init; }
|
||||
public string Subject { get; init; } = string.Empty;
|
||||
public ReadOnlyMemory<byte> Payload { get; init; }
|
||||
public bool Redelivered { get; init; }
|
||||
}
|
||||
Reference in New Issue
Block a user