package org.ourgrid.peer.communication.sender; import org.ourgrid.common.interfaces.LocalWorkerProviderClient; import org.ourgrid.common.internal.SenderIF; import org.ourgrid.peer.response.LocalHereIsWorkerResponseTO; import br.edu.ufcg.lsd.commune.container.servicemanager.ServiceManager; import br.edu.ufcg.lsd.commune.identification.DeploymentID; import br.edu.ufcg.lsd.commune.identification.ServiceID; public class LocalHereIsWorkerSender implements SenderIF<LocalHereIsWorkerResponseTO>{ public void execute(LocalHereIsWorkerResponseTO response, ServiceManager manager) { LocalWorkerProviderClient lwpc = (LocalWorkerProviderClient) manager.getStub( ServiceID.parse(response.getLwpcAddress()), LocalWorkerProviderClient.class); DeploymentID workerID = new DeploymentID(ServiceID.parse(response.getWorkerAddress())); workerID.setPublicKey(response.getWorkerPublicKey()); lwpc.hereIsWorker(workerID.getServiceID(), response.getWorkerSpec(), response.getRequestSpec()); } }