# JournalStorageConsumerExtensions.Read(IJournalStorageConsumer, ReadOnlySequence&lt;byte&gt;, IJournalMetadata?, bool)

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.journaling/orleans.journaling.journalstorageconsumerextensions/) | [Methods](/orleans/docs/api/csharp/microsoft.orleans.journaling/orleans.journaling.journalstorageconsumerextensions/methods/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Journaling/JournalStorageConsumerExtensions.cs)

```csharp
public static void Read(this IJournalStorageConsumer consumer, ReadOnlySequence<byte> input, IJournalMetadata? metadata, bool complete)
```

Supplies `input` to `consumer`.

### Parameters

- `consumer` (`IJournalStorageConsumer`): The journal storage consumer.
- `input` (`ReadOnlySequence<byte>`): The bytes to read.
- `metadata` (`IJournalMetadata?`): The metadata associated with the journal data being read, or `null` if no metadata is available.
- `complete` (`bool`): Whether to notify the consumer that no more data will be supplied. If `false`, the consumer must read all supplied bytes.
