package org.ourgrid.peer.communication.sender; import java.util.concurrent.Future; import java.util.concurrent.TimeUnit; import org.ourgrid.common.internal.SenderIF; import org.ourgrid.peer.PeerConstants; import org.ourgrid.peer.communication.dao.ScheduledRequestDAO; import org.ourgrid.peer.response.ScheduleRequestResponseTO; import br.edu.ufcg.lsd.commune.container.servicemanager.ServiceManager; public class ScheduleRequestSender implements SenderIF<ScheduleRequestResponseTO>{ public void execute(ScheduleRequestResponseTO response, ServiceManager manager) { Future<?> future = manager.scheduleActionWithFixedDelay( PeerConstants.REQUEST_WORKERS_ACTION_NAME, response.getDelay(), TimeUnit.SECONDS, response.getRequestId()); ScheduledRequestDAO.getInstance().putScheduledRequest(response.getRequestId(), future); } }