envoyproxy / java-control-plane

Java implementation of an Envoy gRPC control plane
Apache License 2.0
293 stars 136 forks source link

Old gRPC protobuf definition #115

Closed ViacheslavSamsonov closed 5 years ago

ViacheslavSamsonov commented 5 years ago

GRPC protobuff attribute_context.proto does not contain field "body" with index 11.

You can see difference in the next files:

Java-control-plane repo definition: ` ... message HttpRequest { // The unique ID for a request, which can be propagated to downstream // systems. The ID should have low probability of collision // within a single day for a specific service. // For HTTP requests, it should be X-Request-ID or equivalent. string id = 1;

// The HTTP request method, such as `GET`, `POST`.
string method = 2;

// The HTTP request headers. If multiple headers share the same key, they
// must be merged according to the HTTP spec. All header keys must be
// lowercased, because HTTP header keys are case-insensitive.
map<string, string> headers = 3;

// The HTTP URL path.
string path = 4;

// The HTTP request `Host` or 'Authority` header value.
string host = 5;

// The HTTP URL scheme, such as `http` and `https`.
string scheme = 6;

// The HTTP URL query in the format of `name1=value`&name2=value2`, as it
// appears in the first line of the HTTP request. No decoding is performed.
string query = 7;

// The HTTP URL fragment, excluding leading `#`. No URL decoding is performed.
string fragment = 8;

// The HTTP request size in bytes. If unknown, it must be -1.
int64 size = 9;

// The network protocol used with the request, such as
// "http/1.1", "spdy/3", "h2", "h2c"
string protocol = 10;

} .... `

Envoy proxy repo definition:

` ... message HttpRequest { // The unique ID for a request, which can be propagated to downstream // systems. The ID should have low probability of collision // within a single day for a specific service. // For HTTP requests, it should be X-Request-ID or equivalent. string id = 1;

// The HTTP request method, such as `GET`, `POST`.
string method = 2;

// The HTTP request headers. If multiple headers share the same key, they
// must be merged according to the HTTP spec. All header keys must be
// lowercased, because HTTP header keys are case-insensitive.
map<string, string> headers = 3;

// The request target, as it appears in the first line of the HTTP request. This includes
// the URL path and query-string. No decoding is performed.
string path = 4;

// The HTTP request `Host` or 'Authority` header value.
string host = 5;

// The HTTP URL scheme, such as `http` and `https`.
string scheme = 6;

// This field is always empty, and exists for compatibility reasons. The HTTP URL query is
// included in `path` field.
string query = 7;

// This field is always empty, and exists for compatibility reasons. The URL fragment is
// not submitted as part of HTTP requests; it is unknowable.
string fragment = 8;

// The HTTP request size in bytes. If unknown, it must be -1.
int64 size = 9;

// The network protocol used with the request, such as "HTTP/1.0", "HTTP/1.1", or "HTTP/2".
//
// See :repo:`headers.h:ProtocolStrings <source/common/http/headers.h>` for a list of all
// possible values.
string protocol = 10;

// The HTTP request body.
string body = 11;

} ... `

jakubdyszkiewicz commented 5 years ago

@ViacheslavSamsonov I updated proto definitions.