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

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
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 grr.proto import flows_pb2 as grr_dot_proto_dot_flows__pb2
from grr.proto import jobs_pb2 as grr_dot_proto_dot_jobs__pb2
from grr.proto import semantic_pb2 as grr_dot_proto_dot_semantic__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='grr/proto/data_store.proto',
  package='',
  syntax='proto2',
  serialized_pb=_b('\n\x1agrr/proto/data_store.proto\x1a\x15grr/proto/flows.proto\x1a\x14grr/proto/jobs.proto\x1a\x18grr/proto/semantic.proto\"\xca\x02\n\rTimestampSpec\x12\x33\n\x04type\x18\x01 \x01(\x0e\x32\x13.TimestampSpec.Type:\x10NEWEST_TIMESTAMP\x12X\n\x05start\x18\x02 \x01(\x04\x42I\xe2\xfc\xe3\xc4\x01\x43\n\x0bRDFDatetime\x12\x34Start of the timestamp range if type is RANGED_TIME.\x12T\n\x03\x65nd\x18\x03 \x01(\x04\x42G\xe2\xfc\xe3\xc4\x01\x41\n\x0bRDFDatetime\x12\x32\x45nd of the timestamp range if type is RANGED_TIME.\"T\n\x04Type\x12\x11\n\rSPECIFIC_TIME\x10\x00\x12\x0f\n\x0bRANGED_TIME\x10\x01\x12\x12\n\x0e\x41LL_TIMESTAMPS\x10\x02\x12\x14\n\x10NEWEST_TIMESTAMP\x10\x03\"\xac\x01\n\x0e\x44\x61taStoreValue\x12\x11\n\tattribute\x18\x01 \x01(\t\x12\x18\n\x05value\x18\x02 \x01(\x0b\x32\t.DataBlob\x12!\n\ttimestamp\x18\x05 \x01(\x0b\x32\x0e.TimestampSpec\x12&\n\x06option\x18\x04 \x01(\x0e\x32\x16.DataStoreValue.Option\"\"\n\x06Option\x12\x0b\n\x07\x44\x45\x46\x41ULT\x10\x00\x12\x0b\n\x07REPLACE\x10\x01\"\xd1\x01\n\x10\x44\x61taStoreRequest\x12\x42\n\x07subject\x18\x01 \x03(\tB1\xe2\xfc\xe3\xc4\x01+\n\x06RDFURN\x12!The AFF4 object we interact with.\x12\x1f\n\x06values\x18\x02 \x03(\x0b\x32\x0f.DataStoreValue\x12!\n\ttimestamp\x18\x05 \x01(\x0b\x32\x0e.TimestampSpec\x12\x18\n\x05token\x18\x06 \x01(\x0b\x32\t.ACLToken\x12\x0c\n\x04sync\x18\x07 \x01(\x08\x12\r\n\x05limit\x18\x08 \x01(\r\"\x87\x02\n\tResultSet\x12\x42\n\x07subject\x18\x01 \x01(\tB1\xe2\xfc\xe3\xc4\x01+\n\x06RDFURN\x12!The AFF4 object we interact with.\x12\x1f\n\x06values\x18\x02 \x03(\x0b\x32\x0f.DataStoreValue\x12\x94\x01\n\x11serialized_result\x18\x03 \x01(\x0c\x42y\xe2\xfc\xe3\xc4\x01s\x12qRaw field which holds the data serialized in json format.This data will be available using the payload attribute.\"\xad\x04\n\x11\x44\x61taStoreResponse\x12\x1b\n\x07results\x18\x01 \x03(\x0b\x32\n.ResultSet\x12]\n\x05\x63ount\x18\x02 \x01(\rBN\xe2\xfc\xe3\xc4\x01H\x12\x46Total number of results on the server (Can be more than len(results)).\x12-\n\x06status\x18\x03 \x01(\x0e\x32\x19.DataStoreResponse.Status:\x02OK\x12O\n\x0bstatus_desc\x18\x04 \x01(\tB:\xe2\xfc\xe3\xc4\x01\x34\x12\x32\x41\x64\x64itional human readable message for the failure.\x12`\n\x0e\x66\x61iled_subject\x18\x05 \x01(\tBH\xe2\xfc\xe3\xc4\x01\x42\x12@In case of failure, the subject that caused the request to fail.\x12U\n\x07request\x18\x06 \x01(\x0b\x32\x11.DataStoreRequestB1\xe2\xfc\xe3\xc4\x01+\x12)The request which elicited this response.\"c\n\x06Status\x12\x06\n\x02OK\x10\x00\x12\x18\n\x14\x41UTHORIZATION_DENIED\x10\x01\x12\x14\n\x10\x44\x41TA_STORE_ERROR\x10\x02\x12\x0e\n\nFLOW_ERROR\x10\x03\x12\x11\n\rTIMEOUT_ERROR\x10\x04')
  ,
  dependencies=[grr_dot_proto_dot_flows__pb2.DESCRIPTOR,grr_dot_proto_dot_jobs__pb2.DESCRIPTOR,grr_dot_proto_dot_semantic__pb2.DESCRIPTOR,])



