# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: proto/gnmi/gnmi.proto

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
from google.protobuf.internal import enum_type_wrapper
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
from google.protobuf import descriptor_pb2
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from google.protobuf import any_pb2 as google_dot_protobuf_dot_any__pb2
from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='proto/gnmi/gnmi.proto',
  package='gnmi',
  syntax='proto3',
  serialized_pb=_b('\n\x15proto/gnmi/gnmi.proto\x12\x04gnmi\x1a\x19google/protobuf/any.proto\x1a google/protobuf/descriptor.proto\"\x86\x01\n\x0cNotification\x12\x11\n\ttimestamp\x18\x01 \x01(\x03\x12\x1a\n\x06prefix\x18\x02 \x01(\x0b\x32\n.gnmi.Path\x12\r\n\x05\x61lias\x18\x03 \x01(\t\x12\x1c\n\x06update\x18\x04 \x03(\x0b\x32\x0c.gnmi.Update\x12\x1a\n\x06\x64\x65lete\x18\x05 \x03(\x0b\x32\n.gnmi.Path\"u\n\x06Update\x12\x18\n\x04path\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12\x1e\n\x05value\x18\x02 \x01(\x0b\x32\x0b.gnmi.ValueB\x02\x18\x01\x12\x1d\n\x03val\x18\x03 \x01(\x0b\x32\x10.gnmi.TypedValue\x12\x12\n\nduplicates\x18\x04 \x01(\r\"\xce\x02\n\nTypedValue\x12\x14\n\nstring_val\x18\x01 \x01(\tH\x00\x12\x11\n\x07int_val\x18\x02 \x01(\x03H\x00\x12\x12\n\x08uint_val\x18\x03 \x01(\x04H\x00\x12\x12\n\x08\x62ool_val\x18\x04 \x01(\x08H\x00\x12\x13\n\tbytes_val\x18\x05 \x01(\x0cH\x00\x12\x13\n\tfloat_val\x18\x06 \x01(\x02H\x00\x12&\n\x0b\x64\x65\x63imal_val\x18\x07 \x01(\x0b\x32\x0f.gnmi.Decimal64H\x00\x12)\n\x0cleaflist_val\x18\x08 \x01(\x0b\x32\x11.gnmi.ScalarArrayH\x00\x12\'\n\x07\x61ny_val\x18\t \x01(\x0b\x32\x14.google.protobuf.AnyH\x00\x12\x12\n\x08json_val\x18\n \x01(\x0cH\x00\x12\x17\n\rjson_ietf_val\x18\x0b \x01(\x0cH\x00\x12\x13\n\tascii_val\x18\x0c \x01(\tH\x00\x42\x07\n\x05value\"Y\n\x04Path\x12\x13\n\x07\x65lement\x18\x01 \x03(\tB\x02\x18\x01\x12\x0e\n\x06origin\x18\x02 \x01(\t\x12\x1c\n\x04\x65lem\x18\x03 \x03(\x0b\x32\x0e.gnmi.PathElem\x12\x0e\n\x06target\x18\x04 \x01(\t\"j\n\x08PathElem\x12\x0c\n\x04name\x18\x01 \x01(\t\x12$\n\x03key\x18\x02 \x03(\x0b\x32\x17.gnmi.PathElem.KeyEntry\x1a*\n\x08KeyEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"8\n\x05Value\x12\r\n\x05value\x18\x01 \x01(\x0c\x12\x1c\n\x04type\x18\x02 \x01(\x0e\x32\x0e.gnmi.Encoding:\x02\x18\x01\"N\n\x05\x45rror\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\x0f\n\x07message\x18\x02 \x01(\t\x12\"\n\x04\x64\x61ta\x18\x03 \x01(\x0b\x32\x14.google.protobuf.Any:\x02\x18\x01\".\n\tDecimal64\x12\x0e\n\x06\x64igits\x18\x01 \x01(\x04\x12\x11\n\tprecision\x18\x02 \x01(\r\"0\n\x0bScalarArray\x12!\n\x07\x65lement\x18\x01 \x03(\x0b\x32\x10.gnmi.TypedValue\"\x8a\x01\n\x10SubscribeRequest\x12+\n\tsubscribe\x18\x01 \x01(\x0b\x32\x16.gnmi.SubscriptionListH\x00\x12\x1a\n\x04poll\x18\x03 \x01(\x0b\x32\n.gnmi.PollH\x00\x12\"\n\x07\x61liases\x18\x04 \x01(\x0b\x32\x0f.gnmi.AliasListH\x00\x42\t\n\x07request\"\x06\n\x04Poll\"\x80\x01\n\x11SubscribeResponse\x12$\n\x06update\x18\x01 \x01(\x0b\x32\x12.gnmi.NotificationH\x00\x12\x17\n\rsync_response\x18\x03 \x01(\x08H\x00\x12 \n\x05\x65rror\x18\x04 \x01(\x0b\x32\x0b.gnmi.ErrorB\x02\x18\x01H\x00\x42\n\n\x08response\"\xd7\x02\n\x10SubscriptionList\x12\x1a\n\x06prefix\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12(\n\x0csubscription\x18\x02 \x03(\x0b\x32\x12.gnmi.Subscription\x12\x13\n\x0buse_aliases\x18\x03 \x01(\x08\x12\x1d\n\x03qos\x18\x04 \x01(\x0b\x32\x10.gnmi.QOSMarking\x12)\n\x04mode\x18\x05 \x01(\x0e\x32\x1b.gnmi.SubscriptionList.Mode\x12\x19\n\x11\x61llow_aggregation\x18\x06 \x01(\x08\x12#\n\nuse_models\x18\x07 \x03(\x0b\x32\x0f.gnmi.ModelData\x12 \n\x08\x65ncoding\x18\x08 \x01(\x0e\x32\x0e.gnmi.Encoding\x12\x14\n\x0cupdates_only\x18\t \x01(\x08\"&\n\x04Mode\x12\n\n\x06STREAM\x10\x00\x12\x08\n\x04ONCE\x10\x01\x12\x08\n\x04POLL\x10\x02\"\x9f\x01\n\x0cSubscription\x12\x18\n\x04path\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12$\n\x04mode\x18\x02 \x01(\x0e\x32\x16.gnmi.SubscriptionMode\x12\x17\n\x0fsample_interval\x18\x03 \x01(\x04\x12\x1a\n\x12suppress_redundant\x18\x04 \x01(\x08\x12\x1a\n\x12heartbeat_interval\x18\x05 \x01(\x04\"\x1d\n\nQOSMarking\x12\x0f\n\x07marking\x18\x01 \x01(\r\"0\n\x05\x41lias\x12\x18\n\x04path\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12\r\n\x05\x61lias\x18\x02 \x01(\t\"\'\n\tAliasList\x12\x1a\n\x05\x61lias\x18\x01 \x03(\x0b\x32\x0b.gnmi.Alias\"\x81\x01\n\nSetRequest\x12\x1a\n\x06prefix\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12\x1a\n\x06\x64\x65lete\x18\x02 \x03(\x0b\x32\n.gnmi.Path\x12\x1d\n\x07replace\x18\x03 \x03(\x0b\x32\x0c.gnmi.Update\x12\x1c\n\x06update\x18\x04 \x03(\x0b\x32\x0c.gnmi.Update\"\x84\x01\n\x0bSetResponse\x12\x1a\n\x06prefix\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12$\n\x08response\x18\x02 \x03(\x0b\x32\x12.gnmi.UpdateResult\x12 \n\x07message\x18\x03 \x01(\x0b\x32\x0b.gnmi.ErrorB\x02\x18\x01\x12\x11\n\ttimestamp\x18\x04 \x01(\x03\"\xca\x01\n\x0cUpdateResult\x12\x15\n\ttimestamp\x18\x01 \x01(\x03\x42\x02\x18\x01\x12\x18\n\x04path\x18\x02 \x01(\x0b\x32\n.gnmi.Path\x12 \n\x07message\x18\x03 \x01(\x0b\x32\x0b.gnmi.ErrorB\x02\x18\x01\x12(\n\x02op\x18\x04 \x01(\x0e\x32\x1c.gnmi.UpdateResult.Operation\"=\n\tOperation\x12\x0b\n\x07INVALID\x10\x00\x12\n\n\x06\x44\x45LETE\x10\x01\x12\x0b\n\x07REPLACE\x10\x02\x12\n\n\x06UPDATE\x10\x03\"\xef\x01\n\nGetRequest\x12\x1a\n\x06prefix\x18\x01 \x01(\x0b\x32\n.gnmi.Path\x12\x18\n\x04path\x18\x02 \x03(\x0b\x32\n.gnmi.Path\x12\'\n\x04type\x18\x03 \x01(\x0e\x32\x19.gnmi.GetRequest.DataType\x12 \n\x08\x65ncoding\x18\x05 \x01(\x0e\x32\x0e.gnmi.Encoding\x12#\n\nuse_models\x18\x06 \x03(\x0b\x32\x0f.gnmi.ModelData\";\n\x08\x44\x61taType\x12\x07\n\x03\x41LL\x10\x00\x12\n\n\x06\x43ONFIG\x10\x01\x12\t\n\x05STATE\x10\x02\x12\x0f\n\x0bOPERATIONAL\x10\x03\"W\n\x0bGetResponse\x12(\n\x0cnotification\x18\x01 \x03(\x0b\x32\x12.gnmi.Notification\x12\x1e\n\x05\x65rror\x18\x02 \x01(\x0b\x32\x0b.gnmi.ErrorB\x02\x18\x01\"\x13\n\x11\x43\x61pabilityRequest\"\x82\x01\n\x12\x43\x61pabilityResponse\x12)\n\x10supported_models\x18\x01 \x03(\x0b\x32\x0f.gnmi.ModelData\x12+\n\x13supported_encodings\x18\x02 \x03(\x0e\x32\x0e.gnmi.Encoding\x12\x14\n\x0cgNMI_version\x18\x03 \x01(\t\"@\n\tModelData\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0corganization\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t*D\n\x08\x45ncoding\x12\x08\n\x04JSON\x10\x00\x12\t\n\x05\x42YTES\x10\x01\x12\t\n\x05PROTO\x10\x02\x12\t\n\x05\x41SCII\x10\x03\x12\r\n\tJSON_IETF\x10\x04*A\n\x10SubscriptionMode\x12\x12\n\x0eTARGET_DEFINED\x10\x00\x12\r\n\tON_CHANGE\x10\x01\x12\n\n\x06SAMPLE\x10\x02\x32\xe3\x01\n\x04gNMI\x12\x41\n\x0c\x43\x61pabilities\x12\x17.gnmi.CapabilityRequest\x1a\x18.gnmi.CapabilityResponse\x12*\n\x03Get\x12\x10.gnmi.GetRequest\x1a\x11.gnmi.GetResponse\x12*\n\x03Set\x12\x10.gnmi.SetRequest\x1a\x11.gnmi.SetResponse\x12@\n\tSubscribe\x12\x16.gnmi.SubscribeRequest\x1a\x17.gnmi.SubscribeResponse(\x01\x30\x01:3\n\x0cgnmi_service\x12\x1c.google.protobuf.FileOptions\x18\xe9\x07 \x01(\tB\x08\xca>\x05\x30.5.0b\x06proto3')
  ,
  dependencies=[google_dot_protobuf_dot_any__pb2.DESCRIPTOR,google_dot_protobuf_dot_descriptor__pb2.DESCRIPTOR,])

