syntax = "proto3";

package envoy.type.matcher.v3;

import "udpa/annotations/status.proto";

option java_package = "io.envoyproxy.envoy.type.matcher.v3";
option java_outer_classname = "StatusCodeInputProto";
option java_multiple_files = true;
option go_package = "github.com/envoyproxy/go-control-plane/envoy/type/matcher/v3;matcherv3";
option (udpa.annotations.file_status).package_version_status = ACTIVE;

// [#protodoc-title: Common HTTP Inputs]

// Match input indicates that matching should be done on the response status
// code.
message HttpResponseStatusCodeMatchInput {
}

// Match input indicates that the matching should be done on the class of the
// response status code. For eg: 1xx, 2xx, 3xx, 4xx or 5xx.
message HttpResponseStatusCodeClassMatchInput {
}

// This match input determines whether the response is a local reply which gets
// generated by Envoy or a response from the upstream.
//
// The input string is ``true`` for local replies and ``false`` for the upstream
// responses.
//
// It can be used with the ``custom_response`` filter to apply policies only to
// the Envoy generated local replies.
// [#extension: envoy.matching.inputs.local_reply]
message HttpResponseLocalReplyMatchInput {
}
