module openflow-switch-connection-provider-impl { yang-version 1; namespace "urn:opendaylight:params:xml:ns:yang:openflow:switch:connection:provider:impl"; prefix "openflow-switch-connection-provider-impl"; import config {prefix config; revision-date 2013-04-05; } import openflow-switch-connection-provider {prefix openflow-switch-connection-provider; revision-date 2014-03-28; } import ietf-inet-types {prefix ietf-inet; revision-date 2010-09-24; } import openflow-configuration {prefix of-config; revision-date 2014-06-30; } import rpc-context { prefix rpcx; revision-date 2013-06-17; } description "openflow-switch-connection-provider"; revision "2014-03-28" { description "Initial revision"; } identity openflow-switch-connection-provider-impl { base "config:module-type"; config:provided-service openflow-switch-connection-provider:openflow-switch-connection-provider; config:java-name-prefix SwitchConnectionProvider; } identity statistics-collection-service-impl { description "This is the definition of statistics collection module identity."; base config:module-type; config:provided-service openflow-switch-connection-provider:statistics-collection-service; config:java-name-prefix StatisticsCollection; } augment "/config:modules/config:module/config:configuration" { case openflow-switch-connection-provider-impl { when "/config:modules/config:module/config:type = 'openflow-switch-connection-provider-impl'"; leaf port { description "local listening port"; type uint16; mandatory true; } leaf address { description "address of local listening interface"; type ietf-inet:ip-address; } leaf transport-protocol { description "Transport protocol used for communication."; type of-config:transport-protocol; mandatory true; } leaf switch-idle-timeout { description "idle timeout in [ms]"; type uint32; mandatory true; } container tls { leaf keystore { description "keystore location"; type string; } leaf keystore-type { description "keystore type (JKS or PKCS12)"; type of-config:keystore-type; } leaf keystore-path-type { description "keystore path type (CLASSPATH or PATH)"; type of-config:path-type; } leaf keystore-password { description "password protecting keystore"; type string; } leaf certificate-password { description "password protecting certificate"; type string; } leaf truststore { description "truststore location"; type string; } leaf truststore-type { description "truststore type (JKS or PKCS12)"; type of-config:keystore-type; } leaf truststore-path-type { description "truststore path type (CLASSPATH or PATH)"; type of-config:path-type; } leaf truststore-password { description "password protecting truststore"; type string; } } container threads { leaf boss-threads { type uint16; } leaf worker-threads { type uint16; } } } case statistics-collection-service-impl { when "/config:modules/config:module/config:type = 'statistics-collection-service-impl'"; container statistics { leaf statistics-collect { description "Toggle statistics collecting"; type boolean; } leaf log-report-delay { description "Delay between statistics logs"; type uint16; } } list openflow-switch-connection-provider { uses config:service-ref { refine type { mandatory true; config:required-identity openflow-switch-connection-provider:openflow-switch-connection-provider; } } } } } augment "/config:modules/config:module/config:state" { case statistics-collection-service-impl { when "/config:modules/config:module/config:type = 'statistics-collection-service-impl'"; description "MXBean designed for Message Statistic providing to JConsole."; leaf msgStatistics { type string; } rpcx:rpc-context-instance "print-ofjava-statistics-rpc"; rpcx:rpc-context-instance "reset-ofjava-statistics-rpc"; } } identity print-ofjava-statistics-rpc; identity reset-ofjava-statistics-rpc; rpc print-ofjava-statistics { description "Shortcut JMX call to printOfjavaStatistics."; input { uses rpcx:rpc-context-ref { refine context-instance { rpcx:rpc-context-instance print-ofjava-statistics-rpc; } } } output { leaf result { type string; } } } rpc reset-ofjava-statistics { description "Shortcut JMX call to resetOfjavaStatistics."; input { uses rpcx:rpc-context-ref { refine context-instance { rpcx:rpc-context-instance reset-ofjava-statistics-rpc; } } } output { leaf result { type string; } } } }