OpenDaylight Controller functional modules.
[controller.git] / opendaylight / protocol_plugins / openflow / src / main / java / org / opendaylight / controller / protocol_plugin / openflow / IInventoryShimInternalListener.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.protocol_plugin.openflow;
11
12 import java.util.Set;
13
14 import org.opendaylight.controller.sal.core.Node;
15 import org.opendaylight.controller.sal.core.NodeConnector;
16 import org.opendaylight.controller.sal.core.Property;
17 import org.opendaylight.controller.sal.core.UpdateType;
18
19 /**
20  * Interface class that provides inventory updates to inventory listeners
21  * within the protocol plugin
22  *
23  *
24  */
25 public interface IInventoryShimInternalListener {
26     /**
27      * Updates node and its properties
28      *
29      * @param node                      {@link org.opendaylight.controller.sal.core.Node} being updated
30      * @param type              {@link org.opendaylight.controller.sal.core.UpdateType}
31      * @param props             set of {@link org.opendaylight.controller.sal.core.Property} such as
32      *                                          {@link org.opendaylight.controller.sal.core.Name} and/or
33      *                                          {@link org.opendaylight.controller.sal.core.Tier} etc.
34      */
35     public void updateNode(Node node, UpdateType type, Set<Property> props);
36
37     /**
38      * Updates node connector and its properties
39      *
40      * @param nodeConnector     {@link org.opendaylight.controller.sal.core.NodeConnector} being updated
41      * @param type              {@link org.opendaylight.controller.sal.core.UpdateType}
42      * @param props             set of {@link org.opendaylight.controller.sal.core.Property} such as
43      *                                          {@link org.opendaylight.controller.sal.core.Name} and/or
44      *                                          {@link org.opendaylight.controller.sal.core.State} etc.
45      */
46     public void updateNodeConnector(NodeConnector nodeConnector,
47             UpdateType type, Set<Property> props);
48
49 }