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.rev150512.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, final BmpMessageSerializer serializer) {
36 return this.bmpMessageRegistry.registerBmpMessageSerializer(messageClass, serializer);
40 public BmpMessageRegistry getBmpMessageRegistry() {
41 return this.bmpMessageRegistry;
45 public AutoCloseable registerBmpStatisticsTlvParser(final int tlvType, final BmpTlvParser parser) {
46 return this.bmpStatisticsTlvRegistry.registerBmpTlvParser(tlvType, parser);
50 public AutoCloseable registerBmpStatisticsTlvSerializer(final Class<? extends Tlv> tlvClass, final BmpTlvSerializer serializer) {
51 return this.bmpStatisticsTlvRegistry.registerBmpTlvSerializer(tlvClass, serializer);
55 public AutoCloseable registerBmpPeerUpTlvParser(final int tlvType, final BmpTlvParser parser) {
56 return this.bmpPeerUpTlvRegistry.registerBmpTlvParser(tlvType, parser);
60 public AutoCloseable registerBmpPeerUpTlvSerializer(final Class<? extends Tlv> tlvClass, final BmpTlvSerializer serializer) {
61 return this.bmpPeerUpTlvRegistry.registerBmpTlvSerializer(tlvClass, serializer);
65 public AutoCloseable registerBmpInitiationTlvParser(final int tlvType, final BmpTlvParser parser) {
66 return this.bmpInitiationTlvRegistry.registerBmpTlvParser(tlvType, parser);
70 public AutoCloseable registerBmpInitiationTlvSerializer(final Class<? extends Tlv> tlvClass, final BmpTlvSerializer serializer) {
71 return this.bmpInitiationTlvRegistry.registerBmpTlvSerializer(tlvClass, serializer);
75 public AutoCloseable registerBmpTerminationTlvParser(final int tlvType, final BmpTlvParser parser) {
76 return this.bmpTerminationTlvRegistry.registerBmpTlvParser(tlvType, parser);
80 public AutoCloseable registerBmpTerminationTlvSerializer(final Class<? extends Tlv> tlvClass, final BmpTlvSerializer serializer) {
81 return this.bmpTerminationTlvRegistry.registerBmpTlvSerializer(tlvClass, serializer);
85 public AutoCloseable registerBmpRouteMirroringTlvParser(final int tlvType, final BmpTlvParser parser) {
86 return this.bmpRouteMirroringTlvRegistry.registerBmpTlvParser(tlvType, parser);
90 public AutoCloseable registerBmpRouteMirroringTlvSerializer(final Class<? extends Tlv> tlvClass, final BmpTlvSerializer serializer) {
91 return this.bmpRouteMirroringTlvRegistry.registerBmpTlvSerializer(tlvClass, serializer);
95 public BmpTlvRegistry getBmpStatisticsTlvRegistry() {
96 return this.bmpStatisticsTlvRegistry;
100 public BmpTlvRegistry getBmpInitiationTlvRegistry() {
101 return this.bmpInitiationTlvRegistry;
105 public BmpTlvRegistry getBmpPeerUpTlvRegistry() {
106 return this.bmpPeerUpTlvRegistry;
110 public BmpTlvRegistry getBmpTerminationTlvRegistry() {
111 return this.bmpTerminationTlvRegistry;
115 public BmpTlvRegistry getBmpRouteMirroringTlvRegistry() {
116 return this.bmpRouteMirroringTlvRegistry;