_ENCODING = _descriptor.EnumDescriptor(
  name='Encoding',
  full_name='gnmi.Encoding',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='JSON', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='BYTES', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='PROTO', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='ASCII', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='JSON_IETF', index=4, number=4,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=3053,
  serialized_end=3121,
)
_sym_db.RegisterEnumDescriptor(_ENCODING)

Encoding = enum_type_wrapper.EnumTypeWrapper(_ENCODING)
_SUBSCRIPTIONMODE = _descriptor.EnumDescriptor(
  name='SubscriptionMode',
  full_name='gnmi.SubscriptionMode',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='TARGET_DEFINED', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='ON_CHANGE', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='SAMPLE', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=3123,
  serialized_end=3188,
)
_sym_db.RegisterEnumDescriptor(_SUBSCRIPTIONMODE)

SubscriptionMode = enum_type_wrapper.EnumTypeWrapper(_SUBSCRIPTIONMODE)
JSON = 0
BYTES = 1
PROTO = 2
ASCII = 3
JSON_IETF = 4
TARGET_DEFINED = 0
ON_CHANGE = 1
SAMPLE = 2

GNMI_SERVICE_FIELD_NUMBER = 1001
gnmi_service = _descriptor.FieldDescriptor(
  name='gnmi_service', full_name='gnmi.gnmi_service', index=0,
  number=1001, type=9, cpp_type=9, label=1,
  has_default_value=False, default_value=_b("").decode('utf-8'),
  message_type=None, enum_type=None, containing_type=None,
  is_extension=True, extension_scope=None,
  options=None)

_SUBSCRIPTIONLIST_MODE = _descriptor.EnumDescriptor(
  name='Mode',
  full_name='gnmi.SubscriptionList.Mode',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='STREAM', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='ONCE', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='POLL', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=1706,
  serialized_end=1744,
)
_sym_db.RegisterEnumDescriptor(_SUBSCRIPTIONLIST_MODE)

