2 * Copyright (c) 2015 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
9 package org.opendaylight.protocol.bmp.spi.registry;
11 import org.opendaylight.protocol.bmp.spi.parser.BmpMessageParser;
12 import org.opendaylight.protocol.bmp.spi.parser.BmpMessageSerializer;
13 import org.opendaylight.protocol.bmp.spi.parser.BmpTlvParser;
14 import org.opendaylight.protocol.bmp.spi.parser.BmpTlvRegistry;
15 import org.opendaylight.protocol.bmp.spi.parser.BmpTlvSerializer;
16 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bmp.message.rev171207.Tlv;
17 import org.opendaylight.yangtools.yang.binding.Notification;
19 public class SimpleBmpExtensionProviderContext implements BmpExtensionConsumerContext, BmpExtensionProviderContext {
21 private final BmpMessageRegistry bmpMessageRegistry = new SimpleBmpMessageRegistry();
22 private final BmpTlvRegistry bmpStatisticsTlvRegistry = new SimpleBmpTlvRegistry();
23 private final BmpTlvRegistry bmpInitiationTlvRegistry = new SimpleBmpTlvRegistry();
24 private final BmpTlvRegistry bmpTerminationTlvRegistry = new SimpleBmpTlvRegistry();
25 private final BmpTlvRegistry bmpRouteMirroringTlvRegistry = new SimpleBmpTlvRegistry();
26 private final BmpTlvRegistry bmpPeerUpTlvRegistry = new SimpleBmpTlvRegistry();
30 public AutoCloseable registerBmpMessageParser(final int messageType, final BmpMessageParser parser) {
31 return this.bmpMessageRegistry.registerBmpMessageParser(messageType, parser);
35 public AutoCloseable registerBmpMessageSerializer(final Class<? extends Notification> messageClass,
36 final BmpMessageSerializer serializer) {
37 return this.bmpMessageRegistry.registerBmpMessageSerializer(messageClass, serializer);
41 public BmpMessageRegistry getBmpMessageRegistry() {
42 return this.bmpMessageRegistry;
46 public AutoCloseable registerBmpStatisticsTlvParser(final int tlvType, final BmpTlvParser parser) {
47 return this.bmpStatisticsTlvRegistry.registerBmpTlvParser(tlvType, parser);
51 public AutoCloseable registerBmpStatisticsTlvSerializer(final Class<? extends Tlv> tlvClass,
52 final BmpTlvSerializer serializer) {
53 return this.bmpStatisticsTlvRegistry.registerBmpTlvSerializer(tlvClass, serializer);
57 public AutoCloseable registerBmpPeerUpTlvParser(final int tlvType, final BmpTlvParser parser) {
58 return this.bmpPeerUpTlvRegistry.registerBmpTlvParser(tlvType, parser);
62 public AutoCloseable registerBmpPeerUpTlvSerializer(final Class<? extends Tlv> tlvClass,
63 final BmpTlvSerializer serializer) {
64 return this.bmpPeerUpTlvRegistry.registerBmpTlvSerializer(tlvClass, serializer);
68 public AutoCloseable registerBmpInitiationTlvParser(final int tlvType, final BmpTlvParser parser) {
69 return this.bmpInitiationTlvRegistry.registerBmpTlvParser(tlvType, parser);
73 public AutoCloseable registerBmpInitiationTlvSerializer(final Class<? extends Tlv> tlvClass,
74 final BmpTlvSerializer serializer) {
75 return this.bmpInitiationTlvRegistry.registerBmpTlvSerializer(tlvClass, serializer);
79 public AutoCloseable registerBmpTerminationTlvParser(final int tlvType, final BmpTlvParser parser) {
80 return this.bmpTerminationTlvRegistry.registerBmpTlvParser(tlvType, parser);
84 public AutoCloseable registerBmpTerminationTlvSerializer(final Class<? extends Tlv> tlvClass,
85 final BmpTlvSerializer serializer) {
86 return this.bmpTerminationTlvRegistry.registerBmpTlvSerializer(tlvClass, serializer);
90 public AutoCloseable registerBmpRouteMirroringTlvParser(final int tlvType, final BmpTlvParser parser) {
91 return this.bmpRouteMirroringTlvRegistry.registerBmpTlvParser(tlvType, parser);
95 public AutoCloseable registerBmpRouteMirroringTlvSerializer(final Class<? extends Tlv> tlvClass,
96 final BmpTlvSerializer serializer) {
97 return this.bmpRouteMirroringTlvRegistry.registerBmpTlvSerializer(tlvClass, serializer);
101 public BmpTlvRegistry getBmpStatisticsTlvRegistry() {
102 return this.bmpStatisticsTlvRegistry;
106 public BmpTlvRegistry getBmpInitiationTlvRegistry() {
107 return this.bmpInitiationTlvRegistry;
111 public BmpTlvRegistry getBmpPeerUpTlvRegistry() {
112 return this.bmpPeerUpTlvRegistry;
116 public BmpTlvRegistry getBmpTerminationTlvRegistry() {
117 return this.bmpTerminationTlvRegistry;
121 public BmpTlvRegistry getBmpRouteMirroringTlvRegistry() {
122 return this.bmpRouteMirroringTlvRegistry;