From 879ef8cf4fa5d0c935d52d0fcb1d7e81929cf2d5 Mon Sep 17 00:00:00 2001 From: Ted Ross Date: Thu, 16 Oct 2008 19:45:14 +0000 Subject: QPID-1366 - implementation of automatic anti-looping for federation git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@705337 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/broker/Bridge.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'cpp/src/qpid/broker/Bridge.cpp') diff --git a/cpp/src/qpid/broker/Bridge.cpp b/cpp/src/qpid/broker/Bridge.cpp index 65ed38b731..5064320efb 100644 --- a/cpp/src/qpid/broker/Bridge.cpp +++ b/cpp/src/qpid/broker/Bridge.cpp @@ -91,11 +91,21 @@ void Bridge::create(ConnectionState& c) string queue = "bridge_queue_"; queue += Uuid(true).str(); FieldTable queueSettings; + if (args.i_tag.size()) { queueSettings.setString("qpid.trace.id", args.i_tag); + } else { + const string& localTag = link->getBroker()->getFederationTag(); + if (localTag.size()) + queueSettings.setString("qpid.trace.id", localTag); } + if (args.i_excludes.size()) { queueSettings.setString("qpid.trace.exclude", args.i_excludes); + } else { + const string& peerTag = c.getFederationPeerTag(); + if (peerTag.size()) + queueSettings.setString("qpid.trace.exclude", peerTag); } bool durable = false;//should this be an arg, or would be use srcIsQueue for durable queues? -- cgit v1.2.1