_UPDATERESULT_OPERATION = _descriptor.EnumDescriptor(
  name='Operation',
  full_name='gnmi.UpdateResult.Operation',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='INVALID', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DELETE', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='REPLACE', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='UPDATE', index=3, number=3,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=2439,
  serialized_end=2500,
)
_sym_db.RegisterEnumDescriptor(_UPDATERESULT_OPERATION)

_GETREQUEST_DATATYPE = _descriptor.EnumDescriptor(
  name='DataType',
  full_name='gnmi.GetRequest.DataType',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='ALL', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='CONFIG', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='STATE', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='OPERATIONAL', index=3, number=3,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=2683,
  serialized_end=2742,
)
_sym_db.RegisterEnumDescriptor(_GETREQUEST_DATATYPE)


_NOTIFICATION = _descriptor.Descriptor(
  name='Notification',
  full_name='gnmi.Notification',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='gnmi.Notification.timestamp', index=0,
      number=1, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='prefix', full_name='gnmi.Notification.prefix', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='alias', full_name='gnmi.Notification.alias', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='update', full_name='gnmi.Notification.update', index=3,
      number=4, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='delete', full_name='gnmi.Notification.delete', index=4,
      number=5, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=93,
  serialized_end=227,
)


_UPDATE = _descriptor.Descriptor(
  name='Update',
  full_name='gnmi.Update',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='path', full_name='gnmi.Update.path', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='value', full_name='gnmi.Update.value', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))),
    _descriptor.FieldDescriptor(
      name='val', full_name='gnmi.Update.val', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='duplicates', full_name='gnmi.Update.duplicates', index=3,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=229,
  serialized_end=346,
)


_TYPEDVALUE = _descriptor.Descriptor(
  name='TypedValue',
  full_name='gnmi.TypedValue',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='string_val', full_name='gnmi.TypedValue.string_val', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='int_val', full_name='gnmi.TypedValue.int_val', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='uint_val', full_name='gnmi.TypedValue.uint_val', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='bool_val', full_name='gnmi.TypedValue.bool_val', index=3,
      number=4, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='bytes_val', full_name='gnmi.TypedValue.bytes_val', index=4,
      number=5, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='float_val', full_name='gnmi.TypedValue.float_val', index=5,
      number=6, type=2, cpp_type=6, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='decimal_val', full_name='gnmi.TypedValue.decimal_val', index=6,
      number=7, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='leaflist_val', full_name='gnmi.TypedValue.leaflist_val', index=7,
      number=8, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='any_val', full_name='gnmi.TypedValue.any_val', index=8,
      number=9, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='json_val', full_name='gnmi.TypedValue.json_val', index=9,
      number=10, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='json_ietf_val', full_name='gnmi.TypedValue.json_ietf_val', index=10,
      number=11, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ascii_val', full_name='gnmi.TypedValue.ascii_val', index=11,
      number=12, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='value', full_name='gnmi.TypedValue.value',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=349,
  serialized_end=683,
)


_PATH = _descriptor.Descriptor(
  name='Path',
  full_name='gnmi.Path',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='element', full_name='gnmi.Path.element', index=0,
      number=1, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))),
    _descriptor.FieldDescriptor(
      name='origin', full_name='gnmi.Path.origin', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='elem', full_name='gnmi.Path.elem', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='target', full_name='gnmi.Path.target', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=685,
  serialized_end=774,
)


_PATHELEM_KEYENTRY = _descriptor.Descriptor(
  name='KeyEntry',
  full_name='gnmi.PathElem.KeyEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='gnmi.PathElem.KeyEntry.key', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='value', full_name='gnmi.PathElem.KeyEntry.value', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001')),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=840,
  serialized_end=882,
)

_PATHELEM = _descriptor.Descriptor(
  name='PathElem',
  full_name='gnmi.PathElem',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='gnmi.PathElem.name', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='key', full_name='gnmi.PathElem.key', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_PATHELEM_KEYENTRY, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=776,
  serialized_end=882,
)


_VALUE = _descriptor.Descriptor(
  name='Value',
  full_name='gnmi.Value',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='value', full_name='gnmi.Value.value', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='type', full_name='gnmi.Value.type', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('\030\001')),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=884,
  serialized_end=940,
)


_ERROR = _descriptor.Descriptor(
  name='Error',
  full_name='gnmi.Error',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='gnmi.Error.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='message', full_name='gnmi.Error.message', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='data', full_name='gnmi.Error.data', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=_descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('\030\001')),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=942,
  serialized_end=1020,
)


_DECIMAL64 = _descriptor.Descriptor(
  name='Decimal64',
  full_name='gnmi.Decimal64',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='digits', full_name='gnmi.Decimal64.digits', index=0,
      number=1, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='precision', full_name='gnmi.Decimal64.precision', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1022,
  serialized_end=1068,
)


_SCALARARRAY = _descriptor.Descriptor(
  name='ScalarArray',
  full_name='gnmi.ScalarArray',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='element', full_name='gnmi.ScalarArray.element', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1070,
  serialized_end=1118,
)


_SUBSCRIBEREQUEST = _descriptor.Descriptor(
  name='SubscribeRequest',
  full_name='gnmi.SubscribeRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='subscribe', full_name='gnmi.SubscribeRequest.subscribe', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='poll', full_name='gnmi.SubscribeRequest.poll', index=1,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='aliases', full_name='gnmi.SubscribeRequest.aliases', index=2,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='request', full_name='gnmi.SubscribeRequest.request',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=1121,
  serialized_end=1259,
)


_POLL = _descriptor.Descriptor(
  name='Poll',
  full_name='gnmi.Poll',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1261,
  serialized_end=1267,
)


_SUBSCRIBERESPONSE = _descriptor.Descriptor(
  name='SubscribeResponse',
  full_name='gnmi.SubscribeResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='update', full_name='gnmi.SubscribeResponse.update', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='sync_response', full_name='gnmi.SubscribeResponse.sync_response', index=1,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='error', full_name='gnmi.SubscribeResponse.error', index=2,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='response', full_name='gnmi.SubscribeResponse.response',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=1270,
  serialized_end=1398,
)


_SUBSCRIPTIONLIST = _descriptor.Descriptor(
  name='SubscriptionList',
  full_name='gnmi.SubscriptionList',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='prefix', full_name='gnmi.SubscriptionList.prefix', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='subscription', full_name='gnmi.SubscriptionList.subscription', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='use_aliases', full_name='gnmi.SubscriptionList.use_aliases', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='qos', full_name='gnmi.SubscriptionList.qos', index=3,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='mode', full_name='gnmi.SubscriptionList.mode', index=4,
      number=5, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='allow_aggregation', full_name='gnmi.SubscriptionList.allow_aggregation', index=5,
      number=6, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='use_models', full_name='gnmi.SubscriptionList.use_models', index=6,
      number=7, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='encoding', full_name='gnmi.SubscriptionList.encoding', index=7,
      number=8, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='updates_only', full_name='gnmi.SubscriptionList.updates_only', index=8,
      number=9, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _SUBSCRIPTIONLIST_MODE,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1401,
  serialized_end=1744,
)


