use of mesos.internal.Messages.ReconnectExecutorMessage in project jesos by groupon.
the class LocalExecutorMessageProcessor method reconnectExecutor.
@Subscribe
public void reconnectExecutor(final ReconnectExecutorMessageEnvelope envelope) {
checkState(envelope.getRecipient().equals(context.getDriverUPID()), "Received a remote message for local delivery");
if (context.isStateMachine(DRIVER_ABORTED)) {
LOG.warn("driver is aborted!");
return;
}
final ReconnectExecutorMessage message = envelope.getMessage();
checkState(message.getSlaveId().equals(context.getSlaveId()), "Received reconnect from slave %s (expected %s)", message.getSlaveId().getValue(), context.getSlaveId().getValue());
final ReregisterExecutorMessage.Builder builder = ReregisterExecutorMessage.newBuilder().setExecutorId(context.getExecutorId()).setFrameworkId(context.getFrameworkId()).addAllUpdates(context.getUpdates()).addAllTasks(tasks.values());
eventBus.post(new RemoteMessageEnvelope(context.getDriverUPID(), context.getSlaveUPID(), builder.build()));
}
Aggregations