UDP support implementation
[openflowjava.git] / openflow-protocol-impl / src / main / yang / openflow-switch-connection-provider-impl.yang
1 module openflow-switch-connection-provider-impl {
2         yang-version 1;
3     namespace "urn:opendaylight:params:xml:ns:yang:openflow:switch:connection:provider:impl";
4     prefix "openflow-switch-connection-provider-impl";
5
6     import config {prefix config; revision-date 2013-04-05; }
7     import openflow-switch-connection-provider {prefix openflow-switch-connection-provider; revision-date 2014-03-28; }
8     import ietf-inet-types {prefix ietf-inet; revision-date 2010-09-24; }
9     import openflow-configuration {prefix of-config; revision-date 2014-06-30; }
10
11     description
12         "openflow-switch-connection-provider";
13
14     revision "2014-03-28" {
15         description
16             "Initial revision";
17     }
18
19     identity openflow-switch-connection-provider-impl {
20         base "config:module-type";
21         config:provided-service openflow-switch-connection-provider:openflow-switch-connection-provider;
22         config:java-name-prefix SwitchConnectionProvider;
23     }
24
25
26     augment "/config:modules/config:module/config:configuration" {
27         case openflow-switch-connection-provider-impl {
28             when "/config:modules/config:module/config:type = 'openflow-switch-connection-provider-impl'";
29
30             leaf port {
31                 description "local listening port";
32                 type uint16;
33                 mandatory true;
34             }
35             leaf address {
36                 description "address of local listening interface";
37                 type ietf-inet:ip-address;
38             }
39             leaf transport-protocol {
40                 description "Transport protocol used for communication.";
41                 type of-config:transport-protocol;
42                 mandatory true;
43             }
44             leaf switch-idle-timeout {
45                 description "idle timeout in [ms]";
46                 type uint32;
47                 mandatory true;
48             }
49             container tls {
50                 leaf keystore {
51                     description "keystore location";
52                     type string;
53                 }
54                 leaf keystore-type {
55                     description "keystore type (JKS or PKCS12)";
56                     type of-config:keystore-type;
57                 }
58                 leaf keystore-path-type {
59                     description "keystore path type (CLASSPATH or PATH)";
60                     type of-config:path-type;
61                 }
62                 leaf keystore-password {
63                     description "password protecting keystore";
64                     type string;
65                 }
66                 leaf certificate-password {
67                     description "password protecting certificate";
68                     type string;
69                 }
70                 leaf truststore {
71                     description "truststore location";
72                     type string;
73                 }
74                 leaf truststore-type {
75                     description "truststore type (JKS or PKCS12)";
76                     type of-config:keystore-type;
77                 }
78                 leaf truststore-path-type {
79                     description "truststore path type (CLASSPATH or PATH)";
80                     type of-config:path-type;
81                 }
82                 leaf truststore-password {
83                     description "password protecting truststore";
84                     type string;
85                 }
86             }
87             container threads {
88                 leaf boss-threads {
89                     type uint16;
90                 }
91                 leaf worker-threads {
92                     type uint16;
93                 }
94             }
95         }
96     }
97 }