Messaging Endpoints

Service Activator

Connect a message endpoint to an application service and translate an incoming message into a normal method invocation, keeping business logic independent of transport.

serviceactivationadapter
The problem
How can an application design a service to be invoked both via various messaging technologies and via non-messaging techniques?
Adapted from Enterprise Integration Patterns under CC BY 3.0. The visualization and explanatory content on this page are original GateSift material.
Original GateSift visualization

How Service Activator works

A dedicated endpoint hides transport details from the application that sends or receives messages.

Channel
Service Activator
Application
1

Connect to the messaging channel through an adapter, client or connector.

2

Apply Service Activator to encapsulate delivery, consumption and transport concerns.

3

Expose a simpler application-facing contract and operational boundary.

GateSift explanation

What this pattern helps you decide

Connect a message endpoint to an application service and translate an incoming message into a normal method invocation, keeping business logic independent of transport.

What happens when processing fails or the same message is delivered twice?
Where does state, correlation or routing configuration live?
How will operators trace the message and understand the decision path?
Common Azure implementations

Where you may see it

  • Service Bus-triggered Function calling domain service
  • Logic App invoking API
  • BizTalk orchestration activation
GateSift relevance

How the analyzers can surface it

  • Receive endpoint to orchestration/service relationship
  • Trigger and handler mapping

Pattern detection is contextual. GateSift should present these as architectural signals, not claim a pattern is implemented solely because one policy statement or adapter exists.

Source, licence and attribution

The pattern name and selected problem statement are adapted from Enterprise Integration Patterns by Gregor Hohpe and Bobby Woolf under CC BY 3.0. GateSift summaries, Azure mappings, analyzer guidance and diagrams are original. No endorsement by the original authors is implied.

Back to pattern library