You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by rg...@apache.org on 2007/08/06 15:06:37 UTC
svn commit: r563125 - in /incubator/qpid/trunk/qpid/java:
broker/src/main/java/org/apache/qpid/server/exchange/
broker/src/main/java/org/apache/qpid/server/virtualhost/
broker/src/test/java/org/apache/qpid/server/exchange/
client/src/main/java/org/apac...
Author: rgodfrey
Date: Mon Aug 6 06:06:35 2007
New Revision: 563125
URL: http://svn.apache.org/viewvc?view=rev&rev=563125
Log:
QPID-543 : Add ability to register cusom exchange types
Added:
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ExchangeType.java
Modified:
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/AbstractExchange.java
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DefaultExchangeFactory.java
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DestNameExchange.java
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DestWildExchange.java
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/Exchange.java
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ExchangeFactory.java
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ExchangeRegistry.java
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/FanoutExchange.java
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/HeadersExchange.java
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ManagedExchange.java
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHost.java
incubator/qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/exchange/ExchangeMBeanTest.java
incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer.java
incubator/qpid/trunk/qpid/java/management/eclipse-plugin/src/test/java/org/apache/qpid/management/ui/ManagementConsoleTest.java
Modified: incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/AbstractExchange.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/AbstractExchange.java?view=diff&rev=563125&r1=563124&r2=563125
==============================================================================
--- incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/AbstractExchange.java (original)
+++ incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/AbstractExchange.java Mon Aug 6 06:06:35 2007
@@ -49,7 +49,7 @@
protected boolean _durable;
protected String _exchangeType;
- protected int _ticket;
+
private VirtualHost _virtualHost;
@@ -114,11 +114,6 @@
return _exchangeType;
}
- public Integer getTicketNo()
- {
- return _ticket;
- }
-
public boolean isDurable()
{
return _durable;
@@ -155,13 +150,12 @@
*/
protected abstract ExchangeMBean createMBean() throws AMQException;
- public void initialise(VirtualHost host, AMQShortString name, boolean durable, int ticket, boolean autoDelete) throws AMQException
+ public void initialise(VirtualHost host, AMQShortString name, boolean durable, boolean autoDelete) throws AMQException
{
_virtualHost = host;
_name = name;
_durable = durable;
_autoDelete = autoDelete;
- _ticket = ticket;
_exchangeMbean = createMBean();
_exchangeMbean.register();
}
@@ -174,11 +168,6 @@
public boolean isAutoDelete()
{
return _autoDelete;
- }
-
- public int getTicket()
- {
- return _ticket;
}
public void close() throws AMQException
Modified: incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DefaultExchangeFactory.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DefaultExchangeFactory.java?view=diff&rev=563125&r1=563124&r2=563125
==============================================================================
--- incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DefaultExchangeFactory.java (original)
+++ incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DefaultExchangeFactory.java Mon Aug 6 06:06:35 2007
@@ -24,6 +24,8 @@
import java.util.Map;
import org.apache.log4j.Logger;
+import org.apache.commons.configuration.Configuration;
+
import org.apache.qpid.AMQException;
import org.apache.qpid.AMQUnknownExchangeType;
import org.apache.qpid.exchange.ExchangeDefaults;
@@ -34,42 +36,66 @@
{
private static final Logger _logger = Logger.getLogger(DefaultExchangeFactory.class);
- private Map<AMQShortString, Class<? extends Exchange>> _exchangeClassMap = new HashMap<AMQShortString, Class<? extends Exchange>>();
+ private Map<AMQShortString, ExchangeType<? extends Exchange>> _exchangeClassMap = new HashMap<AMQShortString, ExchangeType<? extends Exchange>>();
private final VirtualHost _host;
public DefaultExchangeFactory(VirtualHost host)
{
_host = host;
- _exchangeClassMap.put(ExchangeDefaults.DIRECT_EXCHANGE_CLASS, org.apache.qpid.server.exchange.DestNameExchange.class);
- _exchangeClassMap.put(ExchangeDefaults.TOPIC_EXCHANGE_CLASS, org.apache.qpid.server.exchange.DestWildExchange.class);
- _exchangeClassMap.put(ExchangeDefaults.HEADERS_EXCHANGE_CLASS, org.apache.qpid.server.exchange.HeadersExchange.class);
- _exchangeClassMap.put(ExchangeDefaults.FANOUT_EXCHANGE_CLASS, org.apache.qpid.server.exchange.FanoutExchange.class);
+ registerExchangeType(DestNameExchange.TYPE);
+ registerExchangeType(DestWildExchange.TYPE);
+ registerExchangeType(HeadersExchange.TYPE);
+ registerExchangeType(FanoutExchange.TYPE);
+
+ }
+ public void registerExchangeType(ExchangeType<? extends Exchange> type)
+ {
+ _exchangeClassMap.put(type.getName(), type);
}
public Exchange createExchange(AMQShortString exchange, AMQShortString type, boolean durable, boolean autoDelete,
int ticket)
throws AMQException
{
- Class<? extends Exchange> exchClass = _exchangeClassMap.get(type);
- if (exchClass == null)
+ ExchangeType<? extends Exchange> exchType = _exchangeClassMap.get(type);
+ if (exchType == null)
{
throw new AMQUnknownExchangeType("Unknown exchange type: " + type, null);
}
- try
- {
- Exchange e = exchClass.newInstance();
- e.initialise(_host, exchange, durable, ticket, autoDelete);
- return e;
- }
- catch (InstantiationException e)
- {
- throw new AMQException(null, "Unable to create exchange: " + e, e);
- }
- catch (IllegalAccessException e)
+ Exchange e = exchType.newInstance(_host, exchange, durable, autoDelete);
+ return e;
+ }
+
+ public void initialise(Configuration hostConfig)
+ {
+ for(Object className : hostConfig.getList("custom-exchanges.class-name"))
{
- throw new AMQException(null, "Unable to create exchange: " + e, e);
+ try
+ {
+ Class<? extends ExchangeType> exchangeTypeClass = (Class<? extends ExchangeType>) Class.forName(String.valueOf(className));
+ ExchangeType type = exchangeTypeClass.newInstance();
+ registerExchangeType(type);
+
+ }
+ catch (ClassNotFoundException e)
+ {
+ _logger.error("No such custom exchange class found: \""+String.valueOf(className)+"\"");
+ }
+ catch (ClassCastException classCastEx)
+ {
+ _logger.error("No custom exchange class: \""+String.valueOf(className)+"\" cannot be registered as it does not extend class \""+ExchangeType.class+"\"");
+ }
+ catch (IllegalAccessException e)
+ {
+ _logger.error("Cannot create custom exchange class: \""+String.valueOf(className)+"\"",e);
+ }
+ catch (InstantiationException e)
+ {
+ _logger.error("Cannot create custom exchange class: \""+String.valueOf(className)+"\"",e);
+ }
}
+
}
}
Modified: incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DestNameExchange.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DestNameExchange.java?view=diff&rev=563125&r1=563124&r2=563125
==============================================================================
--- incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DestNameExchange.java (original)
+++ incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DestNameExchange.java Mon Aug 6 06:06:35 2007
@@ -48,6 +48,7 @@
import org.apache.qpid.server.management.MBeanDescription;
import org.apache.qpid.server.queue.AMQMessage;
import org.apache.qpid.server.queue.AMQQueue;
+import org.apache.qpid.server.virtualhost.VirtualHost;
public class DestNameExchange extends AbstractExchange
{
@@ -57,6 +58,30 @@
* Maps from queue name to queue instances
*/
private final Index _index = new Index();
+
+ public static final ExchangeType<DestNameExchange> TYPE = new ExchangeType<DestNameExchange>()
+ {
+
+ public AMQShortString getName()
+ {
+ return ExchangeDefaults.DIRECT_EXCHANGE_CLASS;
+ }
+
+ public Class<DestNameExchange> getExchangeClass()
+ {
+ return DestNameExchange.class;
+ }
+
+ public DestNameExchange newInstance(VirtualHost host,
+ AMQShortString name,
+ boolean durable,
+ boolean autoDelete) throws AMQException
+ {
+ DestNameExchange exch = new DestNameExchange();
+ exch.initialise(host,name,durable,autoDelete);
+ return exch;
+ }
+ };
/**
* MBean class implementing the management interfaces.
Modified: incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DestWildExchange.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DestWildExchange.java?view=diff&rev=563125&r1=563124&r2=563125
==============================================================================
--- incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DestWildExchange.java (original)
+++ incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/DestWildExchange.java Mon Aug 6 06:06:35 2007
@@ -32,6 +32,7 @@
import org.apache.qpid.server.management.MBeanDescription;
import org.apache.qpid.server.queue.AMQMessage;
import org.apache.qpid.server.queue.AMQQueue;
+import org.apache.qpid.server.virtualhost.VirtualHost;
import javax.management.JMException;
import javax.management.MBeanException;
@@ -56,6 +57,32 @@
public class DestWildExchange extends AbstractExchange
{
+
+ public static final ExchangeType<DestWildExchange> TYPE = new ExchangeType<DestWildExchange>()
+ {
+
+ public AMQShortString getName()
+ {
+ return ExchangeDefaults.TOPIC_EXCHANGE_CLASS;
+ }
+
+ public Class<DestWildExchange> getExchangeClass()
+ {
+ return DestWildExchange.class;
+ }
+
+ public DestWildExchange newInstance(VirtualHost host,
+ AMQShortString name,
+ boolean durable,
+ boolean autoDelete) throws AMQException
+ {
+ DestWildExchange exch = new DestWildExchange();
+ exch.initialise(host,name,durable,autoDelete);
+ return exch;
+ }
+ };
+
+
private static final Logger _logger = Logger.getLogger(DestWildExchange.class);
private ConcurrentHashMap<AMQShortString, List<AMQQueue>> _routingKey2queues =
Modified: incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/Exchange.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/Exchange.java?view=diff&rev=563125&r1=563124&r2=563125
==============================================================================
--- incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/Exchange.java (original)
+++ incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/Exchange.java Mon Aug 6 06:06:35 2007
@@ -32,7 +32,7 @@
AMQShortString getName();
AMQShortString getType();
- void initialise(VirtualHost host, AMQShortString name, boolean durable, int ticket, boolean autoDelete) throws AMQException;
+
boolean isDurable();
@@ -40,8 +40,6 @@
* @return true if the exchange will be deleted after all queues have been detached
*/
boolean isAutoDelete();
-
- int getTicket();
void close() throws AMQException;
Modified: incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ExchangeFactory.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ExchangeFactory.java?view=diff&rev=563125&r1=563124&r2=563125
==============================================================================
--- incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ExchangeFactory.java (original)
+++ incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ExchangeFactory.java Mon Aug 6 06:06:35 2007
@@ -20,6 +20,8 @@
*/
package org.apache.qpid.server.exchange;
+import org.apache.commons.configuration.Configuration;
+
import org.apache.qpid.AMQException;
import org.apache.qpid.framing.AMQShortString;
@@ -29,4 +31,6 @@
Exchange createExchange(AMQShortString exchange, AMQShortString type, boolean durable, boolean autoDelete,
int ticket)
throws AMQException;
+
+ void initialise(Configuration hostConfig);
}
Modified: incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ExchangeRegistry.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ExchangeRegistry.java?view=diff&rev=563125&r1=563124&r2=563125
==============================================================================
--- incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ExchangeRegistry.java (original)
+++ incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ExchangeRegistry.java Mon Aug 6 06:06:35 2007
@@ -20,6 +20,8 @@
*/
package org.apache.qpid.server.exchange;
+import org.apache.commons.configuration.Configuration;
+
import org.apache.qpid.AMQException;
import org.apache.qpid.framing.AMQShortString;
Added: incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ExchangeType.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ExchangeType.java?view=auto&rev=563125
==============================================================================
--- incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ExchangeType.java (added)
+++ incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ExchangeType.java Mon Aug 6 06:06:35 2007
@@ -0,0 +1,34 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+package org.apache.qpid.server.exchange;
+
+import org.apache.qpid.framing.AMQShortString;
+import org.apache.qpid.AMQException;
+import org.apache.qpid.server.virtualhost.VirtualHost;
+
+
+public interface ExchangeType<T extends Exchange>
+{
+ public AMQShortString getName();
+ public Class<T> getExchangeClass();
+ public T newInstance(VirtualHost host, AMQShortString name,
+ boolean durable, boolean autoDelete) throws AMQException;
+}
Modified: incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/FanoutExchange.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/FanoutExchange.java?view=diff&rev=563125&r1=563124&r2=563125
==============================================================================
--- incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/FanoutExchange.java (original)
+++ incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/FanoutExchange.java Mon Aug 6 06:06:35 2007
@@ -31,6 +31,7 @@
import org.apache.qpid.server.management.MBeanDescription;
import org.apache.qpid.server.queue.AMQMessage;
import org.apache.qpid.server.queue.AMQQueue;
+import org.apache.qpid.server.virtualhost.VirtualHost;
import javax.management.JMException;
import javax.management.MBeanException;
@@ -49,7 +50,35 @@
public class FanoutExchange extends AbstractExchange
{
+
+
private static final Logger _logger = Logger.getLogger(FanoutExchange.class);
+
+
+ public static final ExchangeType<FanoutExchange> TYPE = new ExchangeType<FanoutExchange>()
+ {
+
+ public AMQShortString getName()
+ {
+ return ExchangeDefaults.FANOUT_EXCHANGE_CLASS;
+ }
+
+ public Class<FanoutExchange> getExchangeClass()
+ {
+ return FanoutExchange.class;
+ }
+
+ public FanoutExchange newInstance(VirtualHost host,
+ AMQShortString name,
+ boolean durable,
+ boolean autoDelete) throws AMQException
+ {
+ FanoutExchange exch = new FanoutExchange();
+ exch.initialise(host,name,durable,autoDelete);
+ return exch;
+ }
+ };
+
/**
* Maps from queue name to queue instances
Modified: incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/HeadersExchange.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/HeadersExchange.java?view=diff&rev=563125&r1=563124&r2=563125
==============================================================================
--- incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/HeadersExchange.java (original)
+++ incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/HeadersExchange.java Mon Aug 6 06:06:35 2007
@@ -49,6 +49,7 @@
import org.apache.qpid.server.management.MBeanDescription;
import org.apache.qpid.server.queue.AMQMessage;
import org.apache.qpid.server.queue.AMQQueue;
+import org.apache.qpid.server.virtualhost.VirtualHost;
/**
* An exchange that binds queues based on a set of required headers and header values
@@ -80,6 +81,33 @@
public class HeadersExchange extends AbstractExchange
{
private static final Logger _logger = Logger.getLogger(HeadersExchange.class);
+
+
+
+ public static final ExchangeType<HeadersExchange> TYPE = new ExchangeType<HeadersExchange>()
+ {
+
+ public AMQShortString getName()
+ {
+ return ExchangeDefaults.HEADERS_EXCHANGE_CLASS;
+ }
+
+ public Class<HeadersExchange> getExchangeClass()
+ {
+ return HeadersExchange.class;
+ }
+
+ public HeadersExchange newInstance(VirtualHost host,
+ AMQShortString name,
+ boolean durable,
+ boolean autoDelete) throws AMQException
+ {
+ HeadersExchange exch = new HeadersExchange();
+ exch.initialise(host,name,durable,autoDelete);
+ return exch;
+ }
+ };
+
private final List<Registration> _bindings = new CopyOnWriteArrayList<Registration>();
Modified: incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ManagedExchange.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ManagedExchange.java?view=diff&rev=563125&r1=563124&r2=563125
==============================================================================
--- incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ManagedExchange.java (original)
+++ incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ManagedExchange.java Mon Aug 6 06:06:35 2007
@@ -52,9 +52,6 @@
@MBeanAttribute(name="ExchangeType", description="Exchange Type")
String getExchangeType() throws IOException;
- @MBeanAttribute(name="TicketNo", description="Exchange Ticket No")
- Integer getTicketNo() throws IOException;
-
/**
* Tells if the exchange is durable or not.
* @return true if the exchange is durable.
Modified: incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHost.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHost.java?view=diff&rev=563125&r1=563124&r2=563125
==============================================================================
--- incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHost.java (original)
+++ incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHost.java Mon Aug 6 06:06:35 2007
@@ -146,6 +146,7 @@
_queueRegistry = new DefaultQueueRegistry(this);
_exchangeFactory = new DefaultExchangeFactory(this);
+ _exchangeFactory.initialise(hostConfig);
_exchangeRegistry = new DefaultExchangeRegistry(this);
if (store != null)
@@ -163,6 +164,7 @@
}
_exchangeRegistry.initialise();
+
_logger.warn("VirtualHost authentication Managers require spec change to be operational.");
_authenticationManager = new PrincipalDatabaseAuthenticationManager(name, hostConfig);
Modified: incubator/qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/exchange/ExchangeMBeanTest.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/exchange/ExchangeMBeanTest.java?view=diff&rev=563125&r1=563124&r2=563125
==============================================================================
--- incubator/qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/exchange/ExchangeMBeanTest.java (original)
+++ incubator/qpid/trunk/qpid/java/broker/src/test/java/org/apache/qpid/server/exchange/ExchangeMBeanTest.java Mon Aug 6 06:06:35 2007
@@ -48,7 +48,7 @@
public void testDirectExchangeMBean() throws Exception
{
DestNameExchange exchange = new DestNameExchange();
- exchange.initialise(_virtualHost, ExchangeDefaults.DIRECT_EXCHANGE_NAME, false, 0, true);
+ exchange.initialise(_virtualHost, ExchangeDefaults.DIRECT_EXCHANGE_NAME, false, true);
ManagedObject managedObj = exchange.getManagedObject();
ManagedExchange mbean = (ManagedExchange)managedObj;
@@ -62,7 +62,6 @@
// test general exchange properties
assertEquals(mbean.getName(), "amq.direct");
assertEquals(mbean.getExchangeType(), "direct");
- assertTrue(mbean.getTicketNo() == 0);
assertTrue(!mbean.isDurable());
assertTrue(mbean.isAutoDelete());
}
@@ -75,7 +74,7 @@
public void testTopicExchangeMBean() throws Exception
{
DestWildExchange exchange = new DestWildExchange();
- exchange.initialise(_virtualHost,ExchangeDefaults.TOPIC_EXCHANGE_NAME, false, 0, true);
+ exchange.initialise(_virtualHost,ExchangeDefaults.TOPIC_EXCHANGE_NAME, false, true);
ManagedObject managedObj = exchange.getManagedObject();
ManagedExchange mbean = (ManagedExchange)managedObj;
@@ -89,7 +88,6 @@
// test general exchange properties
assertEquals(mbean.getName(), "amq.topic");
assertEquals(mbean.getExchangeType(), "topic");
- assertTrue(mbean.getTicketNo() == 0);
assertTrue(!mbean.isDurable());
assertTrue(mbean.isAutoDelete());
}
@@ -102,7 +100,7 @@
public void testHeadersExchangeMBean() throws Exception
{
HeadersExchange exchange = new HeadersExchange();
- exchange.initialise(_virtualHost,ExchangeDefaults.HEADERS_EXCHANGE_NAME, false, 0, true);
+ exchange.initialise(_virtualHost,ExchangeDefaults.HEADERS_EXCHANGE_NAME, false, true);
ManagedObject managedObj = exchange.getManagedObject();
ManagedExchange mbean = (ManagedExchange)managedObj;
@@ -116,7 +114,6 @@
// test general exchange properties
assertEquals(mbean.getName(), "amq.match");
assertEquals(mbean.getExchangeType(), "headers");
- assertTrue(mbean.getTicketNo() == 0);
assertTrue(!mbean.isDurable());
assertTrue(mbean.isAutoDelete());
}
Modified: incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer.java?view=diff&rev=563125&r1=563124&r2=563125
==============================================================================
--- incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer.java (original)
+++ incubator/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer.java Mon Aug 6 06:06:35 2007
@@ -138,7 +138,7 @@
_channelId = channelId;
_session = session;
_producerId = producerId;
- if (destination != null)
+ if (destination != null && !(destination instanceof AMQUndefinedDestination))
{
declareDestination(destination);
}
@@ -150,7 +150,7 @@
void resubscribe() throws AMQException
{
- if (_destination != null)
+ if (_destination != null && !(_destination instanceof AMQUndefinedDestination))
{
declareDestination(_destination);
}
Modified: incubator/qpid/trunk/qpid/java/management/eclipse-plugin/src/test/java/org/apache/qpid/management/ui/ManagementConsoleTest.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/management/eclipse-plugin/src/test/java/org/apache/qpid/management/ui/ManagementConsoleTest.java?view=diff&rev=563125&r1=563124&r2=563125
==============================================================================
--- incubator/qpid/trunk/qpid/java/management/eclipse-plugin/src/test/java/org/apache/qpid/management/ui/ManagementConsoleTest.java (original)
+++ incubator/qpid/trunk/qpid/java/management/eclipse-plugin/src/test/java/org/apache/qpid/management/ui/ManagementConsoleTest.java Mon Aug 6 06:06:35 2007
@@ -79,7 +79,7 @@
// If this test fails due to changes in the broker code,
// then the constants in the Constants.java shoule be updated accordingly
DestNameExchange exchange = new DestNameExchange();
- exchange.initialise(_virtualHost, ExchangeDefaults.DIRECT_EXCHANGE_NAME, false, 0, true);
+ exchange.initialise(_virtualHost, ExchangeDefaults.DIRECT_EXCHANGE_NAME, false, true);
AMQManagedObject mbean = (AMQManagedObject)exchange.getManagedObject();
MBeanInfo mbeanInfo = mbean.getMBeanInfo();