[jboss-cvs] JBoss Messaging SVN: r5638 - in trunk: src/main/org/jboss/messaging/core/client/impl and 3 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Jan 14 09:43:18 EST 2009
Author: jmesnil
Date: 2009-01-14 09:43:18 -0500 (Wed, 14 Jan 2009)
New Revision: 5638
Modified:
trunk/src/main/org/jboss/messaging/core/client/ClientProducer.java
trunk/src/main/org/jboss/messaging/core/client/ClientRequestor.java
trunk/src/main/org/jboss/messaging/core/client/ClientSession.java
trunk/src/main/org/jboss/messaging/core/client/impl/ClientProducerImpl.java
trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionImpl.java
trunk/src/main/org/jboss/messaging/core/server/cluster/impl/ForwarderImpl.java
trunk/src/main/org/jboss/messaging/util/SimpleString.java
trunk/tests/src/org/jboss/messaging/tests/integration/wildcard/WildCardRoutingTest.java
Log:
JBMESSAGING-1318: convenient core API methods
added methods taking String instead of SimpleString to make it more convenient for the client to use them
Modified: trunk/src/main/org/jboss/messaging/core/client/ClientProducer.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/ClientProducer.java 2009-01-14 14:42:38 UTC (rev 5637)
+++ trunk/src/main/org/jboss/messaging/core/client/ClientProducer.java 2009-01-14 14:43:18 UTC (rev 5638)
@@ -38,6 +38,8 @@
void send(SimpleString address, Message message) throws MessagingException;
+ void send(String address, Message message) throws MessagingException;
+
void registerAcknowledgementHandler(AcknowledgementHandler handler);
void unregisterAcknowledgementHandler(AcknowledgementHandler handler);
Modified: trunk/src/main/org/jboss/messaging/core/client/ClientRequestor.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/ClientRequestor.java 2009-01-14 14:42:38 UTC (rev 5637)
+++ trunk/src/main/org/jboss/messaging/core/client/ClientRequestor.java 2009-01-14 14:43:18 UTC (rev 5638)
@@ -21,6 +21,8 @@
*/
package org.jboss.messaging.core.client;
+import static org.jboss.messaging.util.SimpleString.toSimpleString;
+
import java.util.UUID;
import org.jboss.messaging.core.client.impl.ClientMessageImpl;
@@ -52,6 +54,11 @@
replyConsumer = queueSession.createConsumer(replyQueue);
}
+ public ClientRequestor(final ClientSession session, final String requestAddress) throws Exception
+ {
+ this(session, toSimpleString(requestAddress));
+ }
+
public ClientMessage request(final ClientMessage request) throws Exception
{
return request(request, 0);
Modified: trunk/src/main/org/jboss/messaging/core/client/ClientSession.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/ClientSession.java 2009-01-14 14:42:38 UTC (rev 5637)
+++ trunk/src/main/org/jboss/messaging/core/client/ClientSession.java 2009-01-14 14:43:18 UTC (rev 5638)
@@ -39,6 +39,8 @@
* @author <a href="mailto:clebert.suconic at jboss.org">Clebert Suconic</a>
*
* @author <a href="mailto:ataylor at redhat.com">Andy Taylor</a>
+ *
+ * @author <a href="jmesnil at redhat.com">Jeff Mesnil</a>
*/
public interface ClientSession extends XAResource
{
@@ -47,38 +49,45 @@
SimpleString filterString,
boolean durable,
boolean temporary) throws MessagingException;
+ void createQueue(String address,
+ String queueName,
+ String filterString,
+ boolean durable,
+ boolean temporary) throws MessagingException;
void deleteQueue(SimpleString queueName) throws MessagingException;
+ void deleteQueue(String queueName) throws MessagingException;
void addDestination(SimpleString address, boolean durable, boolean temporary) throws MessagingException;
+ void addDestination(String address, boolean durable, boolean temporary) throws MessagingException;
void removeDestination(SimpleString address, boolean durable) throws MessagingException;
+ void removeDestination(String address, boolean durable) throws MessagingException;
- SessionQueueQueryResponseMessage queueQuery(SimpleString queueName) throws MessagingException;
-
- SessionBindingQueryResponseMessage bindingQuery(SimpleString address) throws MessagingException;
-
ClientConsumer createConsumer(SimpleString queueName) throws MessagingException;
-
ClientConsumer createConsumer(SimpleString queueName, SimpleString filterString) throws MessagingException;
-
ClientConsumer createConsumer(SimpleString queueName, SimpleString filterString, boolean browseOnly) throws MessagingException;
-
ClientConsumer createConsumer(SimpleString queueName,
SimpleString filterString,
int windowSize,
int maxRate,
boolean browseOnly) throws MessagingException;
+ ClientConsumer createConsumer(String queueName) throws MessagingException;
+ ClientConsumer createConsumer(String queueName, String filterString) throws MessagingException;
+ ClientConsumer createConsumer(String queueName, String filterString, boolean browseOnly) throws MessagingException;
+ ClientConsumer createConsumer(String queueName,
+ String filterString,
+ int windowSize,
+ int maxRate,
+ boolean browseOnly) throws MessagingException;
+
ClientConsumer createFileConsumer(File directory, SimpleString queueName) throws MessagingException;
-
ClientConsumer createFileConsumer(File directory, SimpleString queueName, SimpleString filterString) throws MessagingException;
-
ClientConsumer createFileConsumer(File directory,
SimpleString queueName,
SimpleString filterString,
boolean browseOnly) throws MessagingException;
-
ClientConsumer createFileConsumer(File directory,
SimpleString queueName,
SimpleString filterString,
@@ -86,15 +95,44 @@
int maxRate,
boolean browseOnly) throws MessagingException;
+ ClientConsumer createFileConsumer(File directory, String queueName) throws MessagingException;
+ ClientConsumer createFileConsumer(File directory, String queueName, String filterString) throws MessagingException;
+ ClientConsumer createFileConsumer(File directory,
+ String queueName,
+ String filterString,
+ boolean browseOnly) throws MessagingException;
+ ClientConsumer createFileConsumer(File directory,
+ String queueName,
+ String filterString,
+ int windowSize,
+ int maxRate,
+ boolean browseOnly) throws MessagingException;
+
+ /**
+ * Create a producer with no default address.
+ * Address must be specified everytime a message is sent
+ *
+ * @see ClientProducer#send(SimpleString, org.jboss.messaging.core.message.Message)
+ */
+ ClientProducer createProducer() throws MessagingException;
ClientProducer createProducer(SimpleString address) throws MessagingException;
-
+ ClientProducer createProducer(SimpleString address, int rate) throws MessagingException;
ClientProducer createProducer(SimpleString address,
int maxRate,
boolean blockOnNonPersistentSend,
boolean blockOnPersistentSend) throws MessagingException;
- ClientProducer createProducer(SimpleString address, int rate) throws MessagingException;
+ ClientProducer createProducer(String address) throws MessagingException;
+ ClientProducer createProducer(String address, int rate) throws MessagingException;
+ ClientProducer createProducer(String address,
+ int maxRate,
+ boolean blockOnNonPersistentSend,
+ boolean blockOnPersistentSend) throws MessagingException;
+ SessionQueueQueryResponseMessage queueQuery(SimpleString queueName) throws MessagingException;
+
+ SessionBindingQueryResponseMessage bindingQuery(SimpleString address) throws MessagingException;
+
XAResource getXAResource();
void commit() throws MessagingException;
Modified: trunk/src/main/org/jboss/messaging/core/client/impl/ClientProducerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/impl/ClientProducerImpl.java 2009-01-14 14:42:38 UTC (rev 5637)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ClientProducerImpl.java 2009-01-14 14:43:18 UTC (rev 5638)
@@ -22,6 +22,8 @@
package org.jboss.messaging.core.client.impl;
+import static org.jboss.messaging.util.SimpleString.toSimpleString;
+
import java.nio.ByteBuffer;
import org.jboss.messaging.core.client.AcknowledgementHandler;
@@ -133,6 +135,11 @@
doSend(address, msg);
}
+
+ public void send(String address, Message message) throws MessagingException
+ {
+ send(toSimpleString(address), message);
+ }
public void registerAcknowledgementHandler(final AcknowledgementHandler handler)
{
Modified: trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionImpl.java 2009-01-14 14:42:38 UTC (rev 5637)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionImpl.java 2009-01-14 14:43:18 UTC (rev 5638)
@@ -21,6 +21,8 @@
*/
package org.jboss.messaging.core.client.impl;
+import static org.jboss.messaging.util.SimpleString.toSimpleString;
+
import java.io.File;
import java.util.HashSet;
import java.util.List;
@@ -242,6 +244,15 @@
channel.sendBlocking(request);
}
+
+ public void createQueue(final String address,
+ final String queueName,
+ final String filterString,
+ final boolean durable,
+ final boolean temporary) throws MessagingException
+ {
+ createQueue(toSimpleString(address), toSimpleString(queueName), toSimpleString(filterString), durable, temporary);
+ }
public void deleteQueue(final SimpleString queueName) throws MessagingException
{
@@ -249,6 +260,11 @@
channel.sendBlocking(new SessionDeleteQueueMessage(queueName));
}
+
+ public void deleteQueue(final String queueName) throws MessagingException
+ {
+ deleteQueue(toSimpleString(queueName));
+ }
public SessionQueueQueryResponseMessage queueQuery(final SimpleString queueName) throws MessagingException
{
@@ -260,7 +276,7 @@
return response;
}
-
+
public SessionBindingQueryResponseMessage bindingQuery(final SimpleString address) throws MessagingException
{
checkClosed();
@@ -280,6 +296,11 @@
channel.sendBlocking(request);
}
+
+ public void addDestination(final String address, final boolean durable, final boolean temporary) throws MessagingException
+ {
+ addDestination(toSimpleString(address), durable, temporary);
+ }
public void removeDestination(final SimpleString address, final boolean durable) throws MessagingException
{
@@ -289,20 +310,31 @@
channel.sendBlocking(request);
}
+
+ public void removeDestination(final String address, final boolean durable) throws MessagingException
+ {
+ removeDestination(toSimpleString(address), durable);
+ }
public ClientConsumer createConsumer(final SimpleString queueName) throws MessagingException
{
- checkClosed();
-
return createConsumer(queueName, null, false);
}
+ public ClientConsumer createConsumer(final String queueName) throws MessagingException
+ {
+ return createConsumer(toSimpleString(queueName));
+ }
+
public ClientConsumer createConsumer(final SimpleString queueName, final SimpleString filterString) throws MessagingException
{
- checkClosed();
-
return createConsumer(queueName, filterString, consumerWindowSize, consumerMaxRate, false);
}
+
+ public ClientConsumer createConsumer(final String queueName, final String filterString) throws MessagingException
+ {
+ return createConsumer(toSimpleString(queueName), toSimpleString(filterString));
+ }
public ClientConsumer createConsumer(final SimpleString queueName,
final SimpleString filterString,
@@ -310,6 +342,13 @@
{
return createConsumer(queueName, filterString, consumerWindowSize, consumerMaxRate, browseOnly);
}
+
+ public ClientConsumer createConsumer(final String queueName,
+ final String filterString,
+ final boolean browseOnly) throws MessagingException
+ {
+ return createConsumer(toSimpleString(queueName), toSimpleString(filterString), browseOnly);
+ }
/*
* Note, we DO NOT currently support direct consumers (i.e. consumers we're delivery occurs on the remoting thread.
@@ -327,22 +366,39 @@
{
return internalCreateConsumer(queueName, filterString, windowSize, browseOnly, null);
}
+
+ public ClientConsumer createConsumer(final String queueName,
+ final String filterString,
+ final int windowSize,
+ final int maxRate,
+ final boolean browseOnly) throws MessagingException
+ {
+ return createConsumer(toSimpleString(queueName), toSimpleString(filterString), windowSize, maxRate, browseOnly);
+ }
public ClientConsumer createFileConsumer(final File directory, final SimpleString queueName) throws MessagingException
{
- checkClosed();
-
return createFileConsumer(directory, queueName, null, false);
}
+
+ public ClientConsumer createFileConsumer(final File directory, final String queueName) throws MessagingException
+ {
+ return createFileConsumer(directory, toSimpleString(queueName));
+ }
public ClientConsumer createFileConsumer(final File directory,
final SimpleString queueName,
final SimpleString filterString) throws MessagingException
{
- checkClosed();
-
return createFileConsumer(directory, queueName, filterString, consumerWindowSize, consumerMaxRate, false);
}
+
+ public ClientConsumer createFileConsumer(final File directory,
+ final String queueName,
+ final String filterString) throws MessagingException
+ {
+ return createFileConsumer(directory, toSimpleString(queueName), toSimpleString(filterString));
+ }
public ClientConsumer createFileConsumer(final File directory,
final SimpleString queueName,
@@ -352,6 +408,14 @@
return createFileConsumer(directory, queueName, filterString, consumerWindowSize, consumerMaxRate, browseOnly);
}
+ public ClientConsumer createFileConsumer(final File directory,
+ final String queueName,
+ final String filterString,
+ final boolean browseOnly) throws MessagingException
+ {
+ return createFileConsumer(directory, toSimpleString(queueName), toSimpleString(filterString), browseOnly);
+ }
+
/*
* Note, we DO NOT currently support direct consumers (i.e. consumers we're delivery occurs on the remoting thread.
* Direct consumers have issues with blocking and failover.
@@ -369,39 +433,56 @@
{
return internalCreateConsumer(queueName, filterString, windowSize, browseOnly, directory);
}
+
+ public ClientConsumer createFileConsumer(final File directory,
+ final String queueName,
+ final String filterString,
+ final int windowSize,
+ final int maxRate,
+ final boolean browseOnly) throws MessagingException
+ {
+ return createFileConsumer(directory, toSimpleString(queueName), toSimpleString(filterString), windowSize, maxRate, browseOnly);
+ }
+ public ClientProducer createProducer() throws MessagingException
+ {
+ return createProducer((SimpleString)null);
+ }
+
public ClientProducer createProducer(final SimpleString address) throws MessagingException
{
- checkClosed();
-
return createProducer(address, producerMaxRate);
}
+
+ public ClientProducer createProducer(final String address) throws MessagingException
+ {
+ return createProducer(toSimpleString(address));
+ }
public ClientProducer createProducer(final SimpleString address, final int maxRate) throws MessagingException
{
return createProducer(address, maxRate, blockOnNonPersistentSend, blockOnPersistentSend);
}
+
+ public ClientProducer createProducer(final String address, final int rate) throws MessagingException
+ {
+ return createProducer(toSimpleString(address), rate);
+ }
public ClientProducer createProducer(final SimpleString address,
final int maxRate,
final boolean blockOnNonPersistentSend,
final boolean blockOnPersistentSend) throws MessagingException
{
- checkClosed();
+ return internalCreateProducer(address, maxRate, blockOnNonPersistentSend, blockOnPersistentSend);
+ }
- ClientProducerInternal producer = new ClientProducerImpl(this,
- address,
- maxRate == -1 ? null
- : new TokenBucketLimiterImpl(maxRate, false),
- autoCommitSends && blockOnNonPersistentSend,
- autoCommitSends && blockOnPersistentSend,
- autoGroup,
- minLargeMessageSize,
- channel);
-
- addProducer(producer);
-
- return producer;
+ public ClientProducer createProducer(final String address,
+ final int maxRate,
+ final boolean blockOnNonPersistentSend,
+ final boolean blockOnPersistentSend) throws MessagingException
+ {
+ return createProducer(toSimpleString(address), maxRate, blockOnNonPersistentSend, blockOnPersistentSend);
}
public XAResource getXAResource()
@@ -1093,6 +1174,28 @@
return consumer;
}
+ private ClientProducer internalCreateProducer(final SimpleString address,
+ final int maxRate,
+ final boolean blockOnNonPersistentSend,
+ final boolean blockOnPersistentSend) throws MessagingException
+ {
+ checkClosed();
+
+ ClientProducerInternal producer = new ClientProducerImpl(this,
+ address,
+ maxRate == -1 ? null
+ : new TokenBucketLimiterImpl(maxRate, false),
+ autoCommitSends && blockOnNonPersistentSend,
+ autoCommitSends && blockOnPersistentSend,
+ autoGroup,
+ minLargeMessageSize,
+ channel);
+
+ addProducer(producer);
+
+ return producer;
+ }
+
private void checkXA() throws XAException
{
if (!xa)
Modified: trunk/src/main/org/jboss/messaging/core/server/cluster/impl/ForwarderImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/cluster/impl/ForwarderImpl.java 2009-01-14 14:42:38 UTC (rev 5637)
+++ trunk/src/main/org/jboss/messaging/core/server/cluster/impl/ForwarderImpl.java 2009-01-14 14:43:18 UTC (rev 5638)
@@ -317,7 +317,7 @@
session.addFailureListener(this);
- producer = session.createProducer(null);
+ producer = session.createProducer();
return true;
}
Modified: trunk/src/main/org/jboss/messaging/util/SimpleString.java
===================================================================
--- trunk/src/main/org/jboss/messaging/util/SimpleString.java 2009-01-14 14:42:38 UTC (rev 5637)
+++ trunk/src/main/org/jboss/messaging/util/SimpleString.java 2009-01-14 14:43:18 UTC (rev 5638)
@@ -57,6 +57,22 @@
//Cache the string
private transient String str;
+ // Static
+ // ----------------------------------------------------------------------
+
+ /**
+ * Returns a SimpleString constructed from the <code>string</code> parameter.
+ * If <code>string</code> is <code>null</code>, the return value will be <code>null</code> too.
+ */
+ public static SimpleString toSimpleString(final String string)
+ {
+ if (string == null)
+ {
+ return null;
+ }
+ return new SimpleString(string);
+ }
+
// Constructors
// ----------------------------------------------------------------------
Modified: trunk/tests/src/org/jboss/messaging/tests/integration/wildcard/WildCardRoutingTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/wildcard/WildCardRoutingTest.java 2009-01-14 14:42:38 UTC (rev 5637)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/wildcard/WildCardRoutingTest.java 2009-01-14 14:43:18 UTC (rev 5638)
@@ -297,7 +297,7 @@
clientSession.createQueue(addressAJ, queueName8, null, false, false);
clientSession.createQueue(addressAK, queueName9, null, false, false);
clientSession.createQueue(address, queueName, null, false, false);
- ClientProducer producer = clientSession.createProducer(null);
+ ClientProducer producer = clientSession.createProducer();
ClientConsumer clientConsumer = clientSession.createConsumer(queueName);
clientSession.start();
producer.send(addressAB, createTextMessage("m1", clientSession));
@@ -394,7 +394,7 @@
clientSession.createQueue(addressAJ, queueName8, null, false, false);
clientSession.createQueue(addressAK, queueName9, null, false, false);
clientSession.createQueue(address, queueName, null, false, false);
- ClientProducer producer = clientSession.createProducer(null);
+ ClientProducer producer = clientSession.createProducer();
ClientConsumer clientConsumer = clientSession.createConsumer(queueName);
clientSession.start();
producer.send(addressAB, createTextMessage("m1", clientSession));
More information about the jboss-cvs-commits
mailing list