An open API service indexing awesome lists of open source software.

https://github.com/shuttle/shuttle.esb.messageforwarding

The MessageForwarding extension will forward any handled messages onto the specified queue(s).
https://github.com/shuttle/shuttle.esb.messageforwarding

Last synced: about 1 month ago
JSON representation

The MessageForwarding extension will forward any handled messages onto the specified queue(s).

Awesome Lists containing this project

README

        

# Message Forwarding

```
PM> Install-Package Shuttle.Esb.MessageForwarding
```

The MessageForwarding module for Shuttle.Esb will forward any handled messages onto the specified queue(s).

## Configuration

```c#
services.AddMessageForwarding(builder =>
{
builder.Options.ForwardingRoutes.Add(new MessageRouteOptions
{
Uri = "queue://configuration/inbox-work-a",
Specifications = new List
{
new()
{
Name = "StartsWith",
Value = "Shuttle.Messages.v1"
},
new()
{
Name = "StartsWith",
Value = "Shuttle.Messages.v2"
}
}
})
});
```

The default JSON settings structure is as follows:

```json
{
"Shuttle": {
"Modules": {
"MessageForwarding": {
"ForwardingRoutes": [
{
"Uri": "queue://./inbox-work-a",
"Specifications": [
{
"Name": "StartsWith",
"Value": "Shuttle.Messages.v1"
},
{
"Name": "StartsWith",
"Value": "Shuttle.Messages.v2"
}
]
},
{
"Uri": "queue://./inbox-work-b",
"Specifications": [
{
"Name": "TypeList",
"Value": "DoSomethingCommand"
}
]
}
]
}
}
}
}
```

The `ForwardingRoutes` makes use of the `MessageRouteOptions` as defined in the `Shuttle.Esb` package and the documentation for the `MessageRouteOptions` is applicable to the `ForwardingRoutes` as well.