@Override public void send(Message message, SendAcknowledgementHandler handler) throws ActiveMQException { send(null, message, handler); }
private ClientProducer internalCreateProducer(final SimpleString address, final int maxRate) throws ActiveMQException { checkClosed(); ClientProducerInternal producer = new ClientProducerImpl(this, address, maxRate == -1 ? null : new TokenBucketLimiterImpl(maxRate, false), autoCommitSends && blockOnNonDurableSend, autoCommitSends && blockOnDurableSend, autoGroup, groupID == null ? null : new SimpleString(groupID), minLargeMessageSize, sessionContext); addProducer(producer); return producer; }
@Override public void send(final SimpleString address1, final Message msg) throws ActiveMQException { checkClosed(); doSend(address1, msg, null); }
/** * @param msgI * @param handler * @throws ActiveMQException */ private void largeMessageSend(final boolean sendBlocking, final ICoreMessage msgI, final ClientProducerCredits credits, SendAcknowledgementHandler handler) throws ActiveMQException { logger.tracef("largeMessageSend::%s, Blocking=%s", msgI, sendBlocking); int headerSize = msgI.getHeadersAndPropertiesEncodeSize(); if (msgI.getHeadersAndPropertiesEncodeSize() >= minLargeMessageSize) { throw ActiveMQClientMessageBundle.BUNDLE.headerSizeTooBig(headerSize); } // msg.getBody() could be Null on LargeServerMessage if (getBodyInputStream(msgI) == null && msgI.getBuffer() != null) { msgI.getBuffer().readerIndex(0); } InputStream input; if (msgI.isServerMessage()) { largeMessageSendServer(sendBlocking, msgI, credits, handler); } else if ((input = getBodyInputStream(msgI)) != null) { largeMessageSendStreamed(sendBlocking, msgI, input, credits, handler); } else { largeMessageSendBuffered(sendBlocking, msgI, credits, handler); } }
if (sessionContext.supportsLargeMessage() && (getBodyInputStream(msg) != null || msg.isLargeMessage() || msg.getBodyBuffer().writerIndex() > minLargeMessageSize)) { isLarge = true; largeMessageSend(sendBlocking, msg, theCredits, handler); } else { sendRegularMessage(sendingAddress, msg, sendBlocking, theCredits, handler);
@Override public synchronized void close() throws ActiveMQException { if (closed) { return; } doCleanup(); }
/** * @param sendBlocking * @param msgI * @param handler * @throws ActiveMQException */ private void largeMessageSendBuffered(final boolean sendBlocking, final ICoreMessage msgI, final ClientProducerCredits credits, SendAcknowledgementHandler handler) throws ActiveMQException { msgI.getBodyBuffer().readerIndex(0); largeMessageSendStreamed(sendBlocking, msgI, new ActiveMQBufferInputStream(msgI.getBodyBuffer()), credits, handler); }
/** * @param msgI * @param handler * @throws ActiveMQException */ private void largeMessageSend(final boolean sendBlocking, final ICoreMessage msgI, final ClientProducerCredits credits, SendAcknowledgementHandler handler) throws ActiveMQException { logger.tracef("largeMessageSend::%s, Blocking=%s", msgI, sendBlocking); int headerSize = msgI.getHeadersAndPropertiesEncodeSize(); if (msgI.getHeadersAndPropertiesEncodeSize() >= minLargeMessageSize) { throw ActiveMQClientMessageBundle.BUNDLE.headerSizeTooBig(headerSize); } // msg.getBody() could be Null on LargeServerMessage if (getBodyInputStream(msgI) == null && msgI.getBuffer() != null) { msgI.getBuffer().readerIndex(0); } InputStream input; if (msgI.isServerMessage()) { largeMessageSendServer(sendBlocking, msgI, credits, handler); } else if ((input = getBodyInputStream(msgI)) != null) { largeMessageSendStreamed(sendBlocking, msgI, input, credits, handler); } else { largeMessageSendBuffered(sendBlocking, msgI, credits, handler); } }
if (sessionContext.supportsLargeMessage() && (getBodyInputStream(msg) != null || msg.isLargeMessage() || msg.getBodyBuffer().writerIndex() > minLargeMessageSize)) { isLarge = true; largeMessageSend(sendBlocking, msg, theCredits, handler); } else { sendRegularMessage(sendingAddress, msg, sendBlocking, theCredits, handler);
@Override public void cleanUp() { if (closed) { return; } doCleanup(); }
/** * @param sendBlocking * @param msgI * @param handler * @throws ActiveMQException */ private void largeMessageSendBuffered(final boolean sendBlocking, final ICoreMessage msgI, final ClientProducerCredits credits, SendAcknowledgementHandler handler) throws ActiveMQException { msgI.getBodyBuffer().readerIndex(0); largeMessageSendStreamed(sendBlocking, msgI, new ActiveMQBufferInputStream(msgI.getBodyBuffer()), credits, handler); }
/** * @param msgI * @param handler * @throws ActiveMQException */ private void largeMessageSend(final boolean sendBlocking, final ICoreMessage msgI, final ClientProducerCredits credits, SendAcknowledgementHandler handler) throws ActiveMQException { logger.tracef("largeMessageSend::%s, Blocking=%s", msgI, sendBlocking); int headerSize = msgI.getHeadersAndPropertiesEncodeSize(); if (msgI.getHeadersAndPropertiesEncodeSize() >= minLargeMessageSize) { throw ActiveMQClientMessageBundle.BUNDLE.headerSizeTooBig(headerSize); } // msg.getBody() could be Null on LargeServerMessage if (getBodyInputStream(msgI) == null && msgI.getBuffer() != null) { msgI.getBuffer().readerIndex(0); } InputStream input; if (msgI.isServerMessage()) { largeMessageSendServer(sendBlocking, msgI, credits, handler); } else if ((input = getBodyInputStream(msgI)) != null) { largeMessageSendStreamed(sendBlocking, msgI, input, credits, handler); } else { largeMessageSendBuffered(sendBlocking, msgI, credits, handler); } }
@Override public void send(final Message msg) throws ActiveMQException { checkClosed(); doSend(null, msg, null); }
if (sessionContext.supportsLargeMessage() && (getBodyInputStream(msg) != null || msg.isLargeMessage() || msg.getBodyBuffer().writerIndex() > minLargeMessageSize)) { isLarge = true; largeMessageSend(sendBlocking, msg, theCredits, handler); } else { sendRegularMessage(sendingAddress, msg, sendBlocking, theCredits, handler);
@Override public void send(final String address1, final Message message) throws ActiveMQException { send(SimpleString.toSimpleString(address1), message); }
@Override public synchronized void close() throws ActiveMQException { if (closed) { return; } doCleanup(); }
private ClientProducer internalCreateProducer(final SimpleString address, final int maxRate) throws ActiveMQException { checkClosed(); ClientProducerInternal producer = new ClientProducerImpl(this, address, maxRate == -1 ? null : new TokenBucketLimiterImpl(maxRate, false), autoCommitSends && blockOnNonDurableSend, autoCommitSends && blockOnDurableSend, autoGroup, groupID == null ? null : new SimpleString(groupID), minLargeMessageSize, sessionContext); addProducer(producer); return producer; }
/** * @param sendBlocking * @param msgI * @param handler * @throws ActiveMQException */ private void largeMessageSendBuffered(final boolean sendBlocking, final ICoreMessage msgI, final ClientProducerCredits credits, SendAcknowledgementHandler handler) throws ActiveMQException { msgI.getBodyBuffer().readerIndex(0); largeMessageSendStreamed(sendBlocking, msgI, new ActiveMQBufferInputStream(msgI.getBodyBuffer()), credits, handler); }
/** * @param msgI * @param handler * @throws ActiveMQException */ private void largeMessageSend(final boolean sendBlocking, final ICoreMessage msgI, final ClientProducerCredits credits, SendAcknowledgementHandler handler) throws ActiveMQException { logger.tracef("largeMessageSend::%s, Blocking=%s", msgI, sendBlocking); int headerSize = msgI.getHeadersAndPropertiesEncodeSize(); if (msgI.getHeadersAndPropertiesEncodeSize() >= minLargeMessageSize) { throw ActiveMQClientMessageBundle.BUNDLE.headerSizeTooBig(headerSize); } // msg.getBody() could be Null on LargeServerMessage if (getBodyInputStream(msgI) == null && msgI.getBuffer() != null) { msgI.getBuffer().readerIndex(0); } InputStream input; if (msgI.isServerMessage()) { largeMessageSendServer(sendBlocking, msgI, credits, handler); } else if ((input = getBodyInputStream(msgI)) != null) { largeMessageSendStreamed(sendBlocking, msgI, input, credits, handler); } else { largeMessageSendBuffered(sendBlocking, msgI, credits, handler); } }
@Override public void send(SimpleString address1, Message message, SendAcknowledgementHandler handler) throws ActiveMQException { checkClosed(); boolean confirmationWindowEnabled = session.isConfirmationWindowEnabled(); if (confirmationWindowEnabled) { doSend(address1, message, handler); } else { doSend(address1, message, null); if (handler != null) { if (logger.isDebugEnabled()) { logger.debug("Handler was used on producing messages towards address " + address1.toString() + " however there is no confirmationWindowEnabled"); } if (!confirmationNotSetLogged) { // will log thisonly once ActiveMQClientLogger.LOGGER.confirmationNotSet(); } // if there is no confirmation enabled, we will at least call the handler after the sent is done session.scheduleConfirmation(handler, message); } } }