Skip to content

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

License

Notifications You must be signed in to change notification settings

Shuttle/Shuttle.Esb.MessageForwarding

Repository files navigation

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

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

The default JSON settings structure is as follows:

{
  "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.

About

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages