package org.ourgrid.worker.communication.sender; import org.ourgrid.common.interfaces.management.WorkerManagementClient; import org.ourgrid.common.internal.SenderIF; import org.ourgrid.worker.WorkerConstants; import org.ourgrid.worker.response.MasterPeerStatusChangedAllocatedForBrokerResponseTO; import br.edu.ufcg.lsd.commune.container.ObjectDeployment; import br.edu.ufcg.lsd.commune.container.servicemanager.ServiceManager; import br.edu.ufcg.lsd.commune.identification.ServiceID; public class MasterPeerStatusChangedAllocatedForBrokerSender implements SenderIF<MasterPeerStatusChangedAllocatedForBrokerResponseTO> { public void execute(MasterPeerStatusChangedAllocatedForBrokerResponseTO response, ServiceManager manager) { ServiceID serviceID = ServiceID.parse(response.getMasterPeerAddress()); WorkerManagementClient client = (WorkerManagementClient) manager.getStub(serviceID, WorkerManagementClient.class); ObjectDeployment objectDeployment = manager.getObjectDeployment(WorkerConstants.WORKER); client.statusChangedAllocatedForBroker(objectDeployment.getDeploymentID().getServiceID(), response.getBrokerPublicKey()); } }