summaryrefslogtreecommitdiff
path: root/java/common/src
diff options
context:
space:
mode:
Diffstat (limited to 'java/common/src')
-rw-r--r--java/common/src/main/java/org/apache/qpid/AMQChannelClosedException.java4
-rw-r--r--java/common/src/main/java/org/apache/qpid/AMQChannelException.java7
-rw-r--r--java/common/src/main/java/org/apache/qpid/AMQConnectionClosedException.java4
-rw-r--r--java/common/src/main/java/org/apache/qpid/AMQConnectionException.java7
-rw-r--r--java/common/src/main/java/org/apache/qpid/AMQException.java15
-rw-r--r--java/common/src/main/java/org/apache/qpid/AMQInvalidRoutingKeyException.java31
-rw-r--r--java/common/src/main/java/org/apache/qpid/AMQInvalidSelectorException.java2
-rw-r--r--java/common/src/main/java/org/apache/qpid/AMQUndeliveredException.java4
-rw-r--r--java/common/src/main/java/org/apache/qpid/configuration/PropertyException.java7
-rw-r--r--java/common/src/main/java/org/apache/qpid/framing/AMQMethodBody.java58
-rw-r--r--java/common/src/main/java/org/apache/qpid/protocol/AMQConstant.java8
11 files changed, 106 insertions, 41 deletions
diff --git a/java/common/src/main/java/org/apache/qpid/AMQChannelClosedException.java b/java/common/src/main/java/org/apache/qpid/AMQChannelClosedException.java
index cd8b40c6da..272933ca04 100644
--- a/java/common/src/main/java/org/apache/qpid/AMQChannelClosedException.java
+++ b/java/common/src/main/java/org/apache/qpid/AMQChannelClosedException.java
@@ -20,12 +20,14 @@
*/
package org.apache.qpid;
+import org.apache.qpid.protocol.AMQConstant;
+
/**
* AMQ channel closed exception.
*/
public class AMQChannelClosedException extends AMQException
{
- public AMQChannelClosedException(int errorCode, String msg)
+ public AMQChannelClosedException(AMQConstant errorCode, String msg)
{
super(errorCode, msg);
}
diff --git a/java/common/src/main/java/org/apache/qpid/AMQChannelException.java b/java/common/src/main/java/org/apache/qpid/AMQChannelException.java
index d1750ebbb5..d8c9b287bd 100644
--- a/java/common/src/main/java/org/apache/qpid/AMQChannelException.java
+++ b/java/common/src/main/java/org/apache/qpid/AMQChannelException.java
@@ -23,6 +23,7 @@ package org.apache.qpid;
import org.apache.qpid.framing.AMQFrame;
import org.apache.qpid.framing.AMQShortString;
import org.apache.qpid.framing.ChannelCloseBody;
+import org.apache.qpid.protocol.AMQConstant;
public class AMQChannelException extends AMQException
{
@@ -32,7 +33,7 @@ public class AMQChannelException extends AMQException
private final byte major;
private final byte minor;
- public AMQChannelException(int errorCode, String msg, int classId, int methodId, byte major, byte minor, Throwable t)
+ public AMQChannelException(AMQConstant errorCode, String msg, int classId, int methodId, byte major, byte minor, Throwable t)
{
super(errorCode, msg, t);
_classId = classId;
@@ -41,7 +42,7 @@ public class AMQChannelException extends AMQException
this.minor = minor;
}
- public AMQChannelException(int errorCode, String msg, int classId, int methodId, byte major, byte minor)
+ public AMQChannelException(AMQConstant errorCode, String msg, int classId, int methodId, byte major, byte minor)
{
super(errorCode, msg);
_classId = classId;
@@ -52,6 +53,6 @@ public class AMQChannelException extends AMQException
public AMQFrame getCloseFrame(int channel)
{
- return ChannelCloseBody.createAMQFrame(channel, major, minor, _classId, _methodId, getErrorCode(), new AMQShortString(getMessage()));
+ return ChannelCloseBody.createAMQFrame(channel, major, minor, _classId, _methodId, getErrorCode().getCode(), new AMQShortString(getMessage()));
}
}
diff --git a/java/common/src/main/java/org/apache/qpid/AMQConnectionClosedException.java b/java/common/src/main/java/org/apache/qpid/AMQConnectionClosedException.java
index 6ec18bad20..e0ed16a9f0 100644
--- a/java/common/src/main/java/org/apache/qpid/AMQConnectionClosedException.java
+++ b/java/common/src/main/java/org/apache/qpid/AMQConnectionClosedException.java
@@ -20,12 +20,14 @@
*/
package org.apache.qpid;
+import org.apache.qpid.protocol.AMQConstant;
+
/**
* AMQ channel closed exception.
*/
public class AMQConnectionClosedException extends AMQException
{
- public AMQConnectionClosedException(int errorCode, String msg)
+ public AMQConnectionClosedException(AMQConstant errorCode, String msg)
{
super(errorCode, msg);
}
diff --git a/java/common/src/main/java/org/apache/qpid/AMQConnectionException.java b/java/common/src/main/java/org/apache/qpid/AMQConnectionException.java
index c6a874bcf3..c4f80191a3 100644
--- a/java/common/src/main/java/org/apache/qpid/AMQConnectionException.java
+++ b/java/common/src/main/java/org/apache/qpid/AMQConnectionException.java
@@ -24,6 +24,7 @@ package org.apache.qpid;
import org.apache.qpid.framing.AMQFrame;
import org.apache.qpid.framing.AMQShortString;
import org.apache.qpid.framing.ConnectionCloseBody;
+import org.apache.qpid.protocol.AMQConstant;
public class AMQConnectionException extends AMQException
{
@@ -34,7 +35,7 @@ public class AMQConnectionException extends AMQException
private final byte minor;
boolean _closeConnetion;
- public AMQConnectionException(int errorCode, String msg, int classId, int methodId, byte major, byte minor, Throwable t)
+ public AMQConnectionException(AMQConstant errorCode, String msg, int classId, int methodId, byte major, byte minor, Throwable t)
{
super(errorCode, msg, t);
_classId = classId;
@@ -43,7 +44,7 @@ public class AMQConnectionException extends AMQException
this.minor = minor;
}
- public AMQConnectionException(int errorCode, String msg, int classId, int methodId, byte major, byte minor)
+ public AMQConnectionException(AMQConstant errorCode, String msg, int classId, int methodId, byte major, byte minor)
{
super(errorCode, msg);
_classId = classId;
@@ -56,7 +57,7 @@ public class AMQConnectionException extends AMQException
public AMQFrame getCloseFrame(int channel)
{
- return ConnectionCloseBody.createAMQFrame(channel, major, minor, _classId, _methodId, getErrorCode(), new AMQShortString(getMessage()));
+ return ConnectionCloseBody.createAMQFrame(channel, major, minor, _classId, _methodId, getErrorCode().getCode(), new AMQShortString(getMessage()));
}
diff --git a/java/common/src/main/java/org/apache/qpid/AMQException.java b/java/common/src/main/java/org/apache/qpid/AMQException.java
index 93c31e4fa8..5c11ec18ca 100644
--- a/java/common/src/main/java/org/apache/qpid/AMQException.java
+++ b/java/common/src/main/java/org/apache/qpid/AMQException.java
@@ -21,31 +21,36 @@
package org.apache.qpid;
import org.apache.log4j.Logger;
+import org.apache.qpid.protocol.AMQConstant;
/**
* Generic AMQ exception.
*/
public class AMQException extends Exception
{
- private int _errorCode;
+ private AMQConstant _errorCode;
public AMQException(String message)
{
super(message);
+ //fixme This method needs removed and all AMQExceptions need a valid error code
+ _errorCode = AMQConstant.getConstant(-1);
}
public AMQException(String msg, Throwable t)
{
super(msg, t);
+ //fixme This method needs removed and all AMQExceptions need a valid error code
+ _errorCode = AMQConstant.getConstant(-1);
}
- public AMQException(int errorCode, String msg, Throwable t)
+ public AMQException(AMQConstant errorCode, String msg, Throwable t)
{
super(msg + " [error code " + errorCode + ']', t);
_errorCode = errorCode;
}
- public AMQException(int errorCode, String msg)
+ public AMQException(AMQConstant errorCode, String msg)
{
super(msg + " [error code " + errorCode + ']');
_errorCode = errorCode;
@@ -63,13 +68,13 @@ public class AMQException extends Exception
logger.error(getMessage(), this);
}
- public AMQException(Logger logger, int errorCode, String msg)
+ public AMQException(Logger logger, AMQConstant errorCode, String msg)
{
this(errorCode, msg);
logger.error(getMessage(), this);
}
- public int getErrorCode()
+ public AMQConstant getErrorCode()
{
return _errorCode;
}
diff --git a/java/common/src/main/java/org/apache/qpid/AMQInvalidRoutingKeyException.java b/java/common/src/main/java/org/apache/qpid/AMQInvalidRoutingKeyException.java
new file mode 100644
index 0000000000..3293e2523d
--- /dev/null
+++ b/java/common/src/main/java/org/apache/qpid/AMQInvalidRoutingKeyException.java
@@ -0,0 +1,31 @@
+/*
+ * 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;
+
+import org.apache.qpid.protocol.AMQConstant;
+
+public class AMQInvalidRoutingKeyException extends AMQException
+{
+ public AMQInvalidRoutingKeyException(String message)
+ {
+ super(AMQConstant.INVALID_ROUTING_KEY,message);
+ }
+}
diff --git a/java/common/src/main/java/org/apache/qpid/AMQInvalidSelectorException.java b/java/common/src/main/java/org/apache/qpid/AMQInvalidSelectorException.java
index dcd039b789..9d003514ad 100644
--- a/java/common/src/main/java/org/apache/qpid/AMQInvalidSelectorException.java
+++ b/java/common/src/main/java/org/apache/qpid/AMQInvalidSelectorException.java
@@ -26,6 +26,6 @@ public class AMQInvalidSelectorException extends AMQException
{
public AMQInvalidSelectorException(String message)
{
- super(AMQConstant.INVALID_SELECTOR.getCode(),message);
+ super(AMQConstant.INVALID_SELECTOR,message);
}
}
diff --git a/java/common/src/main/java/org/apache/qpid/AMQUndeliveredException.java b/java/common/src/main/java/org/apache/qpid/AMQUndeliveredException.java
index 4944ccc371..ad5aff7bb6 100644
--- a/java/common/src/main/java/org/apache/qpid/AMQUndeliveredException.java
+++ b/java/common/src/main/java/org/apache/qpid/AMQUndeliveredException.java
@@ -20,6 +20,8 @@
*/
package org.apache.qpid;
+import org.apache.qpid.protocol.AMQConstant;
+
/**
* Generic AMQ exception.
*/
@@ -27,7 +29,7 @@ public class AMQUndeliveredException extends AMQException
{
private Object _bounced;
- public AMQUndeliveredException(int errorCode, String msg, Object bounced)
+ public AMQUndeliveredException(AMQConstant errorCode, String msg, Object bounced)
{
super(errorCode, msg);
diff --git a/java/common/src/main/java/org/apache/qpid/configuration/PropertyException.java b/java/common/src/main/java/org/apache/qpid/configuration/PropertyException.java
index 67af0b0b74..958f59191f 100644
--- a/java/common/src/main/java/org/apache/qpid/configuration/PropertyException.java
+++ b/java/common/src/main/java/org/apache/qpid/configuration/PropertyException.java
@@ -22,6 +22,7 @@ package org.apache.qpid.configuration;
import org.apache.log4j.Logger;
import org.apache.qpid.AMQException;
+import org.apache.qpid.protocol.AMQConstant;
/**
* Indicates an error parsing a property expansion.
@@ -38,12 +39,12 @@ public class PropertyException extends AMQException
super(msg, t);
}
- public PropertyException(int errorCode, String msg, Throwable t)
+ public PropertyException(AMQConstant errorCode, String msg, Throwable t)
{
super(errorCode, msg, t);
}
- public PropertyException(int errorCode, String msg)
+ public PropertyException(AMQConstant errorCode, String msg)
{
super(errorCode, msg);
}
@@ -58,7 +59,7 @@ public class PropertyException extends AMQException
super(logger, msg);
}
- public PropertyException(Logger logger, int errorCode, String msg)
+ public PropertyException(Logger logger, AMQConstant errorCode, String msg)
{
super(logger, errorCode, msg);
}
diff --git a/java/common/src/main/java/org/apache/qpid/framing/AMQMethodBody.java b/java/common/src/main/java/org/apache/qpid/framing/AMQMethodBody.java
index 3fa5b150ab..111d9a8f20 100644
--- a/java/common/src/main/java/org/apache/qpid/framing/AMQMethodBody.java
+++ b/java/common/src/main/java/org/apache/qpid/framing/AMQMethodBody.java
@@ -23,19 +23,26 @@ package org.apache.qpid.framing;
import org.apache.mina.common.ByteBuffer;
import org.apache.qpid.AMQChannelException;
import org.apache.qpid.AMQConnectionException;
+import org.apache.qpid.protocol.AMQConstant;
public abstract class AMQMethodBody extends AMQBody
{
- public static final byte TYPE = 1;
-
- /**
- * AMQP version
- */
+ public static final byte TYPE = 1;
+
+ /** AMQP version */
protected byte major;
protected byte minor;
- public byte getMajor() { return major; }
- public byte getMinor() { return minor; }
-
+
+ public byte getMajor()
+ {
+ return major;
+ }
+
+ public byte getMinor()
+ {
+ return minor;
+ }
+
public AMQMethodBody(byte major, byte minor)
{
this.major = major;
@@ -45,14 +52,10 @@ public abstract class AMQMethodBody extends AMQBody
/** unsigned short */
protected abstract int getBodySize();
- /**
- * @return unsigned short
- */
+ /** @return unsigned short */
protected abstract int getClazz();
- /**
- * @return unsigned short
- */
+ /** @return unsigned short */
protected abstract int getMethod();
protected abstract void writeMethodPayload(ByteBuffer buffer);
@@ -90,27 +93,38 @@ public abstract class AMQMethodBody extends AMQBody
}
/**
- * Creates an AMQChannelException for the corresponding body type (a channel exception
- * should include the class and method ids of the body it resulted from).
+ * Creates an AMQChannelException for the corresponding body type (a channel exception should include the class and
+ * method ids of the body it resulted from).
+ */
+
+ /**
+ * Convenience Method to create a channel not found exception
+ *
+ * @param channelId The channel id that is not found
+ *
+ * @return new AMQChannelException
*/
- public AMQChannelException getChannelException(int code, String message)
+ public AMQChannelException getChannelNotFoundException(int channelId)
+ {
+ return getChannelException(AMQConstant.NOT_FOUND, "Channel not found for id:" + channelId);
+ }
+
+ public AMQChannelException getChannelException(AMQConstant code, String message)
{
return new AMQChannelException(code, message, getClazz(), getMethod(), major, minor);
}
- public AMQChannelException getChannelException(int code, String message, Throwable cause)
+ public AMQChannelException getChannelException(AMQConstant code, String message, Throwable cause)
{
return new AMQChannelException(code, message, getClazz(), getMethod(), major, minor, cause);
}
- public AMQConnectionException getConnectionException(int code, String message)
+ public AMQConnectionException getConnectionException(AMQConstant code, String message)
{
return new AMQConnectionException(code, message, getClazz(), getMethod(), major, minor);
}
-
-
- public AMQConnectionException getConnectionException(int code, String message, Throwable cause)
+ public AMQConnectionException getConnectionException(AMQConstant code, String message, Throwable cause)
{
return new AMQConnectionException(code, message, getClazz(), getMethod(), major, minor, cause);
}
diff --git a/java/common/src/main/java/org/apache/qpid/protocol/AMQConstant.java b/java/common/src/main/java/org/apache/qpid/protocol/AMQConstant.java
index a4d90e9ee3..05365de137 100644
--- a/java/common/src/main/java/org/apache/qpid/protocol/AMQConstant.java
+++ b/java/common/src/main/java/org/apache/qpid/protocol/AMQConstant.java
@@ -69,7 +69,7 @@ public final class AMQConstant
public static final AMQConstant MESSAGE_TOO_LARGE = new AMQConstant(311, "message too large", true);
public static final AMQConstant NO_ROUTE = new AMQConstant(312, "no route", true);
-
+
public static final AMQConstant NO_CONSUMERS = new AMQConstant(313, "no consumers", true);
public static final AMQConstant CONTEXT_IN_USE = new AMQConstant(320, "context in use", true);
@@ -78,12 +78,18 @@ public final class AMQConstant
public static final AMQConstant INVALID_SELECTOR = new AMQConstant(322, "selector invalid", true);
+ public static final AMQConstant INVALID_ROUTING_KEY = new AMQConstant(323, "routing key invalid", true);
+
public static final AMQConstant INVALID_PATH = new AMQConstant(402, "invalid path", true);
public static final AMQConstant ACCESS_REFUSED = new AMQConstant(403, "access refused", true);
public static final AMQConstant NOT_FOUND = new AMQConstant(404, "not found", true);
+ public static final AMQConstant ALREADY_EXISTS = new AMQConstant(405, "Already exists", true);
+
+ public static final AMQConstant IN_USE = new AMQConstant(406, "In use", true);
+
public static final AMQConstant FRAME_ERROR = new AMQConstant(501, "frame error", true);
public static final AMQConstant SYNTAX_ERROR = new AMQConstant(502, "syntax error", true);