BUG-731 : removed some sonar warnings 14/9114/1
authorDana Kutenicsova <dkutenic@cisco.com>
Thu, 17 Jul 2014 11:34:48 +0000 (13:34 +0200)
committerDana Kutenicsova <dkutenic@cisco.com>
Thu, 17 Jul 2014 11:44:49 +0000 (13:44 +0200)
Change-Id: I4b1a5cdd7a12acca6b86eebd384066fc918ff2e4
Signed-off-by: Dana Kutenicsova <dkutenic@cisco.com>
bgp/rib-impl/src/main/java/org/opendaylight/controller/config/yang/bgp/rib/impl/BGPPeerModule.java
pcep/api/src/main/java/org/opendaylight/protocol/pcep/TerminationReason.java
pcep/ietf-stateful02/src/main/java/org/opendaylight/controller/config/yang/pcep/stateful02/cfg/Stateful02PCEPSessionProposalFactoryModule.java
pcep/ietf-stateful02/src/main/java/org/opendaylight/protocol/pcep/ietf/stateful02/Stateful02LspObjectParser.java
pcep/impl/src/main/java/org/opendaylight/protocol/pcep/impl/Activator.java

index 47490ee124de903aeab77e7d9caa51393592f17f..240c3862be67535af3418f3c3a77fcfaf2b95eb6 100644 (file)
@@ -20,10 +20,8 @@ import com.google.common.base.Charsets;
 import com.google.common.collect.Lists;
 import com.google.common.net.InetAddresses;
 import io.netty.util.concurrent.Future;
-
 import java.net.InetSocketAddress;
 import java.util.List;
-
 import org.opendaylight.bgpcep.tcpmd5.KeyMapping;
 import org.opendaylight.controller.config.api.JmxAttributeValidationException;
 import org.opendaylight.protocol.bgp.rib.impl.BGPPeer;
@@ -50,13 +48,13 @@ public final class BGPPeerModule extends org.opendaylight.controller.config.yang
     private static final Logger LOG = LoggerFactory.getLogger(BGPPeerModule.class);
 
     public BGPPeerModule(final org.opendaylight.controller.config.api.ModuleIdentifier identifier,
-            final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
+        final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
         super(identifier, dependencyResolver);
     }
 
     public BGPPeerModule(final org.opendaylight.controller.config.api.ModuleIdentifier identifier,
-            final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver, final BGPPeerModule oldModule,
-            final java.lang.AutoCloseable oldInstance) {
+        final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver, final BGPPeerModule oldModule,
+        final java.lang.AutoCloseable oldInstance) {
 
         super(identifier, dependencyResolver, oldModule, oldInstance);
     }
@@ -76,13 +74,13 @@ public final class BGPPeerModule extends org.opendaylight.controller.config.yang
              *         should something like isMd5ServerSupported()
              */
 
-            RIBImplModuleMXBean ribProxy = dependencyResolver.newMXBeanProxy(getRib(), RIBImplModuleMXBean.class);
-            BGPDispatcherImplModuleMXBean bgpDispatcherProxy = dependencyResolver.newMXBeanProxy(
-                    ribProxy.getBgpDispatcher(), BGPDispatcherImplModuleMXBean.class);
-            boolean isMd5Supported = bgpDispatcherProxy.getMd5ChannelFactory() != null;
+            final RIBImplModuleMXBean ribProxy = this.dependencyResolver.newMXBeanProxy(getRib(), RIBImplModuleMXBean.class);
+            final BGPDispatcherImplModuleMXBean bgpDispatcherProxy = this.dependencyResolver.newMXBeanProxy(
+                ribProxy.getBgpDispatcher(), BGPDispatcherImplModuleMXBean.class);
+            final boolean isMd5Supported = bgpDispatcherProxy.getMd5ChannelFactory() != null;
 
             JmxAttributeValidationException.checkCondition(isMd5Supported,
-                    "Underlying dispatcher does not support MD5 clients", passwordJmxAttribute);
+                "Underlying dispatcher does not support MD5 clients", passwordJmxAttribute);
 
         }
     }
