在没有连接的情况下验证AMQConnection连接字符串?

时间:2012-02-16 19:42:01

标签: java amqp qpid

Apache Qpid Java客户端API有一个AMQConnection类,用于建立与Qpid消息代理的连接。我正在使用单字符串构造函数(AMQConnection(String connection))。我有一个实用程序方法,首先创建连接字符串,然后传递给AMQConnection构造函数。

连接字符串的格式为amqp://<username>:<password>@<clientID>/?brokerlist='tcp://<hostname>:<port>'

如果构造函数传递的语法错误的连接字符串,则会抛出URLSyntaxException

我想将连接字符串语法检查移动到实用程序方法(我认为它不应该能够返回损坏的信息),但我还没有找到任何验证连接字符串的方法尝试建立与消息代理的连接。有没有办法做到这一点,或者我只需要依赖从构造函数中抛出的URLSyntaxException

1 个答案:

答案 0 :(得分:1)

您是否只想检查URI以获取正确的语法?如果是这样,只需创建URI class:

的实例
new URI("amqp://user:pwd@42/?brokerlist='tcp://example.com:80'")

当URI在语法上不正确时,会抛出java.net.URISyntaxException

如果您需要检查AMQ特定选项的URI,您可能有两个查看AMQ源代码并找到一个验证/解析它的类。