In this recipe, we will learn how Mesos notifies frameworks about updates.
Handling events
How to do it...
To handle events, we need to parse data that we obtain from Mesos. To do that, add the following code at the end of the loop in the subscribe() function:
var event Event
sonpb.UnmarshalString(data, &event)
log.Printf("Got: [%s]", event.String())
After parsing, we need to handle events that can vary in type. To do this, we will use the switch control statement on the event type:
switch *event.Type {
case Event_SUBSCRIBED:
log.Print("Subscribed")
frameworkInfo.Id = event.Subscribed.FrameworkId
mesosStreamID = res.Header.Get("Mesos-Stream-Id")
case Event_HEARTBEAT:
...