_TIMESTAMPSPEC_TYPE = _descriptor.EnumDescriptor(
  name='Type',
  full_name='TimestampSpec.Type',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='SPECIFIC_TIME', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='RANGED_TIME', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='ALL_TIMESTAMPS', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='NEWEST_TIMESTAMP', index=3, number=3,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=348,
  serialized_end=432,
)
_sym_db.RegisterEnumDescriptor(_TIMESTAMPSPEC_TYPE)

_DATASTOREVALUE_OPTION = _descriptor.EnumDescriptor(
  name='Option',
  full_name='DataStoreValue.Option',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='DEFAULT', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='REPLACE', index=1, number=1,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=573,
  serialized_end=607,
)
_sym_db.RegisterEnumDescriptor(_DATASTOREVALUE_OPTION)

_DATASTORERESPONSE_STATUS = _descriptor.EnumDescriptor(
  name='Status',
  full_name='DataStoreResponse.Status',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='OK', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='AUTHORIZATION_DENIED', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='DATA_STORE_ERROR', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='FLOW_ERROR', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='TIMEOUT_ERROR', index=4, number=4,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=1546,
  serialized_end=1645,
)
_sym_db.RegisterEnumDescriptor(_DATASTORERESPONSE_STATUS)


_TIMESTAMPSPEC = _descriptor.Descriptor(
  name='TimestampSpec',
  full_name='TimestampSpec',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='TimestampSpec.type', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=True, default_value=3,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='start', full_name='TimestampSpec.start', index=1,
      number=2, 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=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001C\n\013RDFDatetime\0224Start of the timestamp range if type is RANGED_TIME.'))),
    _descriptor.FieldDescriptor(
      name='end', full_name='TimestampSpec.end', 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=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001A\n\013RDFDatetime\0222End of the timestamp range if type is RANGED_TIME.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _TIMESTAMPSPEC_TYPE,
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=102,
  serialized_end=432,
)


_DATASTOREVALUE = _descriptor.Descriptor(
  name='DataStoreValue',
  full_name='DataStoreValue',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='attribute', full_name='DataStoreValue.attribute', 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='DataStoreValue.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=None),
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='DataStoreValue.timestamp', index=2,
      number=5, 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='option', full_name='DataStoreValue.option', 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=[
    _DATASTOREVALUE_OPTION,
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=435,
  serialized_end=607,
)


_DATASTOREREQUEST = _descriptor.Descriptor(
  name='DataStoreRequest',
  full_name='DataStoreRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='subject', full_name='DataStoreRequest.subject', 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('\342\374\343\304\001+\n\006RDFURN\022!The AFF4 object we interact with.'))),
    _descriptor.FieldDescriptor(
      name='values', full_name='DataStoreRequest.values', 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='timestamp', full_name='DataStoreRequest.timestamp', index=2,
      number=5, 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='token', full_name='DataStoreRequest.token', index=3,
      number=6, 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', full_name='DataStoreRequest.sync', index=4,
      number=7, 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='limit', full_name='DataStoreRequest.limit', index=5,
      number=8, 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='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=610,
  serialized_end=819,
)


_RESULTSET = _descriptor.Descriptor(
  name='ResultSet',
  full_name='ResultSet',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='subject', full_name='ResultSet.subject', 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=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001+\n\006RDFURN\022!The AFF4 object we interact with.'))),
    _descriptor.FieldDescriptor(
      name='values', full_name='ResultSet.values', 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='serialized_result', full_name='ResultSet.serialized_result', index=2,
      number=3, 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=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001s\022qRaw field which holds the data serialized in json format.This data will be available using the payload attribute.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=822,
  serialized_end=1085,
)


_DATASTORERESPONSE = _descriptor.Descriptor(
  name='DataStoreResponse',
  full_name='DataStoreResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='results', full_name='DataStoreResponse.results', 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='count', full_name='DataStoreResponse.count', 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=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001H\022FTotal number of results on the server (Can be more than len(results)).'))),
    _descriptor.FieldDescriptor(
      name='status', full_name='DataStoreResponse.status', index=2,
      number=3, type=14, cpp_type=8, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='status_desc', full_name='DataStoreResponse.status_desc', 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=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\0014\0222Additional human readable message for the failure.'))),
    _descriptor.FieldDescriptor(
      name='failed_subject', full_name='DataStoreResponse.failed_subject', index=4,
      number=5, 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=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001B\022@In case of failure, the subject that caused the request to fail.'))),
    _descriptor.FieldDescriptor(
      name='request', full_name='DataStoreResponse.request', index=5,
      number=6, 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('\342\374\343\304\001+\022)The request which elicited this response.'))),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _DATASTORERESPONSE_STATUS,
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1088,
  serialized_end=1645,
)

_TIMESTAMPSPEC.fields_by_name['type'].enum_type = _TIMESTAMPSPEC_TYPE
_TIMESTAMPSPEC_TYPE.containing_type = _TIMESTAMPSPEC
_DATASTOREVALUE.fields_by_name['value'].message_type = grr_dot_proto_dot_jobs__pb2._DATABLOB
_DATASTOREVALUE.fields_by_name['timestamp'].message_type = _TIMESTAMPSPEC
_DATASTOREVALUE.fields_by_name['option'].enum_type = _DATASTOREVALUE_OPTION
_DATASTOREVALUE_OPTION.containing_type = _DATASTOREVALUE
_DATASTOREREQUEST.fields_by_name['values'].message_type = _DATASTOREVALUE
_DATASTOREREQUEST.fields_by_name['timestamp'].message_type = _TIMESTAMPSPEC
_DATASTOREREQUEST.fields_by_name['token'].message_type = grr_dot_proto_dot_flows__pb2._ACLTOKEN
_RESULTSET.fields_by_name['values'].message_type = _DATASTOREVALUE
_DATASTORERESPONSE.fields_by_name['results'].message_type = _RESULTSET
_DATASTORERESPONSE.fields_by_name['status'].enum_type = _DATASTORERESPONSE_STATUS
_DATASTORERESPONSE.fields_by_name['request'].message_type = _DATASTOREREQUEST
_DATASTORERESPONSE_STATUS.containing_type = _DATASTORERESPONSE
DESCRIPTOR.message_types_by_name['TimestampSpec'] = _TIMESTAMPSPEC
DESCRIPTOR.message_types_by_name['DataStoreValue'] = _DATASTOREVALUE
DESCRIPTOR.message_types_by_name['DataStoreRequest'] = _DATASTOREREQUEST
DESCRIPTOR.message_types_by_name['ResultSet'] = _RESULTSET
DESCRIPTOR.message_types_by_name['DataStoreResponse'] = _DATASTORERESPONSE
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

TimestampSpec = _reflection.GeneratedProtocolMessageType('TimestampSpec', (_message.Message,), dict(
  DESCRIPTOR = _TIMESTAMPSPEC,
  __module__ = 'grr.proto.data_store_pb2'
  # @@protoc_insertion_point(class_scope:TimestampSpec)
  ))
_sym_db.RegisterMessage(TimestampSpec)

DataStoreValue = _reflection.GeneratedProtocolMessageType('DataStoreValue', (_message.Message,), dict(
  DESCRIPTOR = _DATASTOREVALUE,
  __module__ = 'grr.proto.data_store_pb2'
  # @@protoc_insertion_point(class_scope:DataStoreValue)
  ))
_sym_db.RegisterMessage(DataStoreValue)

DataStoreRequest = _reflection.GeneratedProtocolMessageType('DataStoreRequest', (_message.Message,), dict(
  DESCRIPTOR = _DATASTOREREQUEST,
  __module__ = 'grr.proto.data_store_pb2'
  # @@protoc_insertion_point(class_scope:DataStoreRequest)
  ))
_sym_db.RegisterMessage(DataStoreRequest)

ResultSet = _reflection.GeneratedProtocolMessageType('ResultSet', (_message.Message,), dict(
  DESCRIPTOR = _RESULTSET,
  __module__ = 'grr.proto.data_store_pb2'
  # @@protoc_insertion_point(class_scope:ResultSet)
  ))
_sym_db.RegisterMessage(ResultSet)

DataStoreResponse = _reflection.GeneratedProtocolMessageType('DataStoreResponse', (_message.Message,), dict(
  DESCRIPTOR = _DATASTORERESPONSE,
  __module__ = 'grr.proto.data_store_pb2'
  # @@protoc_insertion_point(class_scope:DataStoreResponse)
  ))
_sym_db.RegisterMessage(DataStoreResponse)


_TIMESTAMPSPEC.fields_by_name['start'].has_options = True
_TIMESTAMPSPEC.fields_by_name['start']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001C\n\013RDFDatetime\0224Start of the timestamp range if type is RANGED_TIME.'))
_TIMESTAMPSPEC.fields_by_name['end'].has_options = True
_TIMESTAMPSPEC.fields_by_name['end']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001A\n\013RDFDatetime\0222End of the timestamp range if type is RANGED_TIME.'))
_DATASTOREREQUEST.fields_by_name['subject'].has_options = True
_DATASTOREREQUEST.fields_by_name['subject']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001+\n\006RDFURN\022!The AFF4 object we interact with.'))
_RESULTSET.fields_by_name['subject'].has_options = True
_RESULTSET.fields_by_name['subject']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001+\n\006RDFURN\022!The AFF4 object we interact with.'))
_RESULTSET.fields_by_name['serialized_result'].has_options = True
_RESULTSET.fields_by_name['serialized_result']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001s\022qRaw field which holds the data serialized in json format.This data will be available using the payload attribute.'))
_DATASTORERESPONSE.fields_by_name['count'].has_options = True
_DATASTORERESPONSE.fields_by_name['count']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001H\022FTotal number of results on the server (Can be more than len(results)).'))
_DATASTORERESPONSE.fields_by_name['status_desc'].has_options = True
_DATASTORERESPONSE.fields_by_name['status_desc']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\0014\0222Additional human readable message for the failure.'))
_DATASTORERESPONSE.fields_by_name['failed_subject'].has_options = True
_DATASTORERESPONSE.fields_by_name['failed_subject']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001B\022@In case of failure, the subject that caused the request to fail.'))
_DATASTORERESPONSE.fields_by_name['request'].has_options = True
_DATASTORERESPONSE.fields_by_name['request']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\342\374\343\304\001+\022)The request which elicited this response.'))
# @@protoc_insertion_point(module_scope)
