Package org.apache.ode.bpel.engine

Source Code of org.apache.ode.bpel.engine.TransactedMyRoleMessageExchangeImpl

package org.apache.ode.bpel.engine;

import javax.wsdl.Operation;
import javax.xml.namespace.QName;

import org.apache.ode.bpel.dao.MessageExchangeDAO;
import org.apache.ode.bpel.iapi.BpelEngineException;
import org.apache.ode.bpel.iapi.InvocationStyle;
import org.apache.ode.bpel.rapi.PartnerLinkModel;

/**
* Transacted my-role message exchange.
*

* @author Maciej Szefler
*
*/
public class TransactedMyRoleMessageExchangeImpl extends MyRoleMessageExchangeImpl {

    public TransactedMyRoleMessageExchangeImpl(ODEProcess process, String mexId, PartnerLinkModel mplink, Operation operation, QName callee) {
        super(process, mexId, mplink, operation, callee);
    }

    @Override
    public Status invokeTransacted() throws BpelEngineException {
        assertTransaction();
      
       
        MessageExchangeDAO mexdao = doInvoke();
        if (mexdao.getStatus() != Status.ACK) {
            throw new BpelEngineException("Transactional invoke on process did not yield a response.");
        }

        return mexdao.getStatus();
       
    }

    @Override
    public InvocationStyle getInvocationStyle() {
        return InvocationStyle.TRANSACTED;
    }

    @Override
    protected void onAsyncAck(MessageExchangeDAO mexdao) {
        assert false;
    }

}
TOP

Related Classes of org.apache.ode.bpel.engine.TransactedMyRoleMessageExchangeImpl

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.