blob: 5cc5d017859e235e27a548fcaad812b43ad3f717 [file] [log] [blame]
andrea1ce2bc82015-11-18 16:58:10 -08001{
2 "type": "object",
3 "title": "flow",
4 "required": [
5 "priority",
6 "timeout",
7 "isPermanent",
8 "deviceId"
9 ],
10 "properties": {
11 "priority": {
12 "type": "integer",
13 "format": "int64",
14 "example": 400000
15 },
16 "timeout": {
17 "type": "integer",
18 "format": "int64",
19 "example": 0
20 },
21 "isPermanent": {
22 "type": "boolean",
23 "example": true
24 },
25 "deviceId": {
26 "type": "string",
andread35f89c2015-11-23 10:02:07 -080027 "example": "of:0000000000000001"
andrea1ce2bc82015-11-18 16:58:10 -080028 },
29 "treatment": {
30 "type": "object",
31 "title": "treatment",
32 "required": [
33 "instructions",
34 "deferred"
35 ],
36 "properties": {
37 "instructions": {
38 "type": "array",
39 "title": "treatment",
40 "required": [
41 "properties",
42 "port"
43 ],
44 "items": {
45 "type": "object",
46 "title": "instructions",
47 "required": [
48 "type",
49 "port"
50 ],
51 "properties": {
52 "type": {
53 "type": "string",
54 "example": "OUTPUT"
55 },
56 "port": {
Andrea Campanella5df35952015-12-08 15:46:49 -080057 "type": "string",
58 "example": "CONTROLLER"
andrea1ce2bc82015-11-18 16:58:10 -080059 }
60 }
61 }
62 }
63 }
64 },
65 "selector": {
66 "type": "object",
67 "title": "selector",
68 "required": [
69 "criteria"
70 ],
71 "properties": {
72 "criteria": {
73 "type": "array",
74 "xml": {
75 "name": "criteria",
76 "wrapped": true
77 },
78 "items": {
79 "type": "object",
80 "title": "criteria",
andrea1ce2bc82015-11-18 16:58:10 -080081 "properties": {
82 "type": {
83 "type": "string",
Andrea Campanella82baf6b2015-12-14 10:23:37 -080084 "description":"Ethernet field name",
andrea1ce2bc82015-11-18 16:58:10 -080085 "example": "ETH_TYPE"
86 },
87 "ethType": {
Andrea Campanella82baf6b2015-12-14 10:23:37 -080088 "type": "int64",
89 "format": "int64",
90 "example": "0x88cc",
91 "description":"Ethernet frame type"
andrea1ce2bc82015-11-18 16:58:10 -080092 }
93 }
94 }
95 }
96 }
97 }
98 }
99}