# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# NO CHECKED-IN PROTOBUF GENCODE
# source: swh/graph/grpc/swhgraph.proto
# Protobuf Python Version: 5.29.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
from google.protobuf import runtime_version as _runtime_version
from google.protobuf import symbol_database as _symbol_database
from google.protobuf.internal import builder as _builder
_runtime_version.ValidateProtobufRuntimeVersion(
    _runtime_version.Domain.PUBLIC,
    5,
    29,
    0,
    '',
    'swh/graph/grpc/swhgraph.proto'
)
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2


DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1dswh/graph/grpc/swhgraph.proto\x12\tswh.graph\x1a google/protobuf/field_mask.proto\"W\n\x0eGetNodeRequest\x12\r\n\x05swhid\x18\x01 \x01(\t\x12-\n\x04mask\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskH\x00\x88\x01\x01\x42\x07\n\x05_mask\"\x90\x03\n\x10TraversalRequest\x12\x0b\n\x03src\x18\x01 \x03(\t\x12,\n\tdirection\x18\x02 \x01(\x0e\x32\x19.swh.graph.GraphDirection\x12\x12\n\x05\x65\x64ges\x18\x03 \x01(\tH\x00\x88\x01\x01\x12\x16\n\tmax_edges\x18\x04 \x01(\x03H\x01\x88\x01\x01\x12\x16\n\tmin_depth\x18\x05 \x01(\x03H\x02\x88\x01\x01\x12\x16\n\tmax_depth\x18\x06 \x01(\x03H\x03\x88\x01\x01\x12\x30\n\x0creturn_nodes\x18\x07 \x01(\x0b\x32\x15.swh.graph.NodeFilterH\x04\x88\x01\x01\x12-\n\x04mask\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskH\x05\x88\x01\x01\x12\x1f\n\x12max_matching_nodes\x18\t \x01(\x03H\x06\x88\x01\x01\x42\x08\n\x06_edgesB\x0c\n\n_max_edgesB\x0c\n\n_min_depthB\x0c\n\n_max_depthB\x0f\n\r_return_nodesB\x07\n\x05_maskB\x15\n\x13_max_matching_nodes\"\x97\x02\n\x11\x46indPathToRequest\x12\x0b\n\x03src\x18\x01 \x03(\t\x12%\n\x06target\x18\x02 \x01(\x0b\x32\x15.swh.graph.NodeFilter\x12,\n\tdirection\x18\x03 \x01(\x0e\x32\x19.swh.graph.GraphDirection\x12\x12\n\x05\x65\x64ges\x18\x04 \x01(\tH\x00\x88\x01\x01\x12\x16\n\tmax_edges\x18\x05 \x01(\x03H\x01\x88\x01\x01\x12\x16\n\tmax_depth\x18\x06 \x01(\x03H\x02\x88\x01\x01\x12-\n\x04mask\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskH\x03\x88\x01\x01\x42\x08\n\x06_edgesB\x0c\n\n_max_edgesB\x0c\n\n_max_depthB\x07\n\x05_mask\"\x81\x03\n\x16\x46indPathBetweenRequest\x12\x0b\n\x03src\x18\x01 \x03(\t\x12\x0b\n\x03\x64st\x18\x02 \x03(\t\x12,\n\tdirection\x18\x03 \x01(\x0e\x32\x19.swh.graph.GraphDirection\x12\x39\n\x11\x64irection_reverse\x18\x04 \x01(\x0e\x32\x19.swh.graph.GraphDirectionH\x00\x88\x01\x01\x12\x12\n\x05\x65\x64ges\x18\x05 \x01(\tH\x01\x88\x01\x01\x12\x1a\n\redges_reverse\x18\x06 \x01(\tH\x02\x88\x01\x01\x12\x16\n\tmax_edges\x18\x07 \x01(\x03H\x03\x88\x01\x01\x12\x16\n\tmax_depth\x18\x08 \x01(\x03H\x04\x88\x01\x01\x12-\n\x04mask\x18\t \x01(\x0b\x32\x1a.google.protobuf.FieldMaskH\x05\x88\x01\x01\x42\x14\n\x12_direction_reverseB\x08\n\x06_edgesB\x10\n\x0e_edges_reverseB\x0c\n\n_max_edgesB\x0c\n\n_max_depthB\x07\n\x05_mask\"\xb2\x01\n\nNodeFilter\x12\x12\n\x05types\x18\x01 \x01(\tH\x00\x88\x01\x01\x12%\n\x18min_traversal_successors\x18\x02 \x01(\x03H\x01\x88\x01\x01\x12%\n\x18max_traversal_successors\x18\x03 \x01(\x03H\x02\x88\x01\x01\x42\x08\n\x06_typesB\x1b\n\x19_min_traversal_successorsB\x1b\n\x19_max_traversal_successors\"\x92\x02\n\x04Node\x12\r\n\x05swhid\x18\x01 \x01(\t\x12\'\n\tsuccessor\x18\x02 \x03(\x0b\x32\x14.swh.graph.Successor\x12\x1b\n\x0enum_successors\x18\t \x01(\x03H\x01\x88\x01\x01\x12%\n\x03\x63nt\x18\x03 \x01(\x0b\x32\x16.swh.graph.ContentDataH\x00\x12&\n\x03rev\x18\x05 \x01(\x0b\x32\x17.swh.graph.RevisionDataH\x00\x12%\n\x03rel\x18\x06 \x01(\x0b\x32\x16.swh.graph.ReleaseDataH\x00\x12$\n\x03ori\x18\x08 \x01(\x0b\x32\x15.swh.graph.OriginDataH\x00\x42\x06\n\x04\x64\x61taB\x11\n\x0f_num_successors\"U\n\x04Path\x12\x1d\n\x04node\x18\x01 \x03(\x0b\x32\x0f.swh.graph.Node\x12\x1b\n\x0emidpoint_index\x18\x02 \x01(\x05H\x00\x88\x01\x01\x42\x11\n\x0f_midpoint_index\"N\n\tSuccessor\x12\x12\n\x05swhid\x18\x01 \x01(\tH\x00\x88\x01\x01\x12#\n\x05label\x18\x02 \x03(\x0b\x32\x14.swh.graph.EdgeLabelB\x08\n\x06_swhid\"U\n\x0b\x43ontentData\x12\x13\n\x06length\x18\x01 \x01(\x03H\x00\x88\x01\x01\x12\x17\n\nis_skipped\x18\x02 \x01(\x08H\x01\x88\x01\x01\x42\t\n\x07_lengthB\r\n\x0b_is_skipped\"\xc6\x02\n\x0cRevisionData\x12\x13\n\x06\x61uthor\x18\x01 \x01(\x03H\x00\x88\x01\x01\x12\x18\n\x0b\x61uthor_date\x18\x02 \x01(\x03H\x01\x88\x01\x01\x12\x1f\n\x12\x61uthor_date_offset\x18\x03 \x01(\x05H\x02\x88\x01\x01\x12\x16\n\tcommitter\x18\x04 \x01(\x03H\x03\x88\x01\x01\x12\x1b\n\x0e\x63ommitter_date\x18\x05 \x01(\x03H\x04\x88\x01\x01\x12\"\n\x15\x63ommitter_date_offset\x18\x06 \x01(\x05H\x05\x88\x01\x01\x12\x14\n\x07message\x18\x07 \x01(\x0cH\x06\x88\x01\x01\x42\t\n\x07_authorB\x0e\n\x0c_author_dateB\x15\n\x13_author_date_offsetB\x0c\n\n_committerB\x11\n\x0f_committer_dateB\x18\n\x16_committer_date_offsetB\n\n\x08_message\"\xcd\x01\n\x0bReleaseData\x12\x13\n\x06\x61uthor\x18\x01 \x01(\x03H\x00\x88\x01\x01\x12\x18\n\x0b\x61uthor_date\x18\x02 \x01(\x03H\x01\x88\x01\x01\x12\x1f\n\x12\x61uthor_date_offset\x18\x03 \x01(\x05H\x02\x88\x01\x01\x12\x11\n\x04name\x18\x04 \x01(\x0cH\x03\x88\x01\x01\x12\x14\n\x07message\x18\x05 \x01(\x0cH\x04\x88\x01\x01\x42\t\n\x07_authorB\x0e\n\x0c_author_dateB\x15\n\x13_author_date_offsetB\x07\n\x05_nameB\n\n\x08_message\"&\n\nOriginData\x12\x10\n\x03url\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x06\n\x04_url\"\xaf\x01\n\tEdgeLabel\x12\x11\n\x04name\x18\x01 \x01(\x0cH\x00\x88\x01\x01\x12\x17\n\npermission\x18\x02 \x01(\x05H\x01\x88\x01\x01\x12\x1c\n\x0fvisit_timestamp\x18\x03 \x01(\x04H\x02\x88\x01\x01\x12\x1a\n\ris_full_visit\x18\x04 \x01(\x08H\x03\x88\x01\x01\x42\x07\n\x05_nameB\r\n\x0b_permissionB\x12\n\x10_visit_timestampB\x10\n\x0e_is_full_visit\"\x1e\n\rCountResponse\x12\r\n\x05\x63ount\x18\x01 \x01(\x03\"\x0e\n\x0cStatsRequest\"\xdf\x05\n\rStatsResponse\x12\x11\n\tnum_nodes\x18\x01 \x01(\x03\x12\x11\n\tnum_edges\x18\x02 \x01(\x03\x12\x1e\n\x11\x63ompression_ratio\x18\x03 \x01(\x01H\x00\x88\x01\x01\x12\x1a\n\rbits_per_node\x18\x04 \x01(\x01H\x01\x88\x01\x01\x12\x1a\n\rbits_per_edge\x18\x05 \x01(\x01H\x02\x88\x01\x01\x12\x19\n\x0c\x61vg_locality\x18\x06 \x01(\x01H\x03\x88\x01\x01\x12\x14\n\x0cindegree_min\x18\x07 \x01(\x03\x12\x14\n\x0cindegree_max\x18\x08 \x01(\x03\x12\x14\n\x0cindegree_avg\x18\t \x01(\x01\x12\x15\n\routdegree_min\x18\n \x01(\x03\x12\x15\n\routdegree_max\x18\x0b \x01(\x03\x12\x15\n\routdegree_avg\x18\x0c \x01(\x01\x12\x1e\n\x11\x65xport_started_at\x18\r \x01(\x03H\x04\x88\x01\x01\x12\x1c\n\x0f\x65xport_ended_at\x18\x0e \x01(\x03H\x05\x88\x01\x01\x12G\n\x11num_nodes_by_type\x18\x10 \x03(\x0b\x32,.swh.graph.StatsResponse.NumNodesByTypeEntry\x12\x45\n\x10num_arcs_by_type\x18\x11 \x03(\x0b\x32+.swh.graph.StatsResponse.NumArcsByTypeEntry\x1a\x35\n\x13NumNodesByTypeEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x03:\x02\x38\x01\x1a\x34\n\x12NumArcsByTypeEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x03:\x02\x38\x01\x42\x14\n\x12_compression_ratioB\x10\n\x0e_bits_per_nodeB\x10\n\x0e_bits_per_edgeB\x0f\n\r_avg_localityB\x14\n\x12_export_started_atB\x12\n\x10_export_ended_at*+\n\x0eGraphDirection\x12\x0b\n\x07\x46ORWARD\x10\x00\x12\x0c\n\x08\x42\x41\x43KWARD\x10\x01\x32\xcf\x03\n\x10TraversalService\x12\x35\n\x07GetNode\x12\x19.swh.graph.GetNodeRequest\x1a\x0f.swh.graph.Node\x12:\n\x08Traverse\x12\x1b.swh.graph.TraversalRequest\x1a\x0f.swh.graph.Node0\x01\x12;\n\nFindPathTo\x12\x1c.swh.graph.FindPathToRequest\x1a\x0f.swh.graph.Path\x12\x45\n\x0f\x46indPathBetween\x12!.swh.graph.FindPathBetweenRequest\x1a\x0f.swh.graph.Path\x12\x43\n\nCountNodes\x12\x1b.swh.graph.TraversalRequest\x1a\x18.swh.graph.CountResponse\x12\x43\n\nCountEdges\x12\x1b.swh.graph.TraversalRequest\x1a\x18.swh.graph.CountResponse\x12:\n\x05Stats\x12\x17.swh.graph.StatsRequest\x1a\x18.swh.graph.StatsResponseB0\n\x1eorg.softwareheritage.graph.rpcB\x0cGraphServiceP\x01\x62\x06proto3')

_globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'swh.graph.grpc.swhgraph_pb2', _globals)
if not _descriptor._USE_C_DESCRIPTORS:
  _globals['DESCRIPTOR']._loaded_options = None
  _globals['DESCRIPTOR']._serialized_options = b'\n\036org.softwareheritage.graph.rpcB\014GraphServiceP\001'
  _globals['_STATSRESPONSE_NUMNODESBYTYPEENTRY']._loaded_options = None
  _globals['_STATSRESPONSE_NUMNODESBYTYPEENTRY']._serialized_options = b'8\001'
  _globals['_STATSRESPONSE_NUMARCSBYTYPEENTRY']._loaded_options = None
  _globals['_STATSRESPONSE_NUMARCSBYTYPEENTRY']._serialized_options = b'8\001'
  _globals['_GRAPHDIRECTION']._serialized_start=3493
  _globals['_GRAPHDIRECTION']._serialized_end=3536
  _globals['_GETNODEREQUEST']._serialized_start=78
  _globals['_GETNODEREQUEST']._serialized_end=165
  _globals['_TRAVERSALREQUEST']._serialized_start=168
  _globals['_TRAVERSALREQUEST']._serialized_end=568
  _globals['_FINDPATHTOREQUEST']._serialized_start=571
  _globals['_FINDPATHTOREQUEST']._serialized_end=850
  _globals['_FINDPATHBETWEENREQUEST']._serialized_start=853
  _globals['_FINDPATHBETWEENREQUEST']._serialized_end=1238
  _globals['_NODEFILTER']._serialized_start=1241
  _globals['_NODEFILTER']._serialized_end=1419
  _globals['_NODE']._serialized_start=1422
  _globals['_NODE']._serialized_end=1696
  _globals['_PATH']._serialized_start=1698
  _globals['_PATH']._serialized_end=1783
  _globals['_SUCCESSOR']._serialized_start=1785
  _globals['_SUCCESSOR']._serialized_end=1863
  _globals['_CONTENTDATA']._serialized_start=1865
  _globals['_CONTENTDATA']._serialized_end=1950
  _globals['_REVISIONDATA']._serialized_start=1953
  _globals['_REVISIONDATA']._serialized_end=2279
  _globals['_RELEASEDATA']._serialized_start=2282
  _globals['_RELEASEDATA']._serialized_end=2487
  _globals['_ORIGINDATA']._serialized_start=2489
  _globals['_ORIGINDATA']._serialized_end=2527
  _globals['_EDGELABEL']._serialized_start=2530
  _globals['_EDGELABEL']._serialized_end=2705
  _globals['_COUNTRESPONSE']._serialized_start=2707
  _globals['_COUNTRESPONSE']._serialized_end=2737
  _globals['_STATSREQUEST']._serialized_start=2739
  _globals['_STATSREQUEST']._serialized_end=2753
  _globals['_STATSRESPONSE']._serialized_start=2756
  _globals['_STATSRESPONSE']._serialized_end=3491
  _globals['_STATSRESPONSE_NUMNODESBYTYPEENTRY']._serialized_start=3267
  _globals['_STATSRESPONSE_NUMNODESBYTYPEENTRY']._serialized_end=3320
  _globals['_STATSRESPONSE_NUMARCSBYTYPEENTRY']._serialized_start=3322
  _globals['_STATSRESPONSE_NUMARCSBYTYPEENTRY']._serialized_end=3374
  _globals['_TRAVERSALSERVICE']._serialized_start=3539
  _globals['_TRAVERSALSERVICE']._serialized_end=4002
# @@protoc_insertion_point(module_scope)