@@ -134,7 +132,7 @@ public final class BGPPeerModule extends org.opendaylight.controller.config.yang
         }
     }
 
-    private static interface CloseableNoEx extends AutoCloseable {
+    private interface CloseableNoEx extends AutoCloseable {
         @Override
         void close();
     }
@@ -149,7 +147,7 @@ public final class BGPPeerModule extends org.opendaylight.controller.config.yang
         return password;
     }
 
-    private AsNumber getAsOrDefault(RIB r) {
+    private AsNumber getAsOrDefault(final RIB r) {
         // Remote AS number defaults to our local AS
         final AsNumber remoteAs;
         if (getRemoteAs() != null) {
@@ -160,10 +158,10 @@ public final class BGPPeerModule extends org.opendaylight.controller.config.yang
         return remoteAs;
     }
 
-    private List<BgpParameters> getTlvs(RIB r) {
+    private List<BgpParameters> getTlvs(final RIB r) {
         final List<BgpParameters> tlvs = Lists.newArrayList();
         tlvs.add(new BgpParametersBuilder().setCParameters(
-                new As4BytesCaseBuilder().setAs4BytesCapability(new As4BytesCapabilityBuilder().setAsNumber(r.getLocalAs()).build()).build()).build());
+            new As4BytesCaseBuilder().setAs4BytesCapability(new As4BytesCapabilityBuilder().setAsNumber(r.getLocalAs()).build()).build()).build());
 
         for (final BgpTableType t : getAdvertizedTableDependency()) {
             if (!r.getLocalTables().contains(t)) {
@@ -171,7 +169,7 @@ public final class BGPPeerModule extends org.opendaylight.controller.config.yang
             }
 
             tlvs.add(new BgpParametersBuilder().setCParameters(
-                    new MultiprotocolCaseBuilder().setMultiprotocolCapability(new MultiprotocolCapabilityBuilder(t).build()).build()).build());
+                new MultiprotocolCaseBuilder().setMultiprotocolCapability(new MultiprotocolCapabilityBuilder(t).build()).build()).build());
         }
         return tlvs;
     }
