<artifactId>model-flow-base</artifactId>
<dependencies>
- <dependency>
- <groupId>${project.groupId}</groupId>
- <artifactId>model-inventory</artifactId>
- <version>${project.version}</version>
- </dependency>
<dependency>
<groupId>org.opendaylight.yangtools.model</groupId>
<artifactId>opendaylight-l2-types</artifactId>
namespace "urn:opendaylight:flow:types";
prefix flow;
- import ietf-inet-types {prefix inet;}
- import opendaylight-match-types {prefix match;}
- import ietf-yang-types {prefix yang;}
- import opendaylight-l2-types {prefix l2t;}
+ import ietf-inet-types {prefix inet; revision-date "2010-09-24";}
+ import ietf-yang-types {prefix yang; revision-date "2010-09-24";}
+ import opendaylight-l2-types {prefix l2t; revision-date "2013-08-27";}
+ import opendaylight-match-types {prefix match; revision-date 2013-10-26";}
+
revision "2013-10-26" {
description "Initial revision of flow service";
namespace "urn:opendaylight:group:types";
prefix group;
- import ietf-inet-types {prefix inet;}
- import ietf-yang-types {prefix yang;}
- import opendaylight-flow-types {prefix flow-types;}
+ import ietf-inet-types {prefix inet; revision-date "2010-09-24";}
+ import ietf-yang-types {prefix yang; revision-date "2010-09-24";}
+ import opendaylight-flow-types {prefix flow-types;revision-date 2013-10-26";}
revision "2013-10-18" {
description "Initial revision of group service";
namespace "urn:opendaylight:model:match:types";
prefix "match";
- import ietf-inet-types {prefix inet;}
- import ietf-yang-types {prefix yang;}
- import opendaylight-l2-types {prefix l2t;}
+ import ietf-inet-types {prefix inet; revision-date "2010-09-24";}
+ import ietf-yang-types {prefix yang; revision-date "2010-09-24";}
+ import opendaylight-l2-types {prefix l2t;revision-date "2013-08-27";}
revision "2013-10-26" {
description "Initial revision of macth types";
namespace "urn:opendaylight:meter:types";
prefix meter;
- import ietf-inet-types {prefix inet;}
- import ietf-yang-types {prefix yang;}
+ import ietf-inet-types {prefix inet; revision-date "2010-09-24";}
+ import ietf-yang-types {prefix yang; revision-date "2010-09-24";}
revision "2013-09-18" {
leaf flags {
type bits {
bit meter-kbps;
- bit meter_pktps;
- bit meter_burst;
- bit meter_stats;
+ bit meter-pktps;
+ bit meter-burst;
+ bit meter-stats;
}
}
}
namespace "urn:opendaylight:flow:types:port";
prefix port-types;
- import yang-ext {prefix ext;}
- import ietf-inet-types {prefix inet;}
- import ietf-yang-types {prefix yang;}
+ import ietf-inet-types {prefix inet; revision-date "2010-09-24";}
+ import ietf-yang-types {prefix yang; revision-date "2010-09-24";}
revision "2013-09-25" {
description "Initial revision of Port Inventory model";
typedef port-state {
type enumeration {
- enum LINK-DOWN;
- enum BLOCKED;
- enum LIVE;
+ enum link-down;
+ enum blocked;
+ enum live;
}
}
namespace "urn:opendaylight:table:types";
prefix table;
- import ietf-inet-types {prefix inet;}
- import ietf-yang-types {prefix yang;}
- import opendaylight-flow-types {prefix flow;}
+ import ietf-inet-types {prefix inet; revision-date "2010-09-24";}
+ import ietf-yang-types {prefix yang; revision-date "2010-09-24";}
+ import opendaylight-flow-types {prefix flow;revision-date 2013-10-26";}
revision "2013-10-26" {
namespace "urn:opendaylight:flow:config";
prefix flow-cfg;
- import yang-ext {prefix ext;}
- import opendaylight-inventory {prefix inv;}
+ import yang-ext {prefix ext; revision-date "2013-07-09";}
+ import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
import opendaylight-flow-types {prefix flow;}
revision "2013-08-19" {
namespace "urn:opendaylight:group:config";
prefix group-cfg;
- import yang-ext {prefix ext;}
- import opendaylight-inventory {prefix inv;}
+ import yang-ext {prefix ext; revision-date "2013-07-09";}
+ import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
import opendaylight-group-types {prefix group;}
revision "2013-10-24" {
namespace "urn:opendaylight:meter:config";
prefix meter-cfg;
- import yang-ext {prefix ext;}
- import opendaylight-inventory {prefix inv;}
+ import yang-ext {prefix ext; revision-date "2013-07-09";}
+ import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
import opendaylight-meter-types {prefix meter;}
revision "2013-10-24" {
namespace "urn:opendaylight:port:config";
prefix port-cfg;
- import yang-ext {prefix ext;}
- import opendaylight-inventory {prefix inv;}
+ import yang-ext {prefix ext; revision-date "2013-07-09";}
+ import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
import opendaylight-port-types {prefix port;}
revision "2013-10-24" {
namespace "urn:opendaylight:table:config";
prefix table-cfg;
- import opendaylight-inventory {prefix inv;}
+ import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
import opendaylight-table-types {prefix table;}
revision "2013-10-24" {
namespace "urn:opendaylight:flow:inventory";
prefix flownode;
- import yang-ext {prefix ext;}
- import ietf-inet-types {prefix inet;}
- import ietf-yang-types {prefix yang;}
- import opendaylight-port-types {prefix port;}
- import opendaylight-inventory {prefix inv;}
+ import yang-ext {prefix ext; revision-date "2013-07-09";}
+ import ietf-inet-types {prefix inet; revision-date "2010-09-24";}
+ import ietf-yang-types {prefix yang; revision-date "2010-09-24";}
+ import opendaylight-port-types {prefix port;revision-date "2013-09-25";}
+ import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
revision "2013-08-19" {
- description "Flow Capable Node extensions to the nventory model";
+ description "Flow Capable Node extensions to the Inventory model";
}
-
-
+
grouping feature {
leaf support-state {
type inv:support-type;
namespace "urn:opendaylight:flow:service";
prefix flow;
- import yang-ext {prefix ext;}
- import opendaylight-inventory {prefix inv;}
- import ietf-inet-types {prefix inet;}
- import opendaylight-flow-types {prefix types;}
+ import yang-ext {prefix ext; revision-date "2013-07-09";}
+ import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
+ import ietf-inet-types {prefix inet; revision-date "2010-09-24";}
+ import opendaylight-flow-types {prefix types;revision-date "2013-10-26";}
revision "2013-08-19" {
}
grouping node-flow {
- leaf node {
- ext:context-reference "inv:node-context";
- type inv:node-ref;
- }
+ uses "inv:node-context-ref";
+
leaf flow-table {
type flow-table-ref;
}
/** Base configuration structure **/
grouping flow-update {
+ uses "inv:node-context-ref";
+
container original-flow {
uses types:flow;
}
rpc update-flow {
input {
- leaf node {
- ext:context-reference "inv:node-context";
- type inv:node-ref;
- }
uses flow-update;
}
}
namespace "urn:opendaylight:flow:topology:discovery";
prefix flow-node-topo;
- import yang-ext {prefix ext;}
- import ietf-inet-types {prefix inet;}
- import ietf-yang-types {prefix yang;}
- import opendaylight-port-types {prefix port;}
- import opendaylight-inventory {prefix inv;}
- import flow-node-inventory {prefix flowinv;}
+ import yang-ext {prefix ext; revision-date "2013-07-09";}
+ import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
revision "2013-08-19" {
description "Flow Capable Node extensions to the Inventory model";
namespace "urn:opendaylight:group:service";
prefix group;
- import yang-ext {prefix ext;}
- import opendaylight-inventory {prefix inv;}
- import ietf-inet-types {prefix inet;}
- import opendaylight-group-types {prefix group-type;}
+ import yang-ext {prefix ext; revision-date "2013-07-09";}
+ import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
+ import ietf-inet-types {prefix inet;revision-date 2010-09-24;}
+ import opendaylight-group-types {prefix group-type;revision-date 2013-10-18;}
revision "2013-09-18" {
description "Initial revision of group service";
}
grouping node-group {
- leaf node {
- ext:context-reference "inv:node-context";
- type inv:node-ref;
- }
+ uses "inv:node-context-ref";
+
uses group-type:group;
}
/** Base configuration structure **/
grouping group-update {
+ uses "inv:node-context-ref";
+
container original-group {
uses group-type:group;
}
rpc remove-group {
input {
- leaf node {
- ext:context-reference "inv:node-context";
- type inv:node-ref;
- }
uses group-update;
}
}
rpc update-group {
input {
- leaf node {
- ext:context-reference "inv:node-context";
- type inv:node-ref;
- }
uses group-update;
}
}
namespace "urn:opendaylight:meter:service";
prefix meter;
- import yang-ext {prefix ext;}
- import opendaylight-inventory {prefix inv;}
- import ietf-inet-types {prefix inet;}
- import opendaylight-meter-types {prefix meter-type;}
+ import yang-ext {prefix ext; revision-date "2013-07-09";}
+ import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
+ import opendaylight-meter-types {prefix meter-type;revision-date "2013-09-18";}
revision "2013-09-18" {
description "Initial revision of meter service";
}
grouping node-meter {
- leaf node {
- ext:context-reference "inv:node-context";
- type inv:node-ref;
- }
+ uses "inv:node-context-ref";
uses meter-type:meter;
}
/** Base configuration structure **/
grouping meter-update {
+ uses "inv:node-context-ref";
+
container original-meter {
uses meter-type:meter;
}
rpc update-meter {
input {
- leaf node {
- ext:context-reference "inv:node-context";
- type inv:node-ref;
- }
uses meter-update;
}
}
namespace "urn:opendaylight:packet:service";
prefix flow;
- import yang-ext {prefix ext;}
- import opendaylight-inventory {prefix inv;}
- import ietf-inet-types {prefix inet;}
- import ietf-yang-types {prefix yang;}
- import opendaylight-l2-types {prefix types;}
+ import yang-ext {prefix ext; revision-date "2013-07-09";}
+ import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
+ import ietf-yang-types {prefix yang;revision-date "2010-09-24";}
+ import opendaylight-l2-types {prefix types;revision-date "2013-08-27";}
revision "2013-07-09" {
description "";
rpc transmit-packet {
input {
+ uses inv:node-context-ref;
+
leaf cookie {
type cookie;
}
- leaf node {
- ext:context-reference "inv:node-context";
- type inv:node-ref;
- }
+
leaf egress {
type inv:node-connector-ref;
}
namespace "urn:opendaylight:table:service";
prefix table;
- import yang-ext {prefix ext;}
- import opendaylight-inventory {prefix inv;}
- import opendaylight-table-types {prefix table-type;}
+ import yang-ext {prefix ext; revision-date "2013-07-09";}
+ import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
+ import opendaylight-table-types {prefix table-type;revision-date "2013-10-26";}
revision "2013-10-26" {
description "Initial revision of table service";
namespace "urn:opendaylight:flow:statistics";
prefix flowstat;
- import yang-ext {prefix ext;}
- import opendaylight-inventory {prefix inv;}
- import opendaylight-flow-types {prefix flow-types;}
+ import yang-ext {prefix ext; revision-date "2013-07-09";}
+ import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
+ import opendaylight-flow-types {prefix flow-types;revision-date "2013-10-26";}
import sal-flow {prefix flow;}
- import opendaylight-statistics-types {prefix stat-types;}
-
+ import opendaylight-statistics-types {prefix stat-types;revision-date "2013-09-25";}
revision "2013-08-19" {
description "Initial revision of flow service";
rpc get-node-connector-statistics {
input {
- leaf node {
- ext:context-reference "inv:node-context";
- type inv:node-ref;
- }
+ uses inv:node-context-ref;
leaf node-connector {
type inv:node-connector-ref;
}
rpc get-flow-statistics {
input {
- leaf node {
- ext:context-reference "inv:node-context";
- type inv:node-ref;
- }
+ uses inv:node-context-ref;
uses flow-types:flow;
}
output {
rpc get-all-flow-statistics {
input {
- leaf node {
- ext:context-reference "inv:node-context";
- type inv:node-ref;
- }
+ uses inv:node-context-ref;
}
output {
list flow-statistics {
rpc get-all-node-connector-statistics {
input {
- leaf node {
- ext:context-reference "inv:node-context";
- type inv:node-ref;
- }
+ uses inv:node-context-ref;
}
output {
list node-connector-statistics {
rpc get-flow-table-statistics {
input {
- leaf node {
- ext:context-reference "inv:node-context";
- type inv:node-ref;
- }
+ uses inv:node-context-ref;
}
output {
uses flow-types:flow-table-statistics;
prefix stat-types;
import ietf-yang-types {prefix yang;}
- import opendaylight-inventory {prefix inv;}
- //import opendaylight-port-inventory {prefix port-inv;}
+ import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
revision "2013-09-25" {
description "Initial revision of flow service";
namespace "urn:opendaylight:inventory";
prefix inv;
- import yang-ext {prefix ext;}
- import ietf-inet-types {prefix inet;}
- import ietf-yang-types {prefix yang;}
+ import yang-ext {prefix ext; revision-date "2013-07-09";}
+ import ietf-inet-types {prefix inet; revision-date "2010-09-24";}
+ import ietf-yang-types {prefix yang; revision-date "2010-09-24";}
revision "2013-08-19" {
}
identity node-connector-context {
+ description "Identity used to mark node connector context";
+ }
+
+ identity node-type {
+ description "Base identity for node types";
+ }
+ identity node-connector-type {
+ description "Base identity for node connectors type";
}
grouping node {
}
}
+ grouping node-context-ref {
+ description
+ "Helper grouping which contains a reference to node context.";
+ leaf node {
+ ext:context-reference "node-context";
+ type node-ref;
+ }
+ }
+
/** Base structure **/
container nodes {
list node {
public static def flowStatisticsInput(Node sourceNode, Flow sourceFlow) {
val source = flowAdded(sourceFlow);
- val it = new GetFlowStatisticsInputBuilder(source);
+ val it = new GetFlowStatisticsInputBuilder(source as org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.Flow);
node = sourceNode.toNodeRef();
return it.build();
}
public static def removeFlowInput(Node sourceNode, Flow sourceFlow) {
val source = flowAdded(sourceFlow);
- val it = new RemoveFlowInputBuilder(source);
+ val it = new RemoveFlowInputBuilder(source as org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.Flow);
return it.build();
}
public static def addFlowInput(Node sourceNode, Flow sourceFlow) {
val source = flowAdded(sourceFlow);
- val it = new AddFlowInputBuilder(source);
+ val it = new AddFlowInputBuilder(source as org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.Flow);
return it.build();
}
val it = new UpdateFlowInputBuilder();
val sourceOld = flowAdded(newFlow);
- val original = new OriginalFlowBuilder(sourceOld);
+ val original = new OriginalFlowBuilder(sourceOld as org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.Flow);
val sourceNew = flowAdded(newFlow);
- val updated = new UpdatedFlowBuilder(sourceNew);
+ val updated = new UpdatedFlowBuilder(sourceNew as org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.Flow);
originalFlow = original.build()
updatedFlow = updated.build();
node = sourceNode.toNodeRef()