Package com.wordpress.salaboy.services.workitemhandlers

Source Code of com.wordpress.salaboy.services.workitemhandlers.AsyncStartProcedureWorkItemHandler

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package com.wordpress.salaboy.services.workitemhandlers;


import com.wordpress.salaboy.messaging.MessageFactory;
import com.wordpress.salaboy.messaging.MessageProducer;
import com.wordpress.salaboy.model.Call;
import com.wordpress.salaboy.model.Emergency;
import com.wordpress.salaboy.model.messages.AsyncProcedureStartMessage;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.drools.runtime.process.WorkItem;
import org.drools.runtime.process.WorkItemHandler;
import org.drools.runtime.process.WorkItemManager;
import org.hornetq.api.core.HornetQException;

/**
*
* @author salaboy
*/
public class AsyncStartProcedureWorkItemHandler implements WorkItemHandler, Serializable{

    @Override
    public void executeWorkItem(WorkItem wi, WorkItemManager wim) {
        //Call Tracking Component for process?? or the ProcedureMGMTService can take care of that?
        Call call = (Call) wi.getParameter("call");
        String procedureName = (String) wi.getParameter("procedureName");
        Emergency emergency = (Emergency) wi.getParameter("emergency");
        Map<String, Object> parameters = new HashMap<String, Object>();
        parameters.put("call", call);
        parameters.put("emergency", emergency);
//        ProceduresMGMTService.getInstance().newRequestedProcedure(emergency.getId(), procedureName, parameters);

        System.out.println("LET'S CREATE a new procedure name in a remote location = "+procedureName+" for emergency "+emergency);
       
        try {
            MessageFactory.sendMessage(new AsyncProcedureStartMessage(emergency.getId(), wi.getId(), procedureName, parameters));
        } catch (HornetQException ex) {
            Logger.getLogger(AsyncStartProcedureWorkItemHandler.class.getName()).log(Level.SEVERE, null, ex);
        }
        wim.completeWorkItem(wi.getId(), null);
    }

    @Override
    public void abortWorkItem(WorkItem wi, WorkItemManager wim) {
        throw new UnsupportedOperationException("Not supported yet.");
    }
   
}
TOP

Related Classes of com.wordpress.salaboy.services.workitemhandlers.AsyncStartProcedureWorkItemHandler

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.