| /* |
| * Copyright 2016 The Kythe Authors. All rights reserved. |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| syntax = "proto3"; |
| |
| package kythe.proto; |
| |
| option go_package = "status_service_go_proto"; |
| option java_package = "com.google.devtools.kythe.proto"; |
| |
| // StatusService provides clients a way to request information about the data |
| // provided by another Kythe service such as XRefService. Clients can use this |
| // to inform decisions about what requests to make to the primary service. |
| service StatusService { |
| rpc Status(StatusRequest) returns (StatusReply) {} |
| } |
| |
| message StatusRequest {} |
| |
| message StatusReply { |
| // The origins of the data served by this endpoint. |
| repeated Origin origins = 1; |
| |
| message Origin { |
| string corpus = 1; // The corpus label |
| string revision = 2; // The revision marker of the data |
| } |
| |
| // The languages supported by this endpoint. |
| repeated Language languages = 2; |
| |
| message Language { |
| string name = 1; // the language name (see kythe.io/docs/schema) |
| Support support = 2; // the language support level |
| |
| enum Support { |
| UNSUPPORTED = 0; // the language is known but unsupported |
| EXPERIMENTAL = 1; // support for this language is experimental |
| SUPPORTED = 2; // the language is fully supported |
| } |
| } |
| |
| // An index may comprise data from multiple build origins. An index_version |
| // is an opaque identifier for a complete index, encompassing all reported |
| // origins being served. This is usually distinct from each origin's |
| // revision, and may be as simple as a timestamp at which the serving data |
| // were created. |
| string index_version = 3; |
| } |