Examples of MessageAck


Examples of org.apache.activemq.command.MessageAck

        }

        boolean acked = false;
        for (Iterator<StompSubscription> iter = subscriptionsByConsumerId.values().iterator(); iter.hasNext();) {
            StompSubscription sub = iter.next();
            MessageAck ack = sub.onStompMessageAck(messageId);
            if (ack != null) {
                ack.setTransactionId(activemqTx);
                sendToActiveMQ(ack, createResponseHandler(command));
                acked = true;
                break;
            }
        }
View Full Code Here

Examples of org.apache.activemq.command.MessageAck

        } else if (ackMode == INDIVIDUAL_ACK) {
            synchronized (this) {
                dispatchedMessage.put(message.getJMSMessageID(), message.getMessageId());
            }
        } else if (ackMode == AUTO_ACK) {
            MessageAck ack = new MessageAck(md, MessageAck.STANDARD_ACK_TYPE, 1);
            protocolConverter.getTransportFilter().sendToActiveMQ(ack);
        }

        boolean ignoreTransformation = false;
       
View Full Code Here

Examples of org.apache.activemq.command.MessageAck

        if (!dispatchedMessage.containsKey(messageId)) {
            return null;
        }

        MessageAck ack = new MessageAck();
        ack.setDestination(consumerInfo.getDestination());
        ack.setConsumerId(consumerInfo.getConsumerId());

        if (ackMode == CLIENT_ACK) {
            ack.setAckType(MessageAck.STANDARD_ACK_TYPE);
            int count = 0;
            for (Iterator iter = dispatchedMessage.entrySet().iterator(); iter.hasNext();) {

                Map.Entry entry = (Entry)iter.next();
                String id = (String)entry.getKey();
                MessageId msgid = (MessageId)entry.getValue();

                if (ack.getFirstMessageId() == null) {
                    ack.setFirstMessageId(msgid);
                }

                iter.remove();
                count++;

                if (id.equals(messageId)) {
                    ack.setLastMessageId(msgid);
                    break;
                }

            }
            ack.setMessageCount(count);
        }
        else if (ackMode == INDIVIDUAL_ACK) {
            ack.setAckType(MessageAck.INDIVIDUAL_ACK_TYPE);
            MessageId msgid = (MessageId)dispatchedMessage.get(messageId);
            ack.setMessageID(msgid);
            dispatchedMessage.remove(messageId);
        }
        return ack;
    }
View Full Code Here

Examples of org.apache.activemq.command.MessageAck

   
    public void messageExpired(ConnectionContext context,Subscription subs, MessageReference reference) {
        broker.messageExpired(context, reference);
        destinationStatistics.getMessages().decrement();
        destinationStatistics.getEnqueues().decrement();
        MessageAck ack = new MessageAck();
        ack.setAckType(MessageAck.STANDARD_ACK_TYPE);
        ack.setDestination(destination);
        ack.setMessageID(reference.getMessageId());
        try {
            acknowledge(context, subs, ack, reference);
        } catch (IOException e) {
            LOG.error("Failed to remove expired Message from the store ",e);
        }
View Full Code Here

Examples of org.codehaus.activemq.message.MessageAck

    protected void doAcknowledge(boolean isClosing) throws JMSException {
        checkClosed();
        if (this.acknowledgeMode == Session.CLIENT_ACKNOWLEDGE) {
            ActiveMQMessage msg = null;
            while ((msg = (ActiveMQMessage) deliveredMessages.removeFirst()) != null) {
                MessageAck ack = new MessageAck();
                ack.setConsumerId(msg.getConsumerId());
                ack.setMessageID(msg.getJMSMessageID());
                if (!isClosing) {
                    ack.setMessageRead(msg.isMessageConsumed());
                }
                ack.setId(packetIdGenerator.generateId());
                ack.setDestination(msg.getJMSActiveMQDestination());
                ack.setPersistent(msg.getJMSDeliveryMode() == DeliveryMode.PERSISTENT);
                this.connection.asyncSendPacket(ack, false);
            }
            deliveredMessages.clear();
        }
    }
View Full Code Here
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.