How can I get the dispatch service name?

68 Views Asked by At

Using nameko, I have a green_event that can be dispatched by two different services:

@event_handler("service1", "green_event")
@event_handler("service2", "green_event")
def green_event(self, payload):
   # ...
   # ...

How can I get the variable with the service name?

1

There are 1 best solutions below

0
second On

The easiest solution might be to split the handler entrypoints:

@event_handler("service1", "green_event")
def green_event_service1(self, payload):
    self.green_event("service1", payload)

@event_handler("service2", "green_event")
def green_event_service2(self, payload):
    self.green_event("service2", payload)

def green_event(self, source, payload):
   # ...