_SUBSCRIPTION = _descriptor.Descriptor(
  name='Subscription',
  full_name='gnmi.Subscription',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='path', full_name='gnmi.Subscription.path', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='mode', full_name='gnmi.Subscription.mode', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='sample_interval', full_name='gnmi.Subscription.sample_interval', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='suppress_redundant', full_name='gnmi.Subscription.suppress_redundant', index=3,
      number=4, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='heartbeat_interval', full_name='gnmi.Subscription.heartbeat_interval', index=4,
      number=5, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1747,
  serialized_end=1906,
)


_QOSMARKING = _descriptor.Descriptor(
  name='QOSMarking',
  full_name='gnmi.QOSMarking',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='marking', full_name='gnmi.QOSMarking.marking', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1908,
  serialized_end=1937,
)


_ALIAS = _descriptor.Descriptor(
  name='Alias',
  full_name='gnmi.Alias',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='path', full_name='gnmi.Alias.path', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='alias', full_name='gnmi.Alias.alias', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1939,
  serialized_end=1987,
)


_ALIASLIST = _descriptor.Descriptor(
  name='AliasList',
  full_name='gnmi.AliasList',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='alias', full_name='gnmi.AliasList.alias', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1989,
  serialized_end=2028,
)


_SETREQUEST = _descriptor.Descriptor(
  name='SetRequest',
  full_name='gnmi.SetRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='prefix', full_name='gnmi.SetRequest.prefix', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='delete', full_name='gnmi.SetRequest.delete', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='replace', full_name='gnmi.SetRequest.replace', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='update', full_name='gnmi.SetRequest.update', index=3,
      number=4, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2031,
  serialized_end=2160,
)


_SETRESPONSE = _descriptor.Descriptor(
  name='SetResponse',
  full_name='gnmi.SetResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='prefix', full_name='gnmi.SetResponse.prefix', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='response', full_name='gnmi.SetResponse.response', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='message', full_name='gnmi.SetResponse.message', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))),
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='gnmi.SetResponse.timestamp', index=3,
      number=4, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2163,
  serialized_end=2295,
)


_UPDATERESULT = _descriptor.Descriptor(
  name='UpdateResult',
  full_name='gnmi.UpdateResult',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='gnmi.UpdateResult.timestamp', index=0,
      number=1, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))),
    _descriptor.FieldDescriptor(
      name='path', full_name='gnmi.UpdateResult.path', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='message', full_name='gnmi.UpdateResult.message', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))),
    _descriptor.FieldDescriptor(
      name='op', full_name='gnmi.UpdateResult.op', index=3,
      number=4, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _UPDATERESULT_OPERATION,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2298,
  serialized_end=2500,
)


_GETREQUEST = _descriptor.Descriptor(
  name='GetRequest',
  full_name='gnmi.GetRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='prefix', full_name='gnmi.GetRequest.prefix', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='path', full_name='gnmi.GetRequest.path', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='type', full_name='gnmi.GetRequest.type', index=2,
      number=3, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='encoding', full_name='gnmi.GetRequest.encoding', index=3,
      number=5, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='use_models', full_name='gnmi.GetRequest.use_models', index=4,
      number=6, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _GETREQUEST_DATATYPE,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2503,
  serialized_end=2742,
)


_GETRESPONSE = _descriptor.Descriptor(
  name='GetResponse',
  full_name='gnmi.GetResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='notification', full_name='gnmi.GetResponse.notification', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='error', full_name='gnmi.GetResponse.error', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2744,
  serialized_end=2831,
)


_CAPABILITYREQUEST = _descriptor.Descriptor(
  name='CapabilityRequest',
  full_name='gnmi.CapabilityRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2833,
  serialized_end=2852,
)


_CAPABILITYRESPONSE = _descriptor.Descriptor(
  name='CapabilityResponse',
  full_name='gnmi.CapabilityResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='supported_models', full_name='gnmi.CapabilityResponse.supported_models', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='supported_encodings', full_name='gnmi.CapabilityResponse.supported_encodings', index=1,
      number=2, type=14, cpp_type=8, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='gNMI_version', full_name='gnmi.CapabilityResponse.gNMI_version', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2855,
  serialized_end=2985,
)


_MODELDATA = _descriptor.Descriptor(
  name='ModelData',
  full_name='gnmi.ModelData',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='gnmi.ModelData.name', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='organization', full_name='gnmi.ModelData.organization', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='version', full_name='gnmi.ModelData.version', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2987,
  serialized_end=3051,
)

_NOTIFICATION.fields_by_name['prefix'].message_type = _PATH
_NOTIFICATION.fields_by_name['update'].message_type = _UPDATE
_NOTIFICATION.fields_by_name['delete'].message_type = _PATH
_UPDATE.fields_by_name['path'].message_type = _PATH
_UPDATE.fields_by_name['value'].message_type = _VALUE
_UPDATE.fields_by_name['val'].message_type = _TYPEDVALUE
_TYPEDVALUE.fields_by_name['decimal_val'].message_type = _DECIMAL64
_TYPEDVALUE.fields_by_name['leaflist_val'].message_type = _SCALARARRAY
_TYPEDVALUE.fields_by_name['any_val'].message_type = google_dot_protobuf_dot_any__pb2._ANY
_TYPEDVALUE.oneofs_by_name['value'].fields.append(
  _TYPEDVALUE.fields_by_name['string_val'])
_TYPEDVALUE.fields_by_name['string_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value']
_TYPEDVALUE.oneofs_by_name['value'].fields.append(
  _TYPEDVALUE.fields_by_name['int_val'])
_TYPEDVALUE.fields_by_name['int_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value']
_TYPEDVALUE.oneofs_by_name['value'].fields.append(
  _TYPEDVALUE.fields_by_name['uint_val'])
_TYPEDVALUE.fields_by_name['uint_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value']
_TYPEDVALUE.oneofs_by_name['value'].fields.append(
  _TYPEDVALUE.fields_by_name['bool_val'])
_TYPEDVALUE.fields_by_name['bool_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value']
_TYPEDVALUE.oneofs_by_name['value'].fields.append(
  _TYPEDVALUE.fields_by_name['bytes_val'])
_TYPEDVALUE.fields_by_name['bytes_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value']
_TYPEDVALUE.oneofs_by_name['value'].fields.append(
  _TYPEDVALUE.fields_by_name['float_val'])
_TYPEDVALUE.fields_by_name['float_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value']
_TYPEDVALUE.oneofs_by_name['value'].fields.append(
  _TYPEDVALUE.fields_by_name['decimal_val'])
_TYPEDVALUE.fields_by_name['decimal_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value']
_TYPEDVALUE.oneofs_by_name['value'].fields.append(
  _TYPEDVALUE.fields_by_name['leaflist_val'])
