A race condition occurs between ARPHandler and HostTracker if the ARP
[controller.git] / opendaylight / sal / yang-prototype / yang / yang-model-api / src / main / java / org / opendaylight / controller / yang / model / api / UsesNode.java
1 /*\r
2  * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.\r
3  *\r
4  * This program and the accompanying materials are made available under the\r
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
6  * and is available at http://www.eclipse.org/legal/epl-v10.html\r
7  */\r
8 package org.opendaylight.controller.yang.model.api;\r
9 \r
10 import java.util.Map;\r
11 import java.util.Set;\r
12 \r
13 public interface UsesNode {\r
14 \r
15     /**\r
16      * @return path to 'grouping' on which this 'uses' statement points\r
17      */\r
18     SchemaPath getGroupingPath();\r
19 \r
20     /**\r
21      * @return Set of augment statements defined under this uses node\r
22      */\r
23     Set<AugmentationSchema> getAugmentations();\r
24 \r
25     /**\r
26      * Returns <code>true</code> if the data node was added by augmentation,\r
27      * otherwise returns <code>false</code>\r
28      *\r
29      * @return <code>true</code> if the data node was added by augmentation,\r
30      *         otherwise returns <code>false</code>\r
31      */\r
32     boolean isAugmenting();\r
33 \r
34     /**\r
35      * Returns <code>true</code> if the data node was added by uses statement,\r
36      * otherwise returns <code>false</code>\r
37      *\r
38      * @return <code>true</code> if the data node was added by uses statement,\r
39      *         otherwise returns <code>false</code>\r
40      */\r
41     boolean isAddedByUses();\r
42 \r
43     /**\r
44      * Some of the properties of each node in the grouping can be refined with\r
45      * the "refine" statement.\r
46      *\r
47      * @return Map, where key is schema path of refined node and value is\r
48      *         refined node\r
49      */\r
50     Map<SchemaPath, SchemaNode> getRefines();\r
51 }\r