Register PCEP session to stats handler only after it is fully initialized
[bgpcep.git] / pcep / spi / src / main / java / org / opendaylight / protocol / pcep / spi / pojo / SimpleVendorInformationTlvRegistry.java
index 0edf981cf0d06c3f31d0d49d7f3e9c30988c7979..b5da4d22826e9d0c69089ce999f77f66ecf047d2 100644 (file)
@@ -5,53 +5,52 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.protocol.pcep.spi.pojo;
 
-import com.google.common.base.Optional;
-import com.google.common.primitives.Ints;
-
 import io.netty.buffer.ByteBuf;
-
+import java.util.Optional;
 import org.opendaylight.protocol.concepts.HandlerRegistry;
 import org.opendaylight.protocol.pcep.spi.PCEPDeserializerException;
 import org.opendaylight.protocol.pcep.spi.TlvParser;
 import org.opendaylight.protocol.pcep.spi.TlvSerializer;
 import org.opendaylight.protocol.pcep.spi.VendorInformationTlvRegistry;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.iana.rev130816.EnterpriseNumber;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.vendor.information.EnterpriseSpecificInformation;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev131005.vendor.information.tlvs.VendorInformationTlv;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev181109.vendor.information.EnterpriseSpecificInformation;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.pcep.types.rev181109.vendor.information.tlvs.VendorInformationTlv;
+import org.opendaylight.yangtools.concepts.Registration;
 import org.opendaylight.yangtools.yang.binding.DataContainer;
 
 public class SimpleVendorInformationTlvRegistry implements VendorInformationTlvRegistry {
 
     private final HandlerRegistry<DataContainer, TlvParser, TlvSerializer> handlers = new HandlerRegistry<>();
 
-    public AutoCloseable registerVendorInformationTlvParser(final EnterpriseNumber enterpriseNumber, final TlvParser parser) {
-        return this.handlers.registerParser(Ints.checkedCast(enterpriseNumber.getValue()), parser);
+    public Registration registerVendorInformationTlvParser(final EnterpriseNumber enterpriseNumber,
+            final TlvParser parser) {
+        return this.handlers.registerParser(enterpriseNumber.getValue().intValue(), parser);
     }
 
-    public AutoCloseable registerVendorInformationTlvSerializer(final Class<? extends EnterpriseSpecificInformation> esInformationClass, final TlvSerializer serializer) {
+    public Registration registerVendorInformationTlvSerializer(
+            final Class<? extends EnterpriseSpecificInformation> esInformationClass, final TlvSerializer serializer) {
         return this.handlers.registerSerializer(esInformationClass, serializer);
     }
 
     @Override
-    public Optional<VendorInformationTlv> parseVendorInformationTlv(final EnterpriseNumber enterpriseNumber, final ByteBuf buffer) throws PCEPDeserializerException {
-        final TlvParser parser = this.handlers.getParser(Ints.checkedCast(enterpriseNumber.getValue()));
+    public Optional<VendorInformationTlv> parseVendorInformationTlv(final EnterpriseNumber enterpriseNumber,
+            final ByteBuf buffer) throws PCEPDeserializerException {
+        final TlvParser parser = this.handlers.getParser(enterpriseNumber.getValue().intValue());
         if (parser == null) {
-            return Optional.absent();
+            return Optional.empty();
         }
         return Optional.of((VendorInformationTlv) parser.parseTlv(buffer));
     }
 
     @Override
     public void serializeVendorInformationTlv(final VendorInformationTlv viTlv, final ByteBuf buffer) {
-        final TlvSerializer serializer = this.handlers.getSerializer(viTlv.getEnterpriseSpecificInformation().getImplementedInterface());
+        final TlvSerializer serializer = this.handlers.getSerializer(
+            viTlv.getEnterpriseSpecificInformation().implementedInterface());
         if (serializer == null) {
             return;
         }
         serializer.serializeTlv(viTlv, buffer);
     }
-
-
 }