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 / Module.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.net.URI;\r
11 import java.util.Date;\r
12 import java.util.List;\r
13 import java.util.Set;\r
14 \r
15 public interface Module extends DataNodeContainer {\r
16 \r
17     URI getNamespace();\r
18 \r
19     String getName();\r
20 \r
21     Date getRevision();\r
22 \r
23     String getPrefix();\r
24 \r
25     String getYangVersion();\r
26 \r
27     String getDescription();\r
28 \r
29     String getReference();\r
30 \r
31     String getOrganization();\r
32 \r
33     String getContact();\r
34 \r
35     Set<ModuleImport> getImports();\r
36 \r
37     /**\r
38      * Returns feature statements defined in module.\r
39      *\r
40      * @return feature statements in lexicographical order\r
41      */\r
42     Set<FeatureDefinition> getFeatures();\r
43 \r
44     /**\r
45      * Returns notification statements defined in module.\r
46      *\r
47      * @return notification statements in lexicographical order\r
48      */\r
49     Set<NotificationDefinition> getNotifications();\r
50 \r
51     /**\r
52      * Returns augment statements defined in module.\r
53      *\r
54      * @return augment statements\r
55      */\r
56     Set<AugmentationSchema> getAugmentations();\r
57 \r
58     /**\r
59      * Returns rpc statements defined in module.\r
60      *\r
61      * @return rpc statements in lexicographical order\r
62      */\r
63     Set<RpcDefinition> getRpcs();\r
64 \r
65     /**\r
66      * Returns deviation statements defined in module.\r
67      *\r
68      * @return deviation statements\r
69      */\r
70     Set<Deviation> getDeviations();\r
71 \r
72     /**\r
73      * Returns identity statements defined in module.\r
74      *\r
75      * @return identity statements in lexicographical order\r
76      */\r
77     Set<IdentitySchemaNode> getIdentities();\r
78 \r
79     /**\r
80      * Returns extension statements defined in module.\r
81      *\r
82      * @return extension statements in lexicographical order\r
83      */\r
84     List<ExtensionDefinition> getExtensionSchemaNodes();\r
85 \r
86     /**\r
87      * Returns unknown nodes defined in module.\r
88      *\r
89      * @return unknown nodes in lexicographical order\r
90      */\r
91     List<UnknownSchemaNode> getUnknownSchemaNodes();\r
92 \r
93 }\r