From 5b348df8d4e3cd5d051449983f00e579d4e41d77 Mon Sep 17 00:00:00 2001 From: Robert Varga Date: Wed, 10 Sep 2014 20:12:47 +0200 Subject: [PATCH] BUG-1792: share QNames in both cases As it turns out we cached the QNames only in case where the revision was not present. This adds the misssing call site. Change-Id: Ic59e1788f85f3f863241b85fd115097a6e3e3e19 Signed-off-by: Robert Varga --- .../netconf/listener/NetconfSessionCapabilities.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/opendaylight/md-sal/sal-netconf-connector/src/main/java/org/opendaylight/controller/sal/connect/netconf/listener/NetconfSessionCapabilities.java b/opendaylight/md-sal/sal-netconf-connector/src/main/java/org/opendaylight/controller/sal/connect/netconf/listener/NetconfSessionCapabilities.java index 0999efff0f..2642116927 100644 --- a/opendaylight/md-sal/sal-netconf-connector/src/main/java/org/opendaylight/controller/sal/connect/netconf/listener/NetconfSessionCapabilities.java +++ b/opendaylight/md-sal/sal-netconf-connector/src/main/java/org/opendaylight/controller/sal/connect/netconf/listener/NetconfSessionCapabilities.java @@ -119,6 +119,10 @@ public final class NetconfSessionCapabilities { return fromStrings(session.getServerCapabilities()); } + private static final QName cachedQName(String namespace, String revision, String moduleName) { + return QName.cachedReference(QName.create(namespace, revision, moduleName)); + } + public static NetconfSessionCapabilities fromStrings(final Collection capabilities) { final Set moduleBasedCaps = new HashSet<>(); final Set nonModuleCaps = Sets.newHashSet(capabilities); @@ -138,7 +142,7 @@ public final class NetconfSessionCapabilities { String revision = REVISION_PARAM.from(queryParams); if (revision != null) { - moduleBasedCaps.add(QName.create(namespace, revision, moduleName)); + moduleBasedCaps.add(cachedQName(namespace, revision, moduleName)); nonModuleCaps.remove(capability); continue; } @@ -158,7 +162,7 @@ public final class NetconfSessionCapabilities { } // FIXME: do we really want to continue here? - moduleBasedCaps.add(QName.cachedReference(QName.create(namespace, revision, moduleName))); + moduleBasedCaps.add(cachedQName(namespace, revision, moduleName)); nonModuleCaps.remove(capability); } -- 2.36.6