_TYPEDVALUE.fields_by_name['leaflist_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value']
_TYPEDVALUE.oneofs_by_name['value'].fields.append(
  _TYPEDVALUE.fields_by_name['any_val'])
_TYPEDVALUE.fields_by_name['any_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value']
_TYPEDVALUE.oneofs_by_name['value'].fields.append(
  _TYPEDVALUE.fields_by_name['json_val'])
_TYPEDVALUE.fields_by_name['json_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value']
_TYPEDVALUE.oneofs_by_name['value'].fields.append(
  _TYPEDVALUE.fields_by_name['json_ietf_val'])
_TYPEDVALUE.fields_by_name['json_ietf_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value']
_TYPEDVALUE.oneofs_by_name['value'].fields.append(
  _TYPEDVALUE.fields_by_name['ascii_val'])
_TYPEDVALUE.fields_by_name['ascii_val'].containing_oneof = _TYPEDVALUE.oneofs_by_name['value']
_PATH.fields_by_name['elem'].message_type = _PATHELEM
_PATHELEM_KEYENTRY.containing_type = _PATHELEM
_PATHELEM.fields_by_name['key'].message_type = _PATHELEM_KEYENTRY
_VALUE.fields_by_name['type'].enum_type = _ENCODING
_ERROR.fields_by_name['data'].message_type = google_dot_protobuf_dot_any__pb2._ANY
_SCALARARRAY.fields_by_name['element'].message_type = _TYPEDVALUE
_SUBSCRIBEREQUEST.fields_by_name['subscribe'].message_type = _SUBSCRIPTIONLIST
_SUBSCRIBEREQUEST.fields_by_name['poll'].message_type = _POLL
_SUBSCRIBEREQUEST.fields_by_name['aliases'].message_type = _ALIASLIST
_SUBSCRIBEREQUEST.oneofs_by_name['request'].fields.append(
  _SUBSCRIBEREQUEST.fields_by_name['subscribe'])
_SUBSCRIBEREQUEST.fields_by_name['subscribe'].containing_oneof = _SUBSCRIBEREQUEST.oneofs_by_name['request']
_SUBSCRIBEREQUEST.oneofs_by_name['request'].fields.append(
  _SUBSCRIBEREQUEST.fields_by_name['poll'])
_SUBSCRIBEREQUEST.fields_by_name['poll'].containing_oneof = _SUBSCRIBEREQUEST.oneofs_by_name['request']
_SUBSCRIBEREQUEST.oneofs_by_name['request'].fields.append(
  _SUBSCRIBEREQUEST.fields_by_name['aliases'])
_SUBSCRIBEREQUEST.fields_by_name['aliases'].containing_oneof = _SUBSCRIBEREQUEST.oneofs_by_name['request']
_SUBSCRIBERESPONSE.fields_by_name['update'].message_type = _NOTIFICATION
_SUBSCRIBERESPONSE.fields_by_name['error'].message_type = _ERROR
_SUBSCRIBERESPONSE.oneofs_by_name['response'].fields.append(
  _SUBSCRIBERESPONSE.fields_by_name['update'])
_SUBSCRIBERESPONSE.fields_by_name['update'].containing_oneof = _SUBSCRIBERESPONSE.oneofs_by_name['response']
_SUBSCRIBERESPONSE.oneofs_by_name['response'].fields.append(
  _SUBSCRIBERESPONSE.fields_by_name['sync_response'])
_SUBSCRIBERESPONSE.fields_by_name['sync_response'].containing_oneof = _SUBSCRIBERESPONSE.oneofs_by_name['response']
_SUBSCRIBERESPONSE.oneofs_by_name['response'].fields.append(
  _SUBSCRIBERESPONSE.fields_by_name['error'])
_SUBSCRIBERESPONSE.fields_by_name['error'].containing_oneof = _SUBSCRIBERESPONSE.oneofs_by_name['response']
_SUBSCRIPTIONLIST.fields_by_name['prefix'].message_type = _PATH
_SUBSCRIPTIONLIST.fields_by_name['subscription'].message_type = _SUBSCRIPTION
_SUBSCRIPTIONLIST.fields_by_name['qos'].message_type = _QOSMARKING
_SUBSCRIPTIONLIST.fields_by_name['mode'].enum_type = _SUBSCRIPTIONLIST_MODE
_SUBSCRIPTIONLIST.fields_by_name['use_models'].message_type = _MODELDATA
_SUBSCRIPTIONLIST.fields_by_name['encoding'].enum_type = _ENCODING
_SUBSCRIPTIONLIST_MODE.containing_type = _SUBSCRIPTIONLIST
_SUBSCRIPTION.fields_by_name['path'].message_type = _PATH
_SUBSCRIPTION.fields_by_name['mode'].enum_type = _SUBSCRIPTIONMODE
_ALIAS.fields_by_name['path'].message_type = _PATH
_ALIASLIST.fields_by_name['alias'].message_type = _ALIAS
_SETREQUEST.fields_by_name['prefix'].message_type = _PATH
_SETREQUEST.fields_by_name['delete'].message_type = _PATH
_SETREQUEST.fields_by_name['replace'].message_type = _UPDATE
_SETREQUEST.fields_by_name['update'].message_type = _UPDATE
_SETRESPONSE.fields_by_name['prefix'].message_type = _PATH
_SETRESPONSE.fields_by_name['response'].message_type = _UPDATERESULT
_SETRESPONSE.fields_by_name['message'].message_type = _ERROR
_UPDATERESULT.fields_by_name['path'].message_type = _PATH
_UPDATERESULT.fields_by_name['message'].message_type = _ERROR
_UPDATERESULT.fields_by_name['op'].enum_type = _UPDATERESULT_OPERATION
_UPDATERESULT_OPERATION.containing_type = _UPDATERESULT
_GETREQUEST.fields_by_name['prefix'].message_type = _PATH
_GETREQUEST.fields_by_name['path'].message_type = _PATH
_GETREQUEST.fields_by_name['type'].enum_type = _GETREQUEST_DATATYPE
_GETREQUEST.fields_by_name['encoding'].enum_type = _ENCODING
_GETREQUEST.fields_by_name['use_models'].message_type = _MODELDATA
_GETREQUEST_DATATYPE.containing_type = _GETREQUEST
_GETRESPONSE.fields_by_name['notification'].message_type = _NOTIFICATION
_GETRESPONSE.fields_by_name['error'].message_type = _ERROR
_CAPABILITYRESPONSE.fields_by_name['supported_models'].message_type = _MODELDATA
_CAPABILITYRESPONSE.fields_by_name['supported_encodings'].enum_type = _ENCODING
DESCRIPTOR.message_types_by_name['Notification'] = _NOTIFICATION
DESCRIPTOR.message_types_by_name['Update'] = _UPDATE
DESCRIPTOR.message_types_by_name['TypedValue'] = _TYPEDVALUE
DESCRIPTOR.message_types_by_name['Path'] = _PATH
DESCRIPTOR.message_types_by_name['PathElem'] = _PATHELEM
DESCRIPTOR.message_types_by_name['Value'] = _VALUE
DESCRIPTOR.message_types_by_name['Error'] = _ERROR
DESCRIPTOR.message_types_by_name['Decimal64'] = _DECIMAL64
DESCRIPTOR.message_types_by_name['ScalarArray'] = _SCALARARRAY
DESCRIPTOR.message_types_by_name['SubscribeRequest'] = _SUBSCRIBEREQUEST
DESCRIPTOR.message_types_by_name['Poll'] = _POLL
DESCRIPTOR.message_types_by_name['SubscribeResponse'] = _SUBSCRIBERESPONSE
DESCRIPTOR.message_types_by_name['SubscriptionList'] = _SUBSCRIPTIONLIST
DESCRIPTOR.message_types_by_name['Subscription'] = _SUBSCRIPTION
DESCRIPTOR.message_types_by_name['QOSMarking'] = _QOSMARKING
DESCRIPTOR.message_types_by_name['Alias'] = _ALIAS
DESCRIPTOR.message_types_by_name['AliasList'] = _ALIASLIST
DESCRIPTOR.message_types_by_name['SetRequest'] = _SETREQUEST
DESCRIPTOR.message_types_by_name['SetResponse'] = _SETRESPONSE
DESCRIPTOR.message_types_by_name['UpdateResult'] = _UPDATERESULT
DESCRIPTOR.message_types_by_name['GetRequest'] = _GETREQUEST
DESCRIPTOR.message_types_by_name['GetResponse'] = _GETRESPONSE
DESCRIPTOR.message_types_by_name['CapabilityRequest'] = _CAPABILITYREQUEST
DESCRIPTOR.message_types_by_name['CapabilityResponse'] = _CAPABILITYRESPONSE
DESCRIPTOR.message_types_by_name['ModelData'] = _MODELDATA
DESCRIPTOR.enum_types_by_name['Encoding'] = _ENCODING
DESCRIPTOR.enum_types_by_name['SubscriptionMode'] = _SUBSCRIPTIONMODE
DESCRIPTOR.extensions_by_name['gnmi_service'] = gnmi_service
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

