BUG-2218: Keep existing link augmentations during discovery process
[controller.git] / opendaylight / adsal / sal / api / src / main / java / org / opendaylight / controller / sal / reader / IPluginOutReadService.java
1
2 /*
3  * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
4  *
5  * This program and the accompanying materials are made available under the
6  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
7  * and is available at http://www.eclipse.org/legal/epl-v10.html
8  */
9
10 package org.opendaylight.controller.sal.reader;
11
12 import java.util.List;
13
14 import org.opendaylight.controller.sal.core.Node;
15
16 /**
17  * The interface defines hardware statistics updates service to be offered by
18  * protocol plugins
19  */
20 public interface IPluginOutReadService {
21
22     /**
23      * Notifies the hardware view of all the flow installed on the specified
24      * network node
25      *
26      * @param node
27      *            the network node
28      *            {@link org.opendaylight.controller.sal.core.Node}
29      * @param flowStatsList
30      *            the hardware view of all the flow
31      *            {@link org.opendaylight.controller.sal.reader.FlowOnNode}
32      *            installed on the specified network node
33      */
34     public void nodeFlowStatisticsUpdated(Node node, List<FlowOnNode> flowStatsList);
35
36     /**
37      * Notifies the hardware view of the specified network node
38      *
39      * @param node
40      *            the network node
41      *            {@link org.opendaylight.controller.sal.core.Node}
42      * @param ncStatsList
43      *            the statistics
44      *            {@link org.opendaylight.controller.sal.reader.NodeConnectorStatistics}
45      *            for all node connectors in a given node
46      */
47     public void nodeConnectorStatisticsUpdated(Node node, List<NodeConnectorStatistics> ncStatsList);
48
49     /**
50      * Notifies all the table statistics for a node
51      *
52      * @param node
53      *            the network node
54      *            {@link org.opendaylight.controller.sal.core.Node}
55      * @param tableStatsList
56      *            the statistics
57      *            {@link org.opendaylight.controller.sal.reader.NodeTableStatistics}
58      *            for all the tables in a given node
59      */
60     public void nodeTableStatisticsUpdated(Node node, List<NodeTableStatistics> tableStatsList);
61
62     /**
63      * Notifies the hardware view of node description changes
64      *
65      * @param node
66      *            the network node
67      *            {@link org.opendaylight.controller.sal.core.Node}
68      * @param nodeDescription
69      *            the node description
70      *            {@link org.opendaylight.controller.sal.reader.NodeDescription}
71      */
72     public void descriptionStatisticsUpdated(Node node, NodeDescription nodeDescription );
73
74 }