Package org.apache.sandesha.server.msgprocessors

Examples of org.apache.sandesha.server.msgprocessors.FaultProcessor


            RMMessageContext rmMessageContext = new RMMessageContext();
            rmMessageContext.setMsgContext(msgContext);
            try {
                MessageValidator.validate(rmMessageContext, client);
            } catch (AxisFault af) {
                FaultProcessor faultProcessor = new FaultProcessor(storageManager, af);
                if (!faultProcessor.sendFault(rmMessageContext)) {
                    msgContext.setPastPivot(true);
                    msgContext.setResponseMessage(null);
                    return;
                }
                return;
            }
            RMHeaders rmHeaders = rmMessageContext.getRMHeaders();
            AddressingHeaders addrHeaders = rmMessageContext.getAddressingHeaders();

            if (null != rmHeaders.getSequence()) {
                rmMessageContext.setSequenceID(rmHeaders.getSequence().getIdentifier().toString());
                if (null != rmHeaders.getSequence().getLastMessage()) {
                    rmMessageContext.setLastMessage(true);
                }
            }

            if (addrHeaders.getMessageID() == null) {
                rmMessageContext.setMessageID((new Long(System.currentTimeMillis())).toString());
            } else {
                rmMessageContext.setMessageID(addrHeaders.getMessageID().toString());
            }

            IRMMessageProcessor rmMessageProcessor = RMMessageProcessorIdentifier.getMessageProcessor(rmMessageContext, storageManager);

            if (callback != null) {
                CallbackData cbData = getCallbackData(rmMessageContext);
                callback.onIncomingMessage(cbData);
            }

            try {
                if (!rmMessageProcessor.processMessage(rmMessageContext)) {
                    msgContext.setPastPivot(true);
                    msgContext.setResponseMessage(null);
                } else {
                    msgContext.setPastPivot(true);
                }
            } catch (AxisFault af) {
                RMProvider.log.error(af);
                FaultProcessor faultProcessor = new FaultProcessor(storageManager, af);
                if (!faultProcessor.sendFault(rmMessageContext)) {
                    msgContext.setPastPivot(true);
                    msgContext.setResponseMessage(null);
                    return;
                }
                return;
View Full Code Here

TOP

Related Classes of org.apache.sandesha.server.msgprocessors.FaultProcessor

Copyright © 2018 www.massapicom. 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.