Thomas Vachuska | 8ca75a2 | 2017-08-24 16:12:59 -0700 | [diff] [blame] | 1 | module openconfig-telemetry-types { |
| 2 | |
| 3 | yang-version "1"; |
| 4 | |
| 5 | // namespace |
| 6 | namespace "http://openconfig.net/yang/telemetry-types"; |
| 7 | |
| 8 | prefix "oc-telemetry-types"; |
| 9 | |
| 10 | import openconfig-extensions { prefix oc-ext; } |
| 11 | |
| 12 | |
| 13 | // meta |
| 14 | organization "OpenConfig working group"; |
| 15 | |
| 16 | contact |
| 17 | "OpenConfig working group |
| 18 | www.openconfig.net"; |
| 19 | |
| 20 | description |
| 21 | "This module defines type and identities used by the OpenConfig |
| 22 | telemetry model."; |
| 23 | |
| 24 | oc-ext:openconfig-version "0.4.0"; |
| 25 | |
| 26 | revision "2017-02-20" { |
| 27 | description |
| 28 | "Fixes for YANG 1.0 compliance, add types module"; |
| 29 | reference "0.4.0"; |
| 30 | } |
| 31 | |
| 32 | revision "2016-04-05" { |
| 33 | description |
| 34 | "OpenConfig public release"; |
| 35 | reference "0.2.0"; |
| 36 | } |
| 37 | |
| 38 | |
| 39 | |
| 40 | // identity statements |
| 41 | |
| 42 | identity DATA_ENCODING_METHOD { |
| 43 | description |
| 44 | "Base identity for supported encoding for configuration and |
| 45 | operational state data"; |
| 46 | } |
| 47 | |
| 48 | identity ENC_XML { |
| 49 | base DATA_ENCODING_METHOD; |
| 50 | description |
| 51 | "XML encoding"; |
| 52 | } |
| 53 | |
| 54 | identity ENC_JSON_IETF { |
| 55 | base DATA_ENCODING_METHOD; |
| 56 | description |
| 57 | "JSON encoded based on IETF draft standard"; |
| 58 | reference |
| 59 | "draft-ietf-netmod-yang-json"; |
| 60 | } |
| 61 | |
| 62 | identity ENC_PROTO3 { |
| 63 | base DATA_ENCODING_METHOD; |
| 64 | description |
| 65 | "Protocol buffers v3"; |
| 66 | reference |
| 67 | "https://developers.google.com/protocol-buffers/docs/overview"; |
| 68 | } |
| 69 | |
| 70 | identity STREAM_PROTOCOL { |
| 71 | description "Base identity for a telemetry stream protocol"; |
| 72 | } |
| 73 | |
| 74 | identity STREAM_SSH { |
| 75 | base "STREAM_PROTOCOL"; |
| 76 | description |
| 77 | "Telemetry stream is carried over a SSH connection"; |
| 78 | } |
| 79 | |
| 80 | identity STREAM_GRPC { |
| 81 | base "STREAM_PROTOCOL"; |
| 82 | description |
| 83 | "Telemetry stream is carried over via the gRPC framework"; |
| 84 | } |
| 85 | |
| 86 | identity STREAM_JSON_RPC { |
| 87 | base "STREAM_PROTOCOL"; |
| 88 | description |
| 89 | "Telemetry stream is carried via the JSON-RPC framework"; |
| 90 | } |
| 91 | |
| 92 | identity STREAM_THRIFT_RPC { |
| 93 | base "STREAM_PROTOCOL"; |
| 94 | description |
| 95 | "Telemetry stream is carried via the Apache Thrift framework"; |
| 96 | } |
| 97 | |
| 98 | identity STREAM_WEBSOCKET_RPC { |
| 99 | base "STREAM_PROTOCOL"; |
| 100 | description |
| 101 | "Telemetry stream is carried by the WebSocket framework"; |
| 102 | } |
| 103 | |
| 104 | |
| 105 | // typedef statements |
| 106 | |
| 107 | |
| 108 | |
| 109 | } |