@@ -200,7 +198,7 @@ public final class BGPPeerModule extends org.opendaylight.controller.config.yang
 
         final RIB rib = getRibDependency();
         return rib.getDispatcher().createReconnectingClient(address, remoteAs, registry, rib.getTcpStrategyFactory(),
-                rib.getSessionStrategyFactory(), keys);
+            rib.getSessionStrategyFactory(), keys);
     }
 
     private BGPPeerRegistry getPeerRegistryBackwards() {
index 77d4ff492b63af655f07844faa9bd457e9997fc7..76f7d35896f2b4366e7cad82a6f0589d71bb7faf 100644 (file)
@@ -8,19 +8,18 @@
 package org.opendaylight.protocol.pcep;
 
 import com.google.common.collect.Maps;
-
 import java.util.Map;
 
 public enum TerminationReason {
     Unknown((short) 1), ExpDeadtimer((short) 2), MalformedMsg((short) 3), TooManyUnknownReqRep((short) 4), TooManyUnknownMsg((short) 5);
 
     private short value;
-    private static final Map<Short, TerminationReason> valueMap;
+    private static final Map<Short, TerminationReason> VALUE_MAP;
 
     static {
-        valueMap = Maps.newHashMap();
+        VALUE_MAP = Maps.newHashMap();
         for (final TerminationReason enumItem : TerminationReason.values()) {
-            valueMap.put(enumItem.value, enumItem);
+            VALUE_MAP.put(enumItem.value, enumItem);
         }
     }
 
@@ -40,6 +39,6 @@ public enum TerminationReason {
      * @return corresponding TerminationReason item
      */
     public static TerminationReason forValue(final short valueArg) {
-        return valueMap.get(valueArg);
+        return VALUE_MAP.get(valueArg);
     }
 }
index 7a5d9d0dd868e2bc3c86a96720e0479307c7a8ba..4df59970330edc87aa68af06c45882d132b1406a 100644 (file)
@@ -8,9 +8,7 @@
 package org.opendaylight.controller.config.yang.pcep.stateful02.cfg;
 
 import com.google.common.base.Preconditions;
-
 import java.net.InetSocketAddress;
-
 import org.opendaylight.controller.config.api.JmxAttributeValidationException;
 import org.opendaylight.protocol.pcep.PCEPSessionProposalFactory;
 import org.opendaylight.protocol.pcep.ietf.stateful02.Stateful02SessionProposalFactory;
@@ -21,33 +19,35 @@ import org.slf4j.LoggerFactory;
 /**
  *
  */
-public final class Stateful02PCEPSessionProposalFactoryModule extends
-        org.opendaylight.controller.config.yang.pcep.stateful02.cfg.AbstractStateful02PCEPSessionProposalFactoryModule {
+public final class Stateful02PCEPSessionProposalFactoryModule extends org.opendaylight.controller.config.yang.pcep.stateful02.cfg.AbstractStateful02PCEPSessionProposalFactoryModule {
     private static final Logger LOG = LoggerFactory.getLogger(Stateful02PCEPSessionProposalFactoryModule.class);
 
+    private static final String NOT_SET = "value is not set.";
+    private static final int RATIO = 4;
+
     public Stateful02PCEPSessionProposalFactoryModule(final org.opendaylight.controller.config.api.ModuleIdentifier identifier,
-            final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
+        final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
         super(identifier, dependencyResolver);
     }
 
     public Stateful02PCEPSessionProposalFactoryModule(final org.opendaylight.controller.config.api.ModuleIdentifier identifier,
-            final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver,
-            final Stateful02PCEPSessionProposalFactoryModule oldModule, final java.lang.AutoCloseable oldInstance) {
+        final org.opendaylight.controller.config.api.DependencyResolver dependencyResolver,
+        final Stateful02PCEPSessionProposalFactoryModule oldModule, final java.lang.AutoCloseable oldInstance) {
 
         super(identifier, dependencyResolver, oldModule, oldInstance);
     }
 
     @Override
     protected void customValidation() {
-        JmxAttributeValidationException.checkNotNull(getActive(), "value is not set.", activeJmxAttribute);
-        JmxAttributeValidationException.checkNotNull(getInitiated(), "value is not set.", initiatedJmxAttribute);
-        JmxAttributeValidationException.checkNotNull(getDeadTimerValue(), "value is not set.", deadTimerValueJmxAttribute);
-        JmxAttributeValidationException.checkNotNull(getKeepAliveTimerValue(), "value is not set.", keepAliveTimerValueJmxAttribute);
-        JmxAttributeValidationException.checkNotNull(getTimeout(), "value is not set.", timeoutJmxAttribute);
+        JmxAttributeValidationException.checkNotNull(getActive(), NOT_SET, activeJmxAttribute);
+        JmxAttributeValidationException.checkNotNull(getInitiated(), NOT_SET, initiatedJmxAttribute);
+        JmxAttributeValidationException.checkNotNull(getDeadTimerValue(), NOT_SET, deadTimerValueJmxAttribute);
+        JmxAttributeValidationException.checkNotNull(getKeepAliveTimerValue(), NOT_SET, keepAliveTimerValueJmxAttribute);
+        JmxAttributeValidationException.checkNotNull(getTimeout(), NOT_SET, timeoutJmxAttribute);
         if (getKeepAliveTimerValue() != 0) {
             JmxAttributeValidationException.checkCondition(getKeepAliveTimerValue() >= 1, "minimum value is 1.",
-                    keepAliveTimerValueJmxAttribute);
-            if (getDeadTimerValue() != 0 && (getDeadTimerValue() / getKeepAliveTimerValue() != 4)) {
+                keepAliveTimerValueJmxAttribute);
+            if (getDeadTimerValue() != 0 && (getDeadTimerValue() / getKeepAliveTimerValue() != RATIO)) {
                 LOG.warn("DeadTimerValue should be 4 times greater than KeepAliveTimerValue");
             }
         }
index ba5abd53692712b572f6efcd915b9d9b71767cd4..f317e39b8d39c0bd6cc00167571e1eec27c0df6f 100644 (file)
@@ -47,6 +47,11 @@ public class Stateful02LspObjectParser extends AbstractObjectWithTlvsParser<Tlvs
     private static final int OPERATIONAL_FLAG_OFFSET = 13;
     private static final int REMOVE_FLAG_OFFSET = 12;
 
+    private static final int ONE_B_OFFSET = 12;
+    private static final int TWO_B_OFFSET = 4;
+
+    private static final int FLAGS_SIZE = 2;
+
     public Stateful02LspObjectParser(final TlvRegistry tlvReg) {
         super(tlvReg);
     }
@@ -58,8 +63,8 @@ public class Stateful02LspObjectParser extends AbstractObjectWithTlvsParser<Tlvs
         builder.setIgnore(header.isIgnore());
         builder.setProcessingRule(header.isProcessingRule());
         int[] plspIdRaw = { bytes.readUnsignedByte(), bytes.readUnsignedByte(), bytes.getUnsignedByte(2) };
-        builder.setPlspId(new PlspId((long) ((plspIdRaw[0] << 12) | (plspIdRaw[1] << 4) | (plspIdRaw[2] >> 4))));
-        final BitSet flags = ByteArray.bytesToBitSet(ByteArray.readBytes(bytes, 2));
+        builder.setPlspId(new PlspId((long) ((plspIdRaw[0] << ONE_B_OFFSET) | (plspIdRaw[1] << TWO_B_OFFSET) | (plspIdRaw[2] >> TWO_B_OFFSET))));
+        final BitSet flags = ByteArray.bytesToBitSet(ByteArray.readBytes(bytes, FLAGS_SIZE));
         builder.setDelegate(flags.get(DELEGATE_FLAG_OFFSET));
         builder.setSync(flags.get(SYNC_FLAG_OFFSET));
         builder.setRemove(flags.get(REMOVE_FLAG_OFFSET));
@@ -88,7 +93,7 @@ public class Stateful02LspObjectParser extends AbstractObjectWithTlvsParser<Tlvs
         final ByteBuf body = Unpooled.buffer();
         final PlspId plsp = specObj.getPlspId();
         Preconditions.checkArgument(plsp != null, "PLSP-ID not present");
-        writeMedium(plsp.getValue().intValue() << 4, body);
+        writeMedium(plsp.getValue().intValue() << TWO_B_OFFSET, body);
 
         BitSet flags = new BitSet(2 * Byte.SIZE);
         if (specObj.isDelegate() != null && specObj.isDelegate()) {
@@ -103,7 +108,7 @@ public class Stateful02LspObjectParser extends AbstractObjectWithTlvsParser<Tlvs
         if (specObj.isOperational() != null && specObj.isOperational()) {
             flags.set(OPERATIONAL_FLAG_OFFSET);
         }
-        body.writeByte(ByteArray.bitSetToBytes(flags, 2)[1]);
+        body.writeByte(ByteArray.bitSetToBytes(flags, FLAGS_SIZE)[1]);
         serializeTlvs(specObj.getTlvs(), body);
         ObjectUtil.formatSubobject(TYPE, CLASS, object.isProcessingRule(), object.isIgnore(), body, buffer);
     }
index 297089cd19e6d3596bcc587bf914002e3a2933ab..54abe6e57114039eab860bc29f62b3c3a6c209a7 100644 (file)
@@ -128,125 +128,125 @@ public final class Activator extends AbstractPCEPExtensionProviderActivator {
 
         final ObjectRegistry objReg = context.getObjectHandlerRegistry();
         final PCEPOpenMessageParser openParser = new PCEPOpenMessageParser(objReg);
-        context.registerMessageParser(PCEPOpenMessageParser.TYPE, openParser);
-        context.registerMessageSerializer(
+        regs.add(context.registerMessageParser(PCEPOpenMessageParser.TYPE, openParser));
+        regs.add(context.registerMessageSerializer(
             org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.message.rev131007.Open.class,
-            openParser);
+            openParser));
 
         final PCEPKeepAliveMessageParser kaParser = new PCEPKeepAliveMessageParser(objReg);
-        context.registerMessageParser(PCEPKeepAliveMessageParser.TYPE, kaParser);
-        context.registerMessageSerializer(Keepalive.class, kaParser);
+        regs.add(context.registerMessageParser(PCEPKeepAliveMessageParser.TYPE, kaParser));
+        regs.add(context.registerMessageSerializer(Keepalive.class, kaParser));
 
         final PCEPRequestMessageParser reqParser = new PCEPRequestMessageParser(objReg);
-        context.registerMessageParser(PCEPRequestMessageParser.TYPE, reqParser);
-        context.registerMessageSerializer(Pcreq.class, reqParser);
+        regs.add(context.registerMessageParser(PCEPRequestMessageParser.TYPE, reqParser));
+        regs.add(context.registerMessageSerializer(Pcreq.class, reqParser));
 
         final PCEPReplyMessageParser repParser = new PCEPReplyMessageParser(objReg);
-        context.registerMessageParser(PCEPReplyMessageParser.TYPE, repParser);
-        context.registerMessageSerializer(Pcrep.class, repParser);
+        regs.add(context.registerMessageParser(PCEPReplyMessageParser.TYPE, repParser));
+        regs.add(context.registerMessageSerializer(Pcrep.class, repParser));
 
         final PCEPNotificationMessageParser notParser = new PCEPNotificationMessageParser(objReg);
-        context.registerMessageParser(PCEPNotificationMessageParser.TYPE, notParser);
-        context.registerMessageSerializer(Pcntf.class, notParser);
+        regs.add(context.registerMessageParser(PCEPNotificationMessageParser.TYPE, notParser));
+        regs.add(context.registerMessageSerializer(Pcntf.class, notParser));
 
         final PCEPErrorMessageParser errParser = new PCEPErrorMessageParser(objReg);
-        context.registerMessageParser(PCEPErrorMessageParser.TYPE, errParser);
-        context.registerMessageSerializer(Pcerr.class, errParser);
+        regs.add(context.registerMessageParser(PCEPErrorMessageParser.TYPE, errParser));
+        regs.add(context.registerMessageSerializer(Pcerr.class, errParser));
 
         final PCEPCloseMessageParser closeParser = new PCEPCloseMessageParser(objReg);
-        context.registerMessageParser(PCEPCloseMessageParser.TYPE, closeParser);
-        context.registerMessageSerializer(Close.class, closeParser);
+        regs.add(context.registerMessageParser(PCEPCloseMessageParser.TYPE, closeParser));
+        regs.add(context.registerMessageSerializer(Close.class, closeParser));
         return regs;
     }
 
     private void registerObjectParsers(final List<AutoCloseable> regs, final PCEPExtensionProviderContext context) {
         final TlvRegistry tlvReg = context.getTlvHandlerRegistry();
         final PCEPOpenObjectParser openParser = new PCEPOpenObjectParser(tlvReg);
-        context.registerObjectParser(PCEPOpenObjectParser.CLASS, PCEPOpenObjectParser.TYPE, openParser);
-        context.registerObjectSerializer(Open.class, openParser);
+        regs.add(context.registerObjectParser(PCEPOpenObjectParser.CLASS, PCEPOpenObjectParser.TYPE, openParser));
+        regs.add(context.registerObjectSerializer(Open.class, openParser));
 
         final PCEPRequestParameterObjectParser rpParser = new PCEPRequestParameterObjectParser(tlvReg);
-        context.registerObjectParser(PCEPRequestParameterObjectParser.CLASS, PCEPRequestParameterObjectParser.TYPE, rpParser);
-        context.registerObjectSerializer(Rp.class, rpParser);
+        regs.add(context.registerObjectParser(PCEPRequestParameterObjectParser.CLASS, PCEPRequestParameterObjectParser.TYPE, rpParser));
+        regs.add(context.registerObjectSerializer(Rp.class, rpParser));
 
         final PCEPNoPathObjectParser noPathParser = new PCEPNoPathObjectParser(tlvReg);
-        context.registerObjectParser(PCEPNoPathObjectParser.CLASS, PCEPNoPathObjectParser.TYPE, noPathParser);
-        context.registerObjectSerializer(NoPath.class, noPathParser);
+        regs.add(context.registerObjectParser(PCEPNoPathObjectParser.CLASS, PCEPNoPathObjectParser.TYPE, noPathParser));
+        regs.add(context.registerObjectSerializer(NoPath.class, noPathParser));
 
         final PCEPEndPointsIpv4ObjectParser endpoints4Parser = new PCEPEndPointsIpv4ObjectParser(tlvReg);
-        context.registerObjectParser(PCEPEndPointsIpv4ObjectParser.CLASS, PCEPEndPointsIpv4ObjectParser.TYPE, endpoints4Parser);
-        context.registerObjectParser(PCEPEndPointsIpv6ObjectParser.CLASS, PCEPEndPointsIpv6ObjectParser.TYPE,
-            new PCEPEndPointsIpv4ObjectParser(tlvReg));
-        context.registerObjectSerializer(EndpointsObj.class, endpoints4Parser);
+        regs.add(context.registerObjectParser(PCEPEndPointsIpv4ObjectParser.CLASS, PCEPEndPointsIpv4ObjectParser.TYPE, endpoints4Parser));
+        regs.add(context.registerObjectParser(PCEPEndPointsIpv6ObjectParser.CLASS, PCEPEndPointsIpv6ObjectParser.TYPE,
+            new PCEPEndPointsIpv4ObjectParser(tlvReg)));
+        regs.add(context.registerObjectSerializer(EndpointsObj.class, endpoints4Parser));
 
         final PCEPBandwidthObjectParser bwParser = new PCEPBandwidthObjectParser(tlvReg);
-        context.registerObjectParser(PCEPBandwidthObjectParser.CLASS, PCEPBandwidthObjectParser.TYPE, bwParser);
-        context.registerObjectParser(PCEPExistingBandwidthObjectParser.CLASS, PCEPExistingBandwidthObjectParser.TYPE,
-            new PCEPExistingBandwidthObjectParser(tlvReg));
-        context.registerObjectSerializer(Bandwidth.class, bwParser);
+        regs.add(context.registerObjectParser(PCEPBandwidthObjectParser.CLASS, PCEPBandwidthObjectParser.TYPE, bwParser));
+        regs.add(context.registerObjectParser(PCEPExistingBandwidthObjectParser.CLASS, PCEPExistingBandwidthObjectParser.TYPE,
+            new PCEPExistingBandwidthObjectParser(tlvReg)));
+        regs.add(context.registerObjectSerializer(Bandwidth.class, bwParser));
 
         final PCEPMetricObjectParser metricParser = new PCEPMetricObjectParser(tlvReg);
-        context.registerObjectParser(PCEPMetricObjectParser.CLASS, PCEPMetricObjectParser.TYPE, metricParser);
-        context.registerObjectSerializer(Metric.class, metricParser);
+        regs.add(context.registerObjectParser(PCEPMetricObjectParser.CLASS, PCEPMetricObjectParser.TYPE, metricParser));
+        regs.add(context.registerObjectSerializer(Metric.class, metricParser));
 
         final EROSubobjectRegistry eroSubReg = context.getEROSubobjectHandlerRegistry();
         final PCEPExplicitRouteObjectParser eroParser = new PCEPExplicitRouteObjectParser(eroSubReg);
-        context.registerObjectParser(PCEPExplicitRouteObjectParser.CLASS, PCEPExplicitRouteObjectParser.TYPE, eroParser);
-        context.registerObjectSerializer(Ero.class, eroParser);
+        regs.add(context.registerObjectParser(PCEPExplicitRouteObjectParser.CLASS, PCEPExplicitRouteObjectParser.TYPE, eroParser));
+        regs.add(context.registerObjectSerializer(Ero.class, eroParser));
 
         final PCEPReportedRouteObjectParser rroParser = new PCEPReportedRouteObjectParser(context.getRROSubobjectHandlerRegistry());
-        context.registerObjectParser(PCEPReportedRouteObjectParser.CLASS, PCEPReportedRouteObjectParser.TYPE, rroParser);
-        context.registerObjectSerializer(Rro.class, rroParser);
+        regs.add(context.registerObjectParser(PCEPReportedRouteObjectParser.CLASS, PCEPReportedRouteObjectParser.TYPE, rroParser));
+        regs.add(context.registerObjectSerializer(Rro.class, rroParser));
 
         final PCEPLspaObjectParser lspaParser = new PCEPLspaObjectParser(tlvReg);
-        context.registerObjectParser(PCEPLspaObjectParser.CLASS, PCEPLspaObjectParser.TYPE, lspaParser);
-        context.registerObjectSerializer(Lspa.class, lspaParser);
+        regs.add(context.registerObjectParser(PCEPLspaObjectParser.CLASS, PCEPLspaObjectParser.TYPE, lspaParser));
+        regs.add(context.registerObjectSerializer(Lspa.class, lspaParser));
 
         final PCEPIncludeRouteObjectParser iroParser = new PCEPIncludeRouteObjectParser(eroSubReg);
-        context.registerObjectParser(PCEPIncludeRouteObjectParser.CLASS, PCEPIncludeRouteObjectParser.TYPE, iroParser);
-        context.registerObjectSerializer(Iro.class, iroParser);
+        regs.add(context.registerObjectParser(PCEPIncludeRouteObjectParser.CLASS, PCEPIncludeRouteObjectParser.TYPE, iroParser));
+        regs.add(context.registerObjectSerializer(Iro.class, iroParser));
 
         final PCEPSvecObjectParser svecParser = new PCEPSvecObjectParser(tlvReg);
-        context.registerObjectParser(PCEPSvecObjectParser.CLASS, PCEPSvecObjectParser.TYPE, svecParser);
-        context.registerObjectSerializer(Svec.class, svecParser);
+        regs.add(context.registerObjectParser(PCEPSvecObjectParser.CLASS, PCEPSvecObjectParser.TYPE, svecParser));
+        regs.add(context.registerObjectSerializer(Svec.class, svecParser));
 
         final PCEPNotificationObjectParser notParser = new PCEPNotificationObjectParser(tlvReg);
-        context.registerObjectParser(PCEPNotificationObjectParser.CLASS, PCEPNotificationObjectParser.TYPE, notParser);
-        context.registerObjectSerializer(CNotification.class, notParser);
+        regs.add(context.registerObjectParser(PCEPNotificationObjectParser.CLASS, PCEPNotificationObjectParser.TYPE, notParser));
+        regs.add(context.registerObjectSerializer(CNotification.class, notParser));
 
         final PCEPErrorObjectParser errParser = new PCEPErrorObjectParser(tlvReg);
-        context.registerObjectParser(PCEPErrorObjectParser.CLASS, PCEPErrorObjectParser.TYPE, errParser);
-        context.registerObjectSerializer(ErrorObject.class, errParser);
+        regs.add(context.registerObjectParser(PCEPErrorObjectParser.CLASS, PCEPErrorObjectParser.TYPE, errParser));
+        regs.add(context.registerObjectSerializer(ErrorObject.class, errParser));
 
         final PCEPLoadBalancingObjectParser lbParser = new PCEPLoadBalancingObjectParser(tlvReg);
-        context.registerObjectParser(PCEPLoadBalancingObjectParser.CLASS, PCEPLoadBalancingObjectParser.TYPE, lbParser);
-        context.registerObjectSerializer(LoadBalancing.class, lbParser);
+        regs.add(context.registerObjectParser(PCEPLoadBalancingObjectParser.CLASS, PCEPLoadBalancingObjectParser.TYPE, lbParser));
+        regs.add(context.registerObjectSerializer(LoadBalancing.class, lbParser));
 
         final PCEPCloseObjectParser closeParser = new PCEPCloseObjectParser(tlvReg);
-        context.registerObjectParser(PCEPCloseObjectParser.CLASS, PCEPCloseObjectParser.TYPE, closeParser);
-        context.registerObjectSerializer(CClose.class, closeParser);
+        regs.add(context.registerObjectParser(PCEPCloseObjectParser.CLASS, PCEPCloseObjectParser.TYPE, closeParser));
+        regs.add(context.registerObjectSerializer(CClose.class, closeParser));
 
         final PCEPPathKeyObjectParser pathKeyParser = new PCEPPathKeyObjectParser(eroSubReg);
-        context.registerObjectParser(PCEPPathKeyObjectParser.CLASS, PCEPPathKeyObjectParser.TYPE, pathKeyParser);
-        context.registerObjectSerializer(
+        regs.add(context.registerObjectParser(PCEPPathKeyObjectParser.CLASS, PCEPPathKeyObjectParser.TYPE, pathKeyParser));
+        regs.add(context.registerObjectSerializer(
             org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.path.key.object.PathKey.class,
-            pathKeyParser);
+            pathKeyParser));
 
         final PCEPExcludeRouteObjectParser xroParser = new PCEPExcludeRouteObjectParser(context.getXROSubobjectHandlerRegistry());
-        context.registerObjectParser(PCEPExcludeRouteObjectParser.CLASS, PCEPExcludeRouteObjectParser.TYPE, xroParser);
-        context.registerObjectSerializer(Xro.class, xroParser);
+        regs.add(context.registerObjectParser(PCEPExcludeRouteObjectParser.CLASS, PCEPExcludeRouteObjectParser.TYPE, xroParser));
+        regs.add(context.registerObjectSerializer(Xro.class, xroParser));
 
         final PCEPObjectiveFunctionObjectParser objectiveParser = new PCEPObjectiveFunctionObjectParser(tlvReg);
-        context.registerObjectParser(PCEPObjectiveFunctionObjectParser.CLASS, PCEPObjectiveFunctionObjectParser.TYPE, objectiveParser);
-        context.registerObjectSerializer(Of.class, objectiveParser);
+        regs.add(context.registerObjectParser(PCEPObjectiveFunctionObjectParser.CLASS, PCEPObjectiveFunctionObjectParser.TYPE, objectiveParser));
+        regs.add(context.registerObjectSerializer(Of.class, objectiveParser));
 
         final PCEPClassTypeObjectParser ctParser = new PCEPClassTypeObjectParser(tlvReg);
-        context.registerObjectParser(PCEPClassTypeObjectParser.CLASS, PCEPClassTypeObjectParser.TYPE, ctParser);
-        context.registerObjectSerializer(ClassType.class, ctParser);
+        regs.add(context.registerObjectParser(PCEPClassTypeObjectParser.CLASS, PCEPClassTypeObjectParser.TYPE, ctParser));
+        regs.add(context.registerObjectSerializer(ClassType.class, ctParser));
 
         final PCEPGlobalConstraintsObjectParser gcParser = new PCEPGlobalConstraintsObjectParser(tlvReg);
-        context.registerObjectParser(PCEPGlobalConstraintsObjectParser.CLASS, PCEPGlobalConstraintsObjectParser.TYPE, gcParser);
-        context.registerObjectSerializer(Gc.class, gcParser);
+        regs.add(context.registerObjectParser(PCEPGlobalConstraintsObjectParser.CLASS, PCEPGlobalConstraintsObjectParser.TYPE, gcParser));
+        regs.add(context.registerObjectSerializer(Gc.class, gcParser));
     }
 
     private void registerEROParsers(final List<AutoCloseable> regs, final PCEPExtensionProviderContext context, final LabelRegistry labelReg) {