Notification = _reflection.GeneratedProtocolMessageType('Notification', (_message.Message,), dict(
  DESCRIPTOR = _NOTIFICATION,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.Notification)
  ))
_sym_db.RegisterMessage(Notification)

Update = _reflection.GeneratedProtocolMessageType('Update', (_message.Message,), dict(
  DESCRIPTOR = _UPDATE,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.Update)
  ))
_sym_db.RegisterMessage(Update)

TypedValue = _reflection.GeneratedProtocolMessageType('TypedValue', (_message.Message,), dict(
  DESCRIPTOR = _TYPEDVALUE,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.TypedValue)
  ))
_sym_db.RegisterMessage(TypedValue)

Path = _reflection.GeneratedProtocolMessageType('Path', (_message.Message,), dict(
  DESCRIPTOR = _PATH,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.Path)
  ))
_sym_db.RegisterMessage(Path)

PathElem = _reflection.GeneratedProtocolMessageType('PathElem', (_message.Message,), dict(

  KeyEntry = _reflection.GeneratedProtocolMessageType('KeyEntry', (_message.Message,), dict(
    DESCRIPTOR = _PATHELEM_KEYENTRY,
    __module__ = 'proto.gnmi.gnmi_pb2'
    # @@protoc_insertion_point(class_scope:gnmi.PathElem.KeyEntry)
    ))
  ,
  DESCRIPTOR = _PATHELEM,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.PathElem)
  ))
_sym_db.RegisterMessage(PathElem)
_sym_db.RegisterMessage(PathElem.KeyEntry)

Value = _reflection.GeneratedProtocolMessageType('Value', (_message.Message,), dict(
  DESCRIPTOR = _VALUE,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.Value)
  ))
_sym_db.RegisterMessage(Value)

Error = _reflection.GeneratedProtocolMessageType('Error', (_message.Message,), dict(
  DESCRIPTOR = _ERROR,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.Error)
  ))
_sym_db.RegisterMessage(Error)

Decimal64 = _reflection.GeneratedProtocolMessageType('Decimal64', (_message.Message,), dict(
  DESCRIPTOR = _DECIMAL64,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.Decimal64)
  ))
_sym_db.RegisterMessage(Decimal64)

ScalarArray = _reflection.GeneratedProtocolMessageType('ScalarArray', (_message.Message,), dict(
  DESCRIPTOR = _SCALARARRAY,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.ScalarArray)
  ))
_sym_db.RegisterMessage(ScalarArray)

SubscribeRequest = _reflection.GeneratedProtocolMessageType('SubscribeRequest', (_message.Message,), dict(
  DESCRIPTOR = _SUBSCRIBEREQUEST,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.SubscribeRequest)
  ))
_sym_db.RegisterMessage(SubscribeRequest)

Poll = _reflection.GeneratedProtocolMessageType('Poll', (_message.Message,), dict(
  DESCRIPTOR = _POLL,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.Poll)
  ))
_sym_db.RegisterMessage(Poll)

SubscribeResponse = _reflection.GeneratedProtocolMessageType('SubscribeResponse', (_message.Message,), dict(
  DESCRIPTOR = _SUBSCRIBERESPONSE,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.SubscribeResponse)
  ))
_sym_db.RegisterMessage(SubscribeResponse)

SubscriptionList = _reflection.GeneratedProtocolMessageType('SubscriptionList', (_message.Message,), dict(
  DESCRIPTOR = _SUBSCRIPTIONLIST,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.SubscriptionList)
  ))
_sym_db.RegisterMessage(SubscriptionList)

Subscription = _reflection.GeneratedProtocolMessageType('Subscription', (_message.Message,), dict(
  DESCRIPTOR = _SUBSCRIPTION,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.Subscription)
  ))
_sym_db.RegisterMessage(Subscription)

QOSMarking = _reflection.GeneratedProtocolMessageType('QOSMarking', (_message.Message,), dict(
  DESCRIPTOR = _QOSMARKING,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.QOSMarking)
  ))
_sym_db.RegisterMessage(QOSMarking)

Alias = _reflection.GeneratedProtocolMessageType('Alias', (_message.Message,), dict(
  DESCRIPTOR = _ALIAS,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.Alias)
  ))
_sym_db.RegisterMessage(Alias)

AliasList = _reflection.GeneratedProtocolMessageType('AliasList', (_message.Message,), dict(
  DESCRIPTOR = _ALIASLIST,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.AliasList)
  ))
_sym_db.RegisterMessage(AliasList)

SetRequest = _reflection.GeneratedProtocolMessageType('SetRequest', (_message.Message,), dict(
  DESCRIPTOR = _SETREQUEST,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.SetRequest)
  ))
_sym_db.RegisterMessage(SetRequest)

SetResponse = _reflection.GeneratedProtocolMessageType('SetResponse', (_message.Message,), dict(
  DESCRIPTOR = _SETRESPONSE,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.SetResponse)
  ))
_sym_db.RegisterMessage(SetResponse)

UpdateResult = _reflection.GeneratedProtocolMessageType('UpdateResult', (_message.Message,), dict(
  DESCRIPTOR = _UPDATERESULT,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.UpdateResult)
  ))
_sym_db.RegisterMessage(UpdateResult)

GetRequest = _reflection.GeneratedProtocolMessageType('GetRequest', (_message.Message,), dict(
  DESCRIPTOR = _GETREQUEST,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.GetRequest)
  ))
_sym_db.RegisterMessage(GetRequest)

GetResponse = _reflection.GeneratedProtocolMessageType('GetResponse', (_message.Message,), dict(
  DESCRIPTOR = _GETRESPONSE,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.GetResponse)
  ))
_sym_db.RegisterMessage(GetResponse)

CapabilityRequest = _reflection.GeneratedProtocolMessageType('CapabilityRequest', (_message.Message,), dict(
  DESCRIPTOR = _CAPABILITYREQUEST,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.CapabilityRequest)
  ))
_sym_db.RegisterMessage(CapabilityRequest)

CapabilityResponse = _reflection.GeneratedProtocolMessageType('CapabilityResponse', (_message.Message,), dict(
  DESCRIPTOR = _CAPABILITYRESPONSE,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.CapabilityResponse)
  ))
_sym_db.RegisterMessage(CapabilityResponse)

ModelData = _reflection.GeneratedProtocolMessageType('ModelData', (_message.Message,), dict(
  DESCRIPTOR = _MODELDATA,
  __module__ = 'proto.gnmi.gnmi_pb2'
  # @@protoc_insertion_point(class_scope:gnmi.ModelData)
  ))
_sym_db.RegisterMessage(ModelData)

google_dot_protobuf_dot_descriptor__pb2.FileOptions.RegisterExtension(gnmi_service)

DESCRIPTOR.has_options = True
DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\312>\0050.5.0'))
_UPDATE.fields_by_name['value'].has_options = True
_UPDATE.fields_by_name['value']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))
_PATH.fields_by_name['element'].has_options = True
_PATH.fields_by_name['element']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))
_PATHELEM_KEYENTRY.has_options = True
_PATHELEM_KEYENTRY._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('8\001'))
_VALUE.has_options = True
_VALUE._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('\030\001'))
_ERROR.has_options = True
_ERROR._options = _descriptor._ParseOptions(descriptor_pb2.MessageOptions(), _b('\030\001'))
_SUBSCRIBERESPONSE.fields_by_name['error'].has_options = True
_SUBSCRIBERESPONSE.fields_by_name['error']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))
_SETRESPONSE.fields_by_name['message'].has_options = True
_SETRESPONSE.fields_by_name['message']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))
_UPDATERESULT.fields_by_name['timestamp'].has_options = True
_UPDATERESULT.fields_by_name['timestamp']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))
_UPDATERESULT.fields_by_name['message'].has_options = True
_UPDATERESULT.fields_by_name['message']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))
_GETRESPONSE.fields_by_name['error'].has_options = True
_GETRESPONSE.fields_by_name['error']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))
try:
  # THESE ELEMENTS WILL BE DEPRECATED.
  # Please use the generated *_pb2_grpc.py files instead.
  import grpc
  from grpc.beta import implementations as beta_implementations
  from grpc.beta import interfaces as beta_interfaces
  from grpc.framework.common import cardinality
  from grpc.framework.interfaces.face import utilities as face_utilities


  class gNMIStub(object):
    # missing associated documentation comment in .proto file
    pass

    def __init__(self, channel):
      """Constructor.

      Args:
        channel: A grpc.Channel.
      """
      self.Capabilities = channel.unary_unary(
          '/gnmi.gNMI/Capabilities',
          request_serializer=CapabilityRequest.SerializeToString,
          response_deserializer=CapabilityResponse.FromString,
          )
      self.Get = channel.unary_unary(
          '/gnmi.gNMI/Get',
          request_serializer=GetRequest.SerializeToString,
          response_deserializer=GetResponse.FromString,
          )
      self.Set = channel.unary_unary(
          '/gnmi.gNMI/Set',
          request_serializer=SetRequest.SerializeToString,
          response_deserializer=SetResponse.FromString,
          )
      self.Subscribe = channel.stream_stream(
          '/gnmi.gNMI/Subscribe',
          request_serializer=SubscribeRequest.SerializeToString,
          response_deserializer=SubscribeResponse.FromString,
          )


  class gNMIServicer(object):
    # missing associated documentation comment in .proto file
    pass

    def Capabilities(self, request, context):
      """Capabilities allows the client to retrieve the set of capabilities that
      is supported by the target. This allows the target to validate the
      service version that is implemented and retrieve the set of models that
      the target supports. The models can then be specified in subsequent RPCs
      to restrict the set of data that is utilized.
      Reference: gNMI Specification Section 3.2
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def Get(self, request, context):
      """Retrieve a snapshot of data from the target. A Get RPC requests that the
      target snapshots a subset of the data tree as specified by the paths
      included in the message and serializes this to be returned to the
      client using the specified encoding.
      Reference: gNMI Specification Section 3.3
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def Set(self, request, context):
      """Set allows the client to modify the state of data on the target. The
      paths to modified along with the new values that the client wishes
      to set the value to.
      Reference: gNMI Specification Section 3.4
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')

    def Subscribe(self, request_iterator, context):
      """Subscribe allows a client to request the target to send it values
      of particular paths within the data tree. These values may be streamed
      at a particular cadence (STREAM), sent one off on a long-lived channel
      (POLL), or sent as a one-off retrieval (ONCE).
      Reference: gNMI Specification Section 3.5
      """
      context.set_code(grpc.StatusCode.UNIMPLEMENTED)
      context.set_details('Method not implemented!')
      raise NotImplementedError('Method not implemented!')


  def add_gNMIServicer_to_server(servicer, server):
    rpc_method_handlers = {
        'Capabilities': grpc.unary_unary_rpc_method_handler(
            servicer.Capabilities,
            request_deserializer=CapabilityRequest.FromString,
            response_serializer=CapabilityResponse.SerializeToString,
        ),
        'Get': grpc.unary_unary_rpc_method_handler(
            servicer.Get,
            request_deserializer=GetRequest.FromString,
            response_serializer=GetResponse.SerializeToString,
        ),
        'Set': grpc.unary_unary_rpc_method_handler(
            servicer.Set,
            request_deserializer=SetRequest.FromString,
            response_serializer=SetResponse.SerializeToString,
        ),
        'Subscribe': grpc.stream_stream_rpc_method_handler(
            servicer.Subscribe,
            request_deserializer=SubscribeRequest.FromString,
            response_serializer=SubscribeResponse.SerializeToString,
        ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
        'gnmi.gNMI', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


  class BetagNMIServicer(object):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This class was generated
    only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0."""
    # missing associated documentation comment in .proto file
    pass
    def Capabilities(self, request, context):
      """Capabilities allows the client to retrieve the set of capabilities that
      is supported by the target. This allows the target to validate the
      service version that is implemented and retrieve the set of models that
      the target supports. The models can then be specified in subsequent RPCs
      to restrict the set of data that is utilized.
      Reference: gNMI Specification Section 3.2
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def Get(self, request, context):
      """Retrieve a snapshot of data from the target. A Get RPC requests that the
      target snapshots a subset of the data tree as specified by the paths
      included in the message and serializes this to be returned to the
      client using the specified encoding.
      Reference: gNMI Specification Section 3.3
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def Set(self, request, context):
      """Set allows the client to modify the state of data on the target. The
      paths to modified along with the new values that the client wishes
      to set the value to.
      Reference: gNMI Specification Section 3.4
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)
    def Subscribe(self, request_iterator, context):
      """Subscribe allows a client to request the target to send it values
      of particular paths within the data tree. These values may be streamed
      at a particular cadence (STREAM), sent one off on a long-lived channel
      (POLL), or sent as a one-off retrieval (ONCE).
      Reference: gNMI Specification Section 3.5
      """
      context.code(beta_interfaces.StatusCode.UNIMPLEMENTED)


  class BetagNMIStub(object):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This class was generated
    only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0."""
    # missing associated documentation comment in .proto file
    pass
    def Capabilities(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Capabilities allows the client to retrieve the set of capabilities that
      is supported by the target. This allows the target to validate the
      service version that is implemented and retrieve the set of models that
      the target supports. The models can then be specified in subsequent RPCs
      to restrict the set of data that is utilized.
      Reference: gNMI Specification Section 3.2
      """
      raise NotImplementedError()
    Capabilities.future = None
    def Get(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Retrieve a snapshot of data from the target. A Get RPC requests that the
      target snapshots a subset of the data tree as specified by the paths
      included in the message and serializes this to be returned to the
      client using the specified encoding.
      Reference: gNMI Specification Section 3.3
      """
      raise NotImplementedError()
    Get.future = None
    def Set(self, request, timeout, metadata=None, with_call=False, protocol_options=None):
      """Set allows the client to modify the state of data on the target. The
      paths to modified along with the new values that the client wishes
      to set the value to.
      Reference: gNMI Specification Section 3.4
      """
      raise NotImplementedError()
    Set.future = None
    def Subscribe(self, request_iterator, timeout, metadata=None, with_call=False, protocol_options=None):
      """Subscribe allows a client to request the target to send it values
      of particular paths within the data tree. These values may be streamed
      at a particular cadence (STREAM), sent one off on a long-lived channel
      (POLL), or sent as a one-off retrieval (ONCE).
      Reference: gNMI Specification Section 3.5
      """
      raise NotImplementedError()


  def beta_create_gNMI_server(servicer, pool=None, pool_size=None, default_timeout=None, maximum_timeout=None):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This function was
    generated only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0"""
    request_deserializers = {
      ('gnmi.gNMI', 'Capabilities'): CapabilityRequest.FromString,
      ('gnmi.gNMI', 'Get'): GetRequest.FromString,
      ('gnmi.gNMI', 'Set'): SetRequest.FromString,
      ('gnmi.gNMI', 'Subscribe'): SubscribeRequest.FromString,
    }
    response_serializers = {
      ('gnmi.gNMI', 'Capabilities'): CapabilityResponse.SerializeToString,
      ('gnmi.gNMI', 'Get'): GetResponse.SerializeToString,
      ('gnmi.gNMI', 'Set'): SetResponse.SerializeToString,
      ('gnmi.gNMI', 'Subscribe'): SubscribeResponse.SerializeToString,
    }
    method_implementations = {
      ('gnmi.gNMI', 'Capabilities'): face_utilities.unary_unary_inline(servicer.Capabilities),
      ('gnmi.gNMI', 'Get'): face_utilities.unary_unary_inline(servicer.Get),
      ('gnmi.gNMI', 'Set'): face_utilities.unary_unary_inline(servicer.Set),
      ('gnmi.gNMI', 'Subscribe'): face_utilities.stream_stream_inline(servicer.Subscribe),
    }
    server_options = beta_implementations.server_options(request_deserializers=request_deserializers, response_serializers=response_serializers, thread_pool=pool, thread_pool_size=pool_size, default_timeout=default_timeout, maximum_timeout=maximum_timeout)
    return beta_implementations.server(method_implementations, options=server_options)


  def beta_create_gNMI_stub(channel, host=None, metadata_transformer=None, pool=None, pool_size=None):
    """The Beta API is deprecated for 0.15.0 and later.

    It is recommended to use the GA API (classes and functions in this
    file not marked beta) for all further purposes. This function was
    generated only to ease transition from grpcio<0.15.0 to grpcio>=0.15.0"""
    request_serializers = {
      ('gnmi.gNMI', 'Capabilities'): CapabilityRequest.SerializeToString,
      ('gnmi.gNMI', 'Get'): GetRequest.SerializeToString,
      ('gnmi.gNMI', 'Set'): SetRequest.SerializeToString,
      ('gnmi.gNMI', 'Subscribe'): SubscribeRequest.SerializeToString,
    }
    response_deserializers = {
      ('gnmi.gNMI', 'Capabilities'): CapabilityResponse.FromString,
      ('gnmi.gNMI', 'Get'): GetResponse.FromString,
      ('gnmi.gNMI', 'Set'): SetResponse.FromString,
      ('gnmi.gNMI', 'Subscribe'): SubscribeResponse.FromString,
    }
    cardinalities = {
      'Capabilities': cardinality.Cardinality.UNARY_UNARY,
      'Get': cardinality.Cardinality.UNARY_UNARY,
      'Set': cardinality.Cardinality.UNARY_UNARY,
      'Subscribe': cardinality.Cardinality.STREAM_STREAM,
    }
    stub_options = beta_implementations.stub_options(host=host, metadata_transformer=metadata_transformer, request_serializers=request_serializers, response_deserializers=response_deserializers, thread_pool=pool, thread_pool_size=pool_size)
    return beta_implementations.dynamic_stub(channel, 'gnmi.gNMI', cardinalities, options=stub_options)
except ImportError:
  pass
# @@protoc_insertion_point(module_scope)
