
io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.scala Maven / Gradle / Ivy
// Generated by the Scala Plugin for the Protocol Buffer Compiler.
// Do not edit!
//
// Protofile syntax: PROTO3
package io.envoyproxy.envoy.service.ratelimit.v3
/** A response from a ShouldRateLimit call.
* [#next-free-field: 8]
*
* @param overallCode
* The overall response code which takes into account all of the descriptors that were passed
* in the RateLimitRequest message.
* @param statuses
* A list of DescriptorStatus messages which matches the length of the descriptor list passed
* in the RateLimitRequest. This can be used by the caller to determine which individual
* descriptors failed and/or what the currently configured limits are for all of them.
* @param responseHeadersToAdd
* A list of headers to add to the response
* @param requestHeadersToAdd
* A list of headers to add to the request when forwarded
* @param rawBody
* A response body to send to the downstream client when the response code is not OK.
* @param dynamicMetadata
* Optional response metadata that will be emitted as dynamic metadata to be consumed by the next
* filter. This metadata lives in a namespace specified by the canonical name of extension filter
* that requires it:
*
* - :ref:`envoy.filters.http.ratelimit <config_http_filters_ratelimit_dynamic_metadata>` for HTTP filter.
* - :ref:`envoy.filters.network.ratelimit <config_network_filters_ratelimit_dynamic_metadata>` for network filter.
* - :ref:`envoy.filters.thrift.rate_limit <config_thrift_filters_rate_limit_dynamic_metadata>` for Thrift filter.
* @param quota
* Quota is available for a request if its entire descriptor set has cached quota available.
* This is a union of all descriptors in the descriptor set. Clients can use the quota for future matches if and only if the descriptor set matches what was sent in the request that originated this response.
*
* If quota is available, a RLS request will not be made and the quota will be reduced by 1.
* If quota is not available (i.e., a cached entry doesn't exist for a RLS descriptor set), a RLS request will be triggered.
* If the server did not provide a quota, such as the quota message is empty then the request admission is determined by the
* :ref:`overall_code <envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.overall_code>`.
*
* If there is not sufficient quota and the cached entry exists for a RLS descriptor set is out-of-quota but not expired,
* the request will be treated as OVER_LIMIT.
* [#not-implemented-hide:]
*/
@SerialVersionUID(0L)
final case class RateLimitResponse(
overallCode: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code.UNKNOWN,
statuses: _root_.scala.Seq[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus] = _root_.scala.Seq.empty,
responseHeadersToAdd: _root_.scala.Seq[io.envoyproxy.envoy.config.core.v3.HeaderValue] = _root_.scala.Seq.empty,
requestHeadersToAdd: _root_.scala.Seq[io.envoyproxy.envoy.config.core.v3.HeaderValue] = _root_.scala.Seq.empty,
rawBody: _root_.com.google.protobuf.ByteString = _root_.com.google.protobuf.ByteString.EMPTY,
dynamicMetadata: _root_.scala.Option[com.google.protobuf.struct.Struct] = _root_.scala.None,
quota: _root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota] = _root_.scala.None,
unknownFields: _root_.scalapb.UnknownFieldSet = _root_.scalapb.UnknownFieldSet.empty
) extends scalapb.GeneratedMessage with scalapb.lenses.Updatable[RateLimitResponse] {
@transient
private[this] var __serializedSizeMemoized: _root_.scala.Int = 0
private[this] def __computeSerializedSize(): _root_.scala.Int = {
var __size = 0
{
val __value = overallCode.value
if (__value != 0) {
__size += _root_.com.google.protobuf.CodedOutputStream.computeEnumSize(1, __value)
}
};
statuses.foreach { __item =>
val __value = __item
__size += 1 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
}
responseHeadersToAdd.foreach { __item =>
val __value = __item
__size += 1 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
}
requestHeadersToAdd.foreach { __item =>
val __value = __item
__size += 1 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
}
{
val __value = rawBody
if (!__value.isEmpty) {
__size += _root_.com.google.protobuf.CodedOutputStream.computeBytesSize(5, __value)
}
};
if (dynamicMetadata.isDefined) {
val __value = dynamicMetadata.get
__size += 1 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
};
if (quota.isDefined) {
val __value = quota.get
__size += 1 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
};
__size += unknownFields.serializedSize
__size
}
override def serializedSize: _root_.scala.Int = {
var __size = __serializedSizeMemoized
if (__size == 0) {
__size = __computeSerializedSize() + 1
__serializedSizeMemoized = __size
}
__size - 1
}
def writeTo(`_output__`: _root_.com.google.protobuf.CodedOutputStream): _root_.scala.Unit = {
{
val __v = overallCode.value
if (__v != 0) {
_output__.writeEnum(1, __v)
}
};
statuses.foreach { __v =>
val __m = __v
_output__.writeTag(2, 2)
_output__.writeUInt32NoTag(__m.serializedSize)
__m.writeTo(_output__)
};
responseHeadersToAdd.foreach { __v =>
val __m = __v
_output__.writeTag(3, 2)
_output__.writeUInt32NoTag(__m.serializedSize)
__m.writeTo(_output__)
};
requestHeadersToAdd.foreach { __v =>
val __m = __v
_output__.writeTag(4, 2)
_output__.writeUInt32NoTag(__m.serializedSize)
__m.writeTo(_output__)
};
{
val __v = rawBody
if (!__v.isEmpty) {
_output__.writeBytes(5, __v)
}
};
dynamicMetadata.foreach { __v =>
val __m = __v
_output__.writeTag(6, 2)
_output__.writeUInt32NoTag(__m.serializedSize)
__m.writeTo(_output__)
};
quota.foreach { __v =>
val __m = __v
_output__.writeTag(7, 2)
_output__.writeUInt32NoTag(__m.serializedSize)
__m.writeTo(_output__)
};
unknownFields.writeTo(_output__)
}
def withOverallCode(__v: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code): RateLimitResponse = copy(overallCode = __v)
def clearStatuses = copy(statuses = _root_.scala.Seq.empty)
def addStatuses(__vs: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus *): RateLimitResponse = addAllStatuses(__vs)
def addAllStatuses(__vs: Iterable[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus]): RateLimitResponse = copy(statuses = statuses ++ __vs)
def withStatuses(__v: _root_.scala.Seq[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus]): RateLimitResponse = copy(statuses = __v)
def clearResponseHeadersToAdd = copy(responseHeadersToAdd = _root_.scala.Seq.empty)
def addResponseHeadersToAdd(__vs: io.envoyproxy.envoy.config.core.v3.HeaderValue *): RateLimitResponse = addAllResponseHeadersToAdd(__vs)
def addAllResponseHeadersToAdd(__vs: Iterable[io.envoyproxy.envoy.config.core.v3.HeaderValue]): RateLimitResponse = copy(responseHeadersToAdd = responseHeadersToAdd ++ __vs)
def withResponseHeadersToAdd(__v: _root_.scala.Seq[io.envoyproxy.envoy.config.core.v3.HeaderValue]): RateLimitResponse = copy(responseHeadersToAdd = __v)
def clearRequestHeadersToAdd = copy(requestHeadersToAdd = _root_.scala.Seq.empty)
def addRequestHeadersToAdd(__vs: io.envoyproxy.envoy.config.core.v3.HeaderValue *): RateLimitResponse = addAllRequestHeadersToAdd(__vs)
def addAllRequestHeadersToAdd(__vs: Iterable[io.envoyproxy.envoy.config.core.v3.HeaderValue]): RateLimitResponse = copy(requestHeadersToAdd = requestHeadersToAdd ++ __vs)
def withRequestHeadersToAdd(__v: _root_.scala.Seq[io.envoyproxy.envoy.config.core.v3.HeaderValue]): RateLimitResponse = copy(requestHeadersToAdd = __v)
def withRawBody(__v: _root_.com.google.protobuf.ByteString): RateLimitResponse = copy(rawBody = __v)
def getDynamicMetadata: com.google.protobuf.struct.Struct = dynamicMetadata.getOrElse(com.google.protobuf.struct.Struct.defaultInstance)
def clearDynamicMetadata: RateLimitResponse = copy(dynamicMetadata = _root_.scala.None)
def withDynamicMetadata(__v: com.google.protobuf.struct.Struct): RateLimitResponse = copy(dynamicMetadata = Option(__v))
def getQuota: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota = quota.getOrElse(io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.defaultInstance)
def clearQuota: RateLimitResponse = copy(quota = _root_.scala.None)
def withQuota(__v: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota): RateLimitResponse = copy(quota = Option(__v))
def withUnknownFields(__v: _root_.scalapb.UnknownFieldSet) = copy(unknownFields = __v)
def discardUnknownFields = copy(unknownFields = _root_.scalapb.UnknownFieldSet.empty)
def getFieldByNumber(__fieldNumber: _root_.scala.Int): _root_.scala.Any = {
(__fieldNumber: @_root_.scala.unchecked) match {
case 1 => {
val __t = overallCode.javaValueDescriptor
if (__t.getNumber() != 0) __t else null
}
case 2 => statuses
case 3 => responseHeadersToAdd
case 4 => requestHeadersToAdd
case 5 => {
val __t = rawBody
if (__t != _root_.com.google.protobuf.ByteString.EMPTY) __t else null
}
case 6 => dynamicMetadata.orNull
case 7 => quota.orNull
}
}
def getField(__field: _root_.scalapb.descriptors.FieldDescriptor): _root_.scalapb.descriptors.PValue = {
_root_.scala.Predef.require(__field.containingMessage eq companion.scalaDescriptor)
(__field.number: @_root_.scala.unchecked) match {
case 1 => _root_.scalapb.descriptors.PEnum(overallCode.scalaValueDescriptor)
case 2 => _root_.scalapb.descriptors.PRepeated(statuses.iterator.map(_.toPMessage).toVector)
case 3 => _root_.scalapb.descriptors.PRepeated(responseHeadersToAdd.iterator.map(_.toPMessage).toVector)
case 4 => _root_.scalapb.descriptors.PRepeated(requestHeadersToAdd.iterator.map(_.toPMessage).toVector)
case 5 => _root_.scalapb.descriptors.PByteString(rawBody)
case 6 => dynamicMetadata.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
case 7 => quota.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
}
}
def toProtoString: _root_.scala.Predef.String = _root_.scalapb.TextFormat.printToUnicodeString(this)
def companion: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.type = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse
// @@protoc_insertion_point(GeneratedMessage[envoy.service.ratelimit.v3.RateLimitResponse])
}
object RateLimitResponse extends scalapb.GeneratedMessageCompanion[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse] {
implicit def messageCompanion: scalapb.GeneratedMessageCompanion[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse] = this
def parseFrom(`_input__`: _root_.com.google.protobuf.CodedInputStream): io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse = {
var __overallCode: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code.UNKNOWN
val __statuses: _root_.scala.collection.immutable.VectorBuilder[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus] = new _root_.scala.collection.immutable.VectorBuilder[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus]
val __responseHeadersToAdd: _root_.scala.collection.immutable.VectorBuilder[io.envoyproxy.envoy.config.core.v3.HeaderValue] = new _root_.scala.collection.immutable.VectorBuilder[io.envoyproxy.envoy.config.core.v3.HeaderValue]
val __requestHeadersToAdd: _root_.scala.collection.immutable.VectorBuilder[io.envoyproxy.envoy.config.core.v3.HeaderValue] = new _root_.scala.collection.immutable.VectorBuilder[io.envoyproxy.envoy.config.core.v3.HeaderValue]
var __rawBody: _root_.com.google.protobuf.ByteString = _root_.com.google.protobuf.ByteString.EMPTY
var __dynamicMetadata: _root_.scala.Option[com.google.protobuf.struct.Struct] = _root_.scala.None
var __quota: _root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota] = _root_.scala.None
var `_unknownFields__`: _root_.scalapb.UnknownFieldSet.Builder = null
var _done__ = false
while (!_done__) {
val _tag__ = _input__.readTag()
_tag__ match {
case 0 => _done__ = true
case 8 =>
__overallCode = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code.fromValue(_input__.readEnum())
case 18 =>
__statuses += _root_.scalapb.LiteParser.readMessage[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus](_input__)
case 26 =>
__responseHeadersToAdd += _root_.scalapb.LiteParser.readMessage[io.envoyproxy.envoy.config.core.v3.HeaderValue](_input__)
case 34 =>
__requestHeadersToAdd += _root_.scalapb.LiteParser.readMessage[io.envoyproxy.envoy.config.core.v3.HeaderValue](_input__)
case 42 =>
__rawBody = _input__.readBytes()
case 50 =>
__dynamicMetadata = Option(__dynamicMetadata.fold(_root_.scalapb.LiteParser.readMessage[com.google.protobuf.struct.Struct](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
case 58 =>
__quota = Option(__quota.fold(_root_.scalapb.LiteParser.readMessage[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
case tag =>
if (_unknownFields__ == null) {
_unknownFields__ = new _root_.scalapb.UnknownFieldSet.Builder()
}
_unknownFields__.parseField(tag, _input__)
}
}
io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse(
overallCode = __overallCode,
statuses = __statuses.result(),
responseHeadersToAdd = __responseHeadersToAdd.result(),
requestHeadersToAdd = __requestHeadersToAdd.result(),
rawBody = __rawBody,
dynamicMetadata = __dynamicMetadata,
quota = __quota,
unknownFields = if (_unknownFields__ == null) _root_.scalapb.UnknownFieldSet.empty else _unknownFields__.result()
)
}
implicit def messageReads: _root_.scalapb.descriptors.Reads[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse] = _root_.scalapb.descriptors.Reads{
case _root_.scalapb.descriptors.PMessage(__fieldsMap) =>
_root_.scala.Predef.require(__fieldsMap.keys.forall(_.containingMessage eq scalaDescriptor), "FieldDescriptor does not match message type.")
io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse(
overallCode = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code.fromValue(__fieldsMap.get(scalaDescriptor.findFieldByNumber(1).get).map(_.as[_root_.scalapb.descriptors.EnumValueDescriptor]).getOrElse(io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code.UNKNOWN.scalaValueDescriptor).number),
statuses = __fieldsMap.get(scalaDescriptor.findFieldByNumber(2).get).map(_.as[_root_.scala.Seq[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus]]).getOrElse(_root_.scala.Seq.empty),
responseHeadersToAdd = __fieldsMap.get(scalaDescriptor.findFieldByNumber(3).get).map(_.as[_root_.scala.Seq[io.envoyproxy.envoy.config.core.v3.HeaderValue]]).getOrElse(_root_.scala.Seq.empty),
requestHeadersToAdd = __fieldsMap.get(scalaDescriptor.findFieldByNumber(4).get).map(_.as[_root_.scala.Seq[io.envoyproxy.envoy.config.core.v3.HeaderValue]]).getOrElse(_root_.scala.Seq.empty),
rawBody = __fieldsMap.get(scalaDescriptor.findFieldByNumber(5).get).map(_.as[_root_.com.google.protobuf.ByteString]).getOrElse(_root_.com.google.protobuf.ByteString.EMPTY),
dynamicMetadata = __fieldsMap.get(scalaDescriptor.findFieldByNumber(6).get).flatMap(_.as[_root_.scala.Option[com.google.protobuf.struct.Struct]]),
quota = __fieldsMap.get(scalaDescriptor.findFieldByNumber(7).get).flatMap(_.as[_root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota]])
)
case _ => throw new RuntimeException("Expected PMessage")
}
def javaDescriptor: _root_.com.google.protobuf.Descriptors.Descriptor = RlsProto.javaDescriptor.getMessageTypes().get(1)
def scalaDescriptor: _root_.scalapb.descriptors.Descriptor = RlsProto.scalaDescriptor.messages(1)
def messageCompanionForFieldNumber(__number: _root_.scala.Int): _root_.scalapb.GeneratedMessageCompanion[_] = {
var __out: _root_.scalapb.GeneratedMessageCompanion[_] = null
(__number: @_root_.scala.unchecked) match {
case 2 => __out = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus
case 3 => __out = io.envoyproxy.envoy.config.core.v3.HeaderValue
case 4 => __out = io.envoyproxy.envoy.config.core.v3.HeaderValue
case 6 => __out = com.google.protobuf.struct.Struct
case 7 => __out = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota
}
__out
}
lazy val nestedMessagesCompanions: Seq[_root_.scalapb.GeneratedMessageCompanion[_ <: _root_.scalapb.GeneratedMessage]] =
Seq[_root_.scalapb.GeneratedMessageCompanion[_ <: _root_.scalapb.GeneratedMessage]](
_root_.io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit,
_root_.io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota,
_root_.io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus
)
def enumCompanionForFieldNumber(__fieldNumber: _root_.scala.Int): _root_.scalapb.GeneratedEnumCompanion[_] = {
(__fieldNumber: @_root_.scala.unchecked) match {
case 1 => io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code
}
}
lazy val defaultInstance = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse(
overallCode = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code.UNKNOWN,
statuses = _root_.scala.Seq.empty,
responseHeadersToAdd = _root_.scala.Seq.empty,
requestHeadersToAdd = _root_.scala.Seq.empty,
rawBody = _root_.com.google.protobuf.ByteString.EMPTY,
dynamicMetadata = _root_.scala.None,
quota = _root_.scala.None
)
sealed abstract class Code(val value: _root_.scala.Int) extends _root_.scalapb.GeneratedEnum {
type EnumType = Code
def isUnknown: _root_.scala.Boolean = false
def isOk: _root_.scala.Boolean = false
def isOverLimit: _root_.scala.Boolean = false
def companion: _root_.scalapb.GeneratedEnumCompanion[Code] = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code
final def asRecognized: _root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code.Recognized] = if (isUnrecognized) _root_.scala.None else _root_.scala.Some(this.asInstanceOf[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code.Recognized])
}
object Code extends _root_.scalapb.GeneratedEnumCompanion[Code] {
sealed trait Recognized extends Code
implicit def enumCompanion: _root_.scalapb.GeneratedEnumCompanion[Code] = this
/** The response code is not known.
*/
@SerialVersionUID(0L)
case object UNKNOWN extends Code(0) with Code.Recognized {
val index = 0
val name = "UNKNOWN"
override def isUnknown: _root_.scala.Boolean = true
}
/** The response code to notify that the number of requests are under limit.
*/
@SerialVersionUID(0L)
case object OK extends Code(1) with Code.Recognized {
val index = 1
val name = "OK"
override def isOk: _root_.scala.Boolean = true
}
/** The response code to notify that the number of requests are over limit.
*/
@SerialVersionUID(0L)
case object OVER_LIMIT extends Code(2) with Code.Recognized {
val index = 2
val name = "OVER_LIMIT"
override def isOverLimit: _root_.scala.Boolean = true
}
@SerialVersionUID(0L)
final case class Unrecognized(unrecognizedValue: _root_.scala.Int) extends Code(unrecognizedValue) with _root_.scalapb.UnrecognizedEnum
lazy val values = scala.collection.immutable.Seq(UNKNOWN, OK, OVER_LIMIT)
def fromValue(__value: _root_.scala.Int): Code = __value match {
case 0 => UNKNOWN
case 1 => OK
case 2 => OVER_LIMIT
case __other => Unrecognized(__other)
}
def javaDescriptor: _root_.com.google.protobuf.Descriptors.EnumDescriptor = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.javaDescriptor.getEnumTypes().get(0)
def scalaDescriptor: _root_.scalapb.descriptors.EnumDescriptor = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.scalaDescriptor.enums(0)
}
/** Defines an actual rate limit in terms of requests per unit of time and the unit itself.
*
* @param name
* A name or description of this limit.
* @param requestsPerUnit
* The number of requests per unit of time.
* @param unit
* The unit of time.
*/
@SerialVersionUID(0L)
final case class RateLimit(
name: _root_.scala.Predef.String = "",
requestsPerUnit: _root_.scala.Int = 0,
unit: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.Unit = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.Unit.UNKNOWN,
unknownFields: _root_.scalapb.UnknownFieldSet = _root_.scalapb.UnknownFieldSet.empty
) extends scalapb.GeneratedMessage with scalapb.lenses.Updatable[RateLimit] {
@transient
private[this] var __serializedSizeMemoized: _root_.scala.Int = 0
private[this] def __computeSerializedSize(): _root_.scala.Int = {
var __size = 0
{
val __value = name
if (!__value.isEmpty) {
__size += _root_.com.google.protobuf.CodedOutputStream.computeStringSize(3, __value)
}
};
{
val __value = requestsPerUnit
if (__value != 0) {
__size += _root_.com.google.protobuf.CodedOutputStream.computeUInt32Size(1, __value)
}
};
{
val __value = unit.value
if (__value != 0) {
__size += _root_.com.google.protobuf.CodedOutputStream.computeEnumSize(2, __value)
}
};
__size += unknownFields.serializedSize
__size
}
override def serializedSize: _root_.scala.Int = {
var __size = __serializedSizeMemoized
if (__size == 0) {
__size = __computeSerializedSize() + 1
__serializedSizeMemoized = __size
}
__size - 1
}
def writeTo(`_output__`: _root_.com.google.protobuf.CodedOutputStream): _root_.scala.Unit = {
{
val __v = requestsPerUnit
if (__v != 0) {
_output__.writeUInt32(1, __v)
}
};
{
val __v = unit.value
if (__v != 0) {
_output__.writeEnum(2, __v)
}
};
{
val __v = name
if (!__v.isEmpty) {
_output__.writeString(3, __v)
}
};
unknownFields.writeTo(_output__)
}
def withName(__v: _root_.scala.Predef.String): RateLimit = copy(name = __v)
def withRequestsPerUnit(__v: _root_.scala.Int): RateLimit = copy(requestsPerUnit = __v)
def withUnit(__v: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.Unit): RateLimit = copy(unit = __v)
def withUnknownFields(__v: _root_.scalapb.UnknownFieldSet) = copy(unknownFields = __v)
def discardUnknownFields = copy(unknownFields = _root_.scalapb.UnknownFieldSet.empty)
def getFieldByNumber(__fieldNumber: _root_.scala.Int): _root_.scala.Any = {
(__fieldNumber: @_root_.scala.unchecked) match {
case 3 => {
val __t = name
if (__t != "") __t else null
}
case 1 => {
val __t = requestsPerUnit
if (__t != 0) __t else null
}
case 2 => {
val __t = unit.javaValueDescriptor
if (__t.getNumber() != 0) __t else null
}
}
}
def getField(__field: _root_.scalapb.descriptors.FieldDescriptor): _root_.scalapb.descriptors.PValue = {
_root_.scala.Predef.require(__field.containingMessage eq companion.scalaDescriptor)
(__field.number: @_root_.scala.unchecked) match {
case 3 => _root_.scalapb.descriptors.PString(name)
case 1 => _root_.scalapb.descriptors.PInt(requestsPerUnit)
case 2 => _root_.scalapb.descriptors.PEnum(unit.scalaValueDescriptor)
}
}
def toProtoString: _root_.scala.Predef.String = _root_.scalapb.TextFormat.printToUnicodeString(this)
def companion: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.type = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit
// @@protoc_insertion_point(GeneratedMessage[envoy.service.ratelimit.v3.RateLimitResponse.RateLimit])
}
object RateLimit extends scalapb.GeneratedMessageCompanion[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit] {
implicit def messageCompanion: scalapb.GeneratedMessageCompanion[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit] = this
def parseFrom(`_input__`: _root_.com.google.protobuf.CodedInputStream): io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit = {
var __name: _root_.scala.Predef.String = ""
var __requestsPerUnit: _root_.scala.Int = 0
var __unit: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.Unit = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.Unit.UNKNOWN
var `_unknownFields__`: _root_.scalapb.UnknownFieldSet.Builder = null
var _done__ = false
while (!_done__) {
val _tag__ = _input__.readTag()
_tag__ match {
case 0 => _done__ = true
case 26 =>
__name = _input__.readStringRequireUtf8()
case 8 =>
__requestsPerUnit = _input__.readUInt32()
case 16 =>
__unit = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.Unit.fromValue(_input__.readEnum())
case tag =>
if (_unknownFields__ == null) {
_unknownFields__ = new _root_.scalapb.UnknownFieldSet.Builder()
}
_unknownFields__.parseField(tag, _input__)
}
}
io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit(
name = __name,
requestsPerUnit = __requestsPerUnit,
unit = __unit,
unknownFields = if (_unknownFields__ == null) _root_.scalapb.UnknownFieldSet.empty else _unknownFields__.result()
)
}
implicit def messageReads: _root_.scalapb.descriptors.Reads[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit] = _root_.scalapb.descriptors.Reads{
case _root_.scalapb.descriptors.PMessage(__fieldsMap) =>
_root_.scala.Predef.require(__fieldsMap.keys.forall(_.containingMessage eq scalaDescriptor), "FieldDescriptor does not match message type.")
io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit(
name = __fieldsMap.get(scalaDescriptor.findFieldByNumber(3).get).map(_.as[_root_.scala.Predef.String]).getOrElse(""),
requestsPerUnit = __fieldsMap.get(scalaDescriptor.findFieldByNumber(1).get).map(_.as[_root_.scala.Int]).getOrElse(0),
unit = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.Unit.fromValue(__fieldsMap.get(scalaDescriptor.findFieldByNumber(2).get).map(_.as[_root_.scalapb.descriptors.EnumValueDescriptor]).getOrElse(io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.Unit.UNKNOWN.scalaValueDescriptor).number)
)
case _ => throw new RuntimeException("Expected PMessage")
}
def javaDescriptor: _root_.com.google.protobuf.Descriptors.Descriptor = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.javaDescriptor.getNestedTypes().get(0)
def scalaDescriptor: _root_.scalapb.descriptors.Descriptor = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.scalaDescriptor.nestedMessages(0)
def messageCompanionForFieldNumber(__number: _root_.scala.Int): _root_.scalapb.GeneratedMessageCompanion[_] = throw new MatchError(__number)
lazy val nestedMessagesCompanions: Seq[_root_.scalapb.GeneratedMessageCompanion[_ <: _root_.scalapb.GeneratedMessage]] = Seq.empty
def enumCompanionForFieldNumber(__fieldNumber: _root_.scala.Int): _root_.scalapb.GeneratedEnumCompanion[_] = {
(__fieldNumber: @_root_.scala.unchecked) match {
case 2 => io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.Unit
}
}
lazy val defaultInstance = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit(
name = "",
requestsPerUnit = 0,
unit = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.Unit.UNKNOWN
)
/** Identifies the unit of of time for rate limit.
* [#comment: replace by envoy/type/v3/ratelimit_unit.proto in v4]
*/
sealed abstract class Unit(val value: _root_.scala.Int) extends _root_.scalapb.GeneratedEnum {
type EnumType = Unit
def isUnknown: _root_.scala.Boolean = false
def isSecond: _root_.scala.Boolean = false
def isMinute: _root_.scala.Boolean = false
def isHour: _root_.scala.Boolean = false
def isDay: _root_.scala.Boolean = false
def companion: _root_.scalapb.GeneratedEnumCompanion[Unit] = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.Unit
final def asRecognized: _root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.Unit.Recognized] = if (isUnrecognized) _root_.scala.None else _root_.scala.Some(this.asInstanceOf[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.Unit.Recognized])
}
object Unit extends _root_.scalapb.GeneratedEnumCompanion[Unit] {
sealed trait Recognized extends Unit
implicit def enumCompanion: _root_.scalapb.GeneratedEnumCompanion[Unit] = this
/** The time unit is not known.
*/
@SerialVersionUID(0L)
case object UNKNOWN extends Unit(0) with Unit.Recognized {
val index = 0
val name = "UNKNOWN"
override def isUnknown: _root_.scala.Boolean = true
}
/** The time unit representing a second.
*/
@SerialVersionUID(0L)
case object SECOND extends Unit(1) with Unit.Recognized {
val index = 1
val name = "SECOND"
override def isSecond: _root_.scala.Boolean = true
}
/** The time unit representing a minute.
*/
@SerialVersionUID(0L)
case object MINUTE extends Unit(2) with Unit.Recognized {
val index = 2
val name = "MINUTE"
override def isMinute: _root_.scala.Boolean = true
}
/** The time unit representing an hour.
*/
@SerialVersionUID(0L)
case object HOUR extends Unit(3) with Unit.Recognized {
val index = 3
val name = "HOUR"
override def isHour: _root_.scala.Boolean = true
}
/** The time unit representing a day.
*/
@SerialVersionUID(0L)
case object DAY extends Unit(4) with Unit.Recognized {
val index = 4
val name = "DAY"
override def isDay: _root_.scala.Boolean = true
}
@SerialVersionUID(0L)
final case class Unrecognized(unrecognizedValue: _root_.scala.Int) extends Unit(unrecognizedValue) with _root_.scalapb.UnrecognizedEnum
lazy val values = scala.collection.immutable.Seq(UNKNOWN, SECOND, MINUTE, HOUR, DAY)
def fromValue(__value: _root_.scala.Int): Unit = __value match {
case 0 => UNKNOWN
case 1 => SECOND
case 2 => MINUTE
case 3 => HOUR
case 4 => DAY
case __other => Unrecognized(__other)
}
def javaDescriptor: _root_.com.google.protobuf.Descriptors.EnumDescriptor = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.javaDescriptor.getEnumTypes().get(0)
def scalaDescriptor: _root_.scalapb.descriptors.EnumDescriptor = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.scalaDescriptor.enums(0)
}
implicit class RateLimitLens[UpperPB](_l: _root_.scalapb.lenses.Lens[UpperPB, io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit]) extends _root_.scalapb.lenses.ObjectLens[UpperPB, io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit](_l) {
def name: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Predef.String] = field(_.name)((c_, f_) => c_.copy(name = f_))
def requestsPerUnit: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Int] = field(_.requestsPerUnit)((c_, f_) => c_.copy(requestsPerUnit = f_))
def unit: _root_.scalapb.lenses.Lens[UpperPB, io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.Unit] = field(_.unit)((c_, f_) => c_.copy(unit = f_))
}
final val NAME_FIELD_NUMBER = 3
final val REQUESTS_PER_UNIT_FIELD_NUMBER = 1
final val UNIT_FIELD_NUMBER = 2
def of(
name: _root_.scala.Predef.String,
requestsPerUnit: _root_.scala.Int,
unit: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.Unit
): _root_.io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit = _root_.io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit(
name,
requestsPerUnit,
unit
)
// @@protoc_insertion_point(GeneratedMessageCompanion[envoy.service.ratelimit.v3.RateLimitResponse.RateLimit])
}
/** Cacheable quota for responses.
* Quota can be granted at different levels: either for each individual descriptor or for the whole descriptor set.
* This is a certain number of requests over a period of time.
* The client may cache this result and apply the effective RateLimitResponse to future matching
* requests without querying rate limit service.
*
* When quota expires due to timeout, a new RLS request will also be made.
* The implementation may choose to preemptively query the rate limit server for more quota on or
* before expiration or before the available quota runs out.
* [#not-implemented-hide:]
*
* @param requests
* Number of matching requests granted in quota. Must be 1 or more.
* @param id
* The unique id that is associated with each Quota either at individual descriptor level or whole descriptor set level.
*
* For a matching policy with boolean logic, for example, match: "request.headers['environment'] == 'staging' || request.headers['environment'] == 'dev'"),
* the request_headers action produces a distinct list of descriptors for each possible value of the ‘environment’ header even though the granted quota is same.
* Thus, the client will use this id information (returned from RLS server) to correctly correlate the multiple descriptors/descriptor sets that have been granted with same quota (i.e., share the same quota among multiple descriptors or descriptor sets.)
*
* If id is empty, this id field will be ignored. If quota for the same id changes (e.g. due to configuration update), the old quota will be overridden by the new one. Shared quotas referenced by ID will still adhere to expiration after `valid_until`.
*/
@SerialVersionUID(0L)
final case class Quota(
requests: _root_.scala.Int = 0,
expirationSpecifier: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier.Empty,
id: _root_.scala.Predef.String = "",
unknownFields: _root_.scalapb.UnknownFieldSet = _root_.scalapb.UnknownFieldSet.empty
) extends scalapb.GeneratedMessage with scalapb.lenses.Updatable[Quota] {
@transient
private[this] var __serializedSizeMemoized: _root_.scala.Int = 0
private[this] def __computeSerializedSize(): _root_.scala.Int = {
var __size = 0
{
val __value = requests
if (__value != 0) {
__size += _root_.com.google.protobuf.CodedOutputStream.computeUInt32Size(1, __value)
}
};
if (expirationSpecifier.validUntil.isDefined) {
val __value = expirationSpecifier.validUntil.get
__size += 1 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
};
{
val __value = id
if (!__value.isEmpty) {
__size += _root_.com.google.protobuf.CodedOutputStream.computeStringSize(3, __value)
}
};
__size += unknownFields.serializedSize
__size
}
override def serializedSize: _root_.scala.Int = {
var __size = __serializedSizeMemoized
if (__size == 0) {
__size = __computeSerializedSize() + 1
__serializedSizeMemoized = __size
}
__size - 1
}
def writeTo(`_output__`: _root_.com.google.protobuf.CodedOutputStream): _root_.scala.Unit = {
{
val __v = requests
if (__v != 0) {
_output__.writeUInt32(1, __v)
}
};
expirationSpecifier.validUntil.foreach { __v =>
val __m = __v
_output__.writeTag(2, 2)
_output__.writeUInt32NoTag(__m.serializedSize)
__m.writeTo(_output__)
};
{
val __v = id
if (!__v.isEmpty) {
_output__.writeString(3, __v)
}
};
unknownFields.writeTo(_output__)
}
def withRequests(__v: _root_.scala.Int): Quota = copy(requests = __v)
def getValidUntil: com.google.protobuf.timestamp.Timestamp = expirationSpecifier.validUntil.getOrElse(com.google.protobuf.timestamp.Timestamp.defaultInstance)
def withValidUntil(__v: com.google.protobuf.timestamp.Timestamp): Quota = copy(expirationSpecifier = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier.ValidUntil(__v))
def withId(__v: _root_.scala.Predef.String): Quota = copy(id = __v)
def clearExpirationSpecifier: Quota = copy(expirationSpecifier = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier.Empty)
def withExpirationSpecifier(__v: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier): Quota = copy(expirationSpecifier = __v)
def withUnknownFields(__v: _root_.scalapb.UnknownFieldSet) = copy(unknownFields = __v)
def discardUnknownFields = copy(unknownFields = _root_.scalapb.UnknownFieldSet.empty)
def getFieldByNumber(__fieldNumber: _root_.scala.Int): _root_.scala.Any = {
(__fieldNumber: @_root_.scala.unchecked) match {
case 1 => {
val __t = requests
if (__t != 0) __t else null
}
case 2 => expirationSpecifier.validUntil.orNull
case 3 => {
val __t = id
if (__t != "") __t else null
}
}
}
def getField(__field: _root_.scalapb.descriptors.FieldDescriptor): _root_.scalapb.descriptors.PValue = {
_root_.scala.Predef.require(__field.containingMessage eq companion.scalaDescriptor)
(__field.number: @_root_.scala.unchecked) match {
case 1 => _root_.scalapb.descriptors.PInt(requests)
case 2 => expirationSpecifier.validUntil.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
case 3 => _root_.scalapb.descriptors.PString(id)
}
}
def toProtoString: _root_.scala.Predef.String = _root_.scalapb.TextFormat.printToUnicodeString(this)
def companion: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.type = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota
// @@protoc_insertion_point(GeneratedMessage[envoy.service.ratelimit.v3.RateLimitResponse.Quota])
}
object Quota extends scalapb.GeneratedMessageCompanion[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota] {
implicit def messageCompanion: scalapb.GeneratedMessageCompanion[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota] = this
def parseFrom(`_input__`: _root_.com.google.protobuf.CodedInputStream): io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota = {
var __requests: _root_.scala.Int = 0
var __id: _root_.scala.Predef.String = ""
var __expirationSpecifier: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier.Empty
var `_unknownFields__`: _root_.scalapb.UnknownFieldSet.Builder = null
var _done__ = false
while (!_done__) {
val _tag__ = _input__.readTag()
_tag__ match {
case 0 => _done__ = true
case 8 =>
__requests = _input__.readUInt32()
case 18 =>
__expirationSpecifier = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier.ValidUntil(__expirationSpecifier.validUntil.fold(_root_.scalapb.LiteParser.readMessage[com.google.protobuf.timestamp.Timestamp](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
case 26 =>
__id = _input__.readStringRequireUtf8()
case tag =>
if (_unknownFields__ == null) {
_unknownFields__ = new _root_.scalapb.UnknownFieldSet.Builder()
}
_unknownFields__.parseField(tag, _input__)
}
}
io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota(
requests = __requests,
id = __id,
expirationSpecifier = __expirationSpecifier,
unknownFields = if (_unknownFields__ == null) _root_.scalapb.UnknownFieldSet.empty else _unknownFields__.result()
)
}
implicit def messageReads: _root_.scalapb.descriptors.Reads[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota] = _root_.scalapb.descriptors.Reads{
case _root_.scalapb.descriptors.PMessage(__fieldsMap) =>
_root_.scala.Predef.require(__fieldsMap.keys.forall(_.containingMessage eq scalaDescriptor), "FieldDescriptor does not match message type.")
io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota(
requests = __fieldsMap.get(scalaDescriptor.findFieldByNumber(1).get).map(_.as[_root_.scala.Int]).getOrElse(0),
id = __fieldsMap.get(scalaDescriptor.findFieldByNumber(3).get).map(_.as[_root_.scala.Predef.String]).getOrElse(""),
expirationSpecifier = __fieldsMap.get(scalaDescriptor.findFieldByNumber(2).get).flatMap(_.as[_root_.scala.Option[com.google.protobuf.timestamp.Timestamp]]).map(io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier.ValidUntil(_))
.getOrElse(io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier.Empty)
)
case _ => throw new RuntimeException("Expected PMessage")
}
def javaDescriptor: _root_.com.google.protobuf.Descriptors.Descriptor = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.javaDescriptor.getNestedTypes().get(1)
def scalaDescriptor: _root_.scalapb.descriptors.Descriptor = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.scalaDescriptor.nestedMessages(1)
def messageCompanionForFieldNumber(__number: _root_.scala.Int): _root_.scalapb.GeneratedMessageCompanion[_] = {
var __out: _root_.scalapb.GeneratedMessageCompanion[_] = null
(__number: @_root_.scala.unchecked) match {
case 2 => __out = com.google.protobuf.timestamp.Timestamp
}
__out
}
lazy val nestedMessagesCompanions: Seq[_root_.scalapb.GeneratedMessageCompanion[_ <: _root_.scalapb.GeneratedMessage]] = Seq.empty
def enumCompanionForFieldNumber(__fieldNumber: _root_.scala.Int): _root_.scalapb.GeneratedEnumCompanion[_] = throw new MatchError(__fieldNumber)
lazy val defaultInstance = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota(
requests = 0,
id = "",
expirationSpecifier = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier.Empty
)
sealed trait ExpirationSpecifier extends _root_.scalapb.GeneratedOneof {
def isEmpty: _root_.scala.Boolean = false
def isDefined: _root_.scala.Boolean = true
def isValidUntil: _root_.scala.Boolean = false
def validUntil: _root_.scala.Option[com.google.protobuf.timestamp.Timestamp] = _root_.scala.None
}
object ExpirationSpecifier {
@SerialVersionUID(0L)
case object Empty extends io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier {
type ValueType = _root_.scala.Nothing
override def isEmpty: _root_.scala.Boolean = true
override def isDefined: _root_.scala.Boolean = false
override def number: _root_.scala.Int = 0
override def value: _root_.scala.Nothing = throw new java.util.NoSuchElementException("Empty.value")
}
@SerialVersionUID(0L)
final case class ValidUntil(value: com.google.protobuf.timestamp.Timestamp) extends io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier {
type ValueType = com.google.protobuf.timestamp.Timestamp
override def isValidUntil: _root_.scala.Boolean = true
override def validUntil: _root_.scala.Option[com.google.protobuf.timestamp.Timestamp] = Some(value)
override def number: _root_.scala.Int = 2
}
}
implicit class QuotaLens[UpperPB](_l: _root_.scalapb.lenses.Lens[UpperPB, io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota]) extends _root_.scalapb.lenses.ObjectLens[UpperPB, io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota](_l) {
def requests: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Int] = field(_.requests)((c_, f_) => c_.copy(requests = f_))
def validUntil: _root_.scalapb.lenses.Lens[UpperPB, com.google.protobuf.timestamp.Timestamp] = field(_.getValidUntil)((c_, f_) => c_.copy(expirationSpecifier = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier.ValidUntil(f_)))
def id: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Predef.String] = field(_.id)((c_, f_) => c_.copy(id = f_))
def expirationSpecifier: _root_.scalapb.lenses.Lens[UpperPB, io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier] = field(_.expirationSpecifier)((c_, f_) => c_.copy(expirationSpecifier = f_))
}
final val REQUESTS_FIELD_NUMBER = 1
final val VALID_UNTIL_FIELD_NUMBER = 2
final val ID_FIELD_NUMBER = 3
def of(
requests: _root_.scala.Int,
expirationSpecifier: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.ExpirationSpecifier,
id: _root_.scala.Predef.String
): _root_.io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota = _root_.io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota(
requests,
expirationSpecifier,
id
)
// @@protoc_insertion_point(GeneratedMessageCompanion[envoy.service.ratelimit.v3.RateLimitResponse.Quota])
}
/** [#next-free-field: 6]
*
* @param code
* The response code for an individual descriptor.
* @param currentLimit
* The current limit as configured by the server. Useful for debugging, etc.
* @param limitRemaining
* The limit remaining in the current time unit.
* @param durationUntilReset
* Duration until reset of the current limit window.
* @param quota
* Quota is available for a request if its descriptor set has cached quota available for all
* descriptors.
* This is for each individual descriptor in the descriptor set. The client will perform matches for each individual descriptor against available per-descriptor quota.
*
* If quota is available, a RLS request will not be made and the quota will be reduced by 1 for
* all matching descriptors.
*
* If there is not sufficient quota, there are three cases:
* 1. A cached entry exists for a RLS descriptor that is out-of-quota, but not expired.
* In this case, the request will be treated as OVER_LIMIT.
* 2. Some RLS descriptors have a cached entry that has valid quota but some RLS descriptors
* have no cached entry. This will trigger a new RLS request.
* When the result is returned, a single unit will be consumed from the quota for all
* matching descriptors.
* If the server did not provide a quota, such as the quota message is empty for some of
* the descriptors, then the request admission is determined by the
* :ref:`overall_code <envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.overall_code>`.
* 3. All RLS descriptors lack a cached entry, this will trigger a new RLS request,
* When the result is returned, a single unit will be consumed from the quota for all
* matching descriptors.
* If the server did not provide a quota, such as the quota message is empty for some of
* the descriptors, then the request admission is determined by the
* :ref:`overall_code <envoy_v3_api_field_service.ratelimit.v3.RateLimitResponse.overall_code>`.
* [#not-implemented-hide:]
*/
@SerialVersionUID(0L)
final case class DescriptorStatus(
code: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code.UNKNOWN,
currentLimit: _root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit] = _root_.scala.None,
limitRemaining: _root_.scala.Int = 0,
durationUntilReset: _root_.scala.Option[com.google.protobuf.duration.Duration] = _root_.scala.None,
quota: _root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota] = _root_.scala.None,
unknownFields: _root_.scalapb.UnknownFieldSet = _root_.scalapb.UnknownFieldSet.empty
) extends scalapb.GeneratedMessage with scalapb.lenses.Updatable[DescriptorStatus] {
@transient
private[this] var __serializedSizeMemoized: _root_.scala.Int = 0
private[this] def __computeSerializedSize(): _root_.scala.Int = {
var __size = 0
{
val __value = code.value
if (__value != 0) {
__size += _root_.com.google.protobuf.CodedOutputStream.computeEnumSize(1, __value)
}
};
if (currentLimit.isDefined) {
val __value = currentLimit.get
__size += 1 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
};
{
val __value = limitRemaining
if (__value != 0) {
__size += _root_.com.google.protobuf.CodedOutputStream.computeUInt32Size(3, __value)
}
};
if (durationUntilReset.isDefined) {
val __value = durationUntilReset.get
__size += 1 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
};
if (quota.isDefined) {
val __value = quota.get
__size += 1 + _root_.com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(__value.serializedSize) + __value.serializedSize
};
__size += unknownFields.serializedSize
__size
}
override def serializedSize: _root_.scala.Int = {
var __size = __serializedSizeMemoized
if (__size == 0) {
__size = __computeSerializedSize() + 1
__serializedSizeMemoized = __size
}
__size - 1
}
def writeTo(`_output__`: _root_.com.google.protobuf.CodedOutputStream): _root_.scala.Unit = {
{
val __v = code.value
if (__v != 0) {
_output__.writeEnum(1, __v)
}
};
currentLimit.foreach { __v =>
val __m = __v
_output__.writeTag(2, 2)
_output__.writeUInt32NoTag(__m.serializedSize)
__m.writeTo(_output__)
};
{
val __v = limitRemaining
if (__v != 0) {
_output__.writeUInt32(3, __v)
}
};
durationUntilReset.foreach { __v =>
val __m = __v
_output__.writeTag(4, 2)
_output__.writeUInt32NoTag(__m.serializedSize)
__m.writeTo(_output__)
};
quota.foreach { __v =>
val __m = __v
_output__.writeTag(5, 2)
_output__.writeUInt32NoTag(__m.serializedSize)
__m.writeTo(_output__)
};
unknownFields.writeTo(_output__)
}
def withCode(__v: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code): DescriptorStatus = copy(code = __v)
def getCurrentLimit: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit = currentLimit.getOrElse(io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit.defaultInstance)
def clearCurrentLimit: DescriptorStatus = copy(currentLimit = _root_.scala.None)
def withCurrentLimit(__v: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit): DescriptorStatus = copy(currentLimit = Option(__v))
def withLimitRemaining(__v: _root_.scala.Int): DescriptorStatus = copy(limitRemaining = __v)
def getDurationUntilReset: com.google.protobuf.duration.Duration = durationUntilReset.getOrElse(com.google.protobuf.duration.Duration.defaultInstance)
def clearDurationUntilReset: DescriptorStatus = copy(durationUntilReset = _root_.scala.None)
def withDurationUntilReset(__v: com.google.protobuf.duration.Duration): DescriptorStatus = copy(durationUntilReset = Option(__v))
def getQuota: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota = quota.getOrElse(io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota.defaultInstance)
def clearQuota: DescriptorStatus = copy(quota = _root_.scala.None)
def withQuota(__v: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota): DescriptorStatus = copy(quota = Option(__v))
def withUnknownFields(__v: _root_.scalapb.UnknownFieldSet) = copy(unknownFields = __v)
def discardUnknownFields = copy(unknownFields = _root_.scalapb.UnknownFieldSet.empty)
def getFieldByNumber(__fieldNumber: _root_.scala.Int): _root_.scala.Any = {
(__fieldNumber: @_root_.scala.unchecked) match {
case 1 => {
val __t = code.javaValueDescriptor
if (__t.getNumber() != 0) __t else null
}
case 2 => currentLimit.orNull
case 3 => {
val __t = limitRemaining
if (__t != 0) __t else null
}
case 4 => durationUntilReset.orNull
case 5 => quota.orNull
}
}
def getField(__field: _root_.scalapb.descriptors.FieldDescriptor): _root_.scalapb.descriptors.PValue = {
_root_.scala.Predef.require(__field.containingMessage eq companion.scalaDescriptor)
(__field.number: @_root_.scala.unchecked) match {
case 1 => _root_.scalapb.descriptors.PEnum(code.scalaValueDescriptor)
case 2 => currentLimit.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
case 3 => _root_.scalapb.descriptors.PInt(limitRemaining)
case 4 => durationUntilReset.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
case 5 => quota.map(_.toPMessage).getOrElse(_root_.scalapb.descriptors.PEmpty)
}
}
def toProtoString: _root_.scala.Predef.String = _root_.scalapb.TextFormat.printToUnicodeString(this)
def companion: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus.type = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus
// @@protoc_insertion_point(GeneratedMessage[envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus])
}
object DescriptorStatus extends scalapb.GeneratedMessageCompanion[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus] {
implicit def messageCompanion: scalapb.GeneratedMessageCompanion[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus] = this
def parseFrom(`_input__`: _root_.com.google.protobuf.CodedInputStream): io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus = {
var __code: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code.UNKNOWN
var __currentLimit: _root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit] = _root_.scala.None
var __limitRemaining: _root_.scala.Int = 0
var __durationUntilReset: _root_.scala.Option[com.google.protobuf.duration.Duration] = _root_.scala.None
var __quota: _root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota] = _root_.scala.None
var `_unknownFields__`: _root_.scalapb.UnknownFieldSet.Builder = null
var _done__ = false
while (!_done__) {
val _tag__ = _input__.readTag()
_tag__ match {
case 0 => _done__ = true
case 8 =>
__code = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code.fromValue(_input__.readEnum())
case 18 =>
__currentLimit = Option(__currentLimit.fold(_root_.scalapb.LiteParser.readMessage[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
case 24 =>
__limitRemaining = _input__.readUInt32()
case 34 =>
__durationUntilReset = Option(__durationUntilReset.fold(_root_.scalapb.LiteParser.readMessage[com.google.protobuf.duration.Duration](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
case 42 =>
__quota = Option(__quota.fold(_root_.scalapb.LiteParser.readMessage[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota](_input__))(_root_.scalapb.LiteParser.readMessage(_input__, _)))
case tag =>
if (_unknownFields__ == null) {
_unknownFields__ = new _root_.scalapb.UnknownFieldSet.Builder()
}
_unknownFields__.parseField(tag, _input__)
}
}
io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus(
code = __code,
currentLimit = __currentLimit,
limitRemaining = __limitRemaining,
durationUntilReset = __durationUntilReset,
quota = __quota,
unknownFields = if (_unknownFields__ == null) _root_.scalapb.UnknownFieldSet.empty else _unknownFields__.result()
)
}
implicit def messageReads: _root_.scalapb.descriptors.Reads[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus] = _root_.scalapb.descriptors.Reads{
case _root_.scalapb.descriptors.PMessage(__fieldsMap) =>
_root_.scala.Predef.require(__fieldsMap.keys.forall(_.containingMessage eq scalaDescriptor), "FieldDescriptor does not match message type.")
io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus(
code = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code.fromValue(__fieldsMap.get(scalaDescriptor.findFieldByNumber(1).get).map(_.as[_root_.scalapb.descriptors.EnumValueDescriptor]).getOrElse(io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code.UNKNOWN.scalaValueDescriptor).number),
currentLimit = __fieldsMap.get(scalaDescriptor.findFieldByNumber(2).get).flatMap(_.as[_root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit]]),
limitRemaining = __fieldsMap.get(scalaDescriptor.findFieldByNumber(3).get).map(_.as[_root_.scala.Int]).getOrElse(0),
durationUntilReset = __fieldsMap.get(scalaDescriptor.findFieldByNumber(4).get).flatMap(_.as[_root_.scala.Option[com.google.protobuf.duration.Duration]]),
quota = __fieldsMap.get(scalaDescriptor.findFieldByNumber(5).get).flatMap(_.as[_root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota]])
)
case _ => throw new RuntimeException("Expected PMessage")
}
def javaDescriptor: _root_.com.google.protobuf.Descriptors.Descriptor = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.javaDescriptor.getNestedTypes().get(2)
def scalaDescriptor: _root_.scalapb.descriptors.Descriptor = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.scalaDescriptor.nestedMessages(2)
def messageCompanionForFieldNumber(__number: _root_.scala.Int): _root_.scalapb.GeneratedMessageCompanion[_] = {
var __out: _root_.scalapb.GeneratedMessageCompanion[_] = null
(__number: @_root_.scala.unchecked) match {
case 2 => __out = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit
case 4 => __out = com.google.protobuf.duration.Duration
case 5 => __out = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota
}
__out
}
lazy val nestedMessagesCompanions: Seq[_root_.scalapb.GeneratedMessageCompanion[_ <: _root_.scalapb.GeneratedMessage]] = Seq.empty
def enumCompanionForFieldNumber(__fieldNumber: _root_.scala.Int): _root_.scalapb.GeneratedEnumCompanion[_] = {
(__fieldNumber: @_root_.scala.unchecked) match {
case 1 => io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code
}
}
lazy val defaultInstance = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus(
code = io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code.UNKNOWN,
currentLimit = _root_.scala.None,
limitRemaining = 0,
durationUntilReset = _root_.scala.None,
quota = _root_.scala.None
)
implicit class DescriptorStatusLens[UpperPB](_l: _root_.scalapb.lenses.Lens[UpperPB, io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus]) extends _root_.scalapb.lenses.ObjectLens[UpperPB, io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus](_l) {
def code: _root_.scalapb.lenses.Lens[UpperPB, io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code] = field(_.code)((c_, f_) => c_.copy(code = f_))
def currentLimit: _root_.scalapb.lenses.Lens[UpperPB, io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit] = field(_.getCurrentLimit)((c_, f_) => c_.copy(currentLimit = Option(f_)))
def optionalCurrentLimit: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit]] = field(_.currentLimit)((c_, f_) => c_.copy(currentLimit = f_))
def limitRemaining: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Int] = field(_.limitRemaining)((c_, f_) => c_.copy(limitRemaining = f_))
def durationUntilReset: _root_.scalapb.lenses.Lens[UpperPB, com.google.protobuf.duration.Duration] = field(_.getDurationUntilReset)((c_, f_) => c_.copy(durationUntilReset = Option(f_)))
def optionalDurationUntilReset: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[com.google.protobuf.duration.Duration]] = field(_.durationUntilReset)((c_, f_) => c_.copy(durationUntilReset = f_))
def quota: _root_.scalapb.lenses.Lens[UpperPB, io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota] = field(_.getQuota)((c_, f_) => c_.copy(quota = Option(f_)))
def optionalQuota: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota]] = field(_.quota)((c_, f_) => c_.copy(quota = f_))
}
final val CODE_FIELD_NUMBER = 1
final val CURRENT_LIMIT_FIELD_NUMBER = 2
final val LIMIT_REMAINING_FIELD_NUMBER = 3
final val DURATION_UNTIL_RESET_FIELD_NUMBER = 4
final val QUOTA_FIELD_NUMBER = 5
def of(
code: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code,
currentLimit: _root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.RateLimit],
limitRemaining: _root_.scala.Int,
durationUntilReset: _root_.scala.Option[com.google.protobuf.duration.Duration],
quota: _root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota]
): _root_.io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus = _root_.io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus(
code,
currentLimit,
limitRemaining,
durationUntilReset,
quota
)
// @@protoc_insertion_point(GeneratedMessageCompanion[envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus])
}
implicit class RateLimitResponseLens[UpperPB](_l: _root_.scalapb.lenses.Lens[UpperPB, io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse]) extends _root_.scalapb.lenses.ObjectLens[UpperPB, io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse](_l) {
def overallCode: _root_.scalapb.lenses.Lens[UpperPB, io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code] = field(_.overallCode)((c_, f_) => c_.copy(overallCode = f_))
def statuses: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Seq[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus]] = field(_.statuses)((c_, f_) => c_.copy(statuses = f_))
def responseHeadersToAdd: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Seq[io.envoyproxy.envoy.config.core.v3.HeaderValue]] = field(_.responseHeadersToAdd)((c_, f_) => c_.copy(responseHeadersToAdd = f_))
def requestHeadersToAdd: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Seq[io.envoyproxy.envoy.config.core.v3.HeaderValue]] = field(_.requestHeadersToAdd)((c_, f_) => c_.copy(requestHeadersToAdd = f_))
def rawBody: _root_.scalapb.lenses.Lens[UpperPB, _root_.com.google.protobuf.ByteString] = field(_.rawBody)((c_, f_) => c_.copy(rawBody = f_))
def dynamicMetadata: _root_.scalapb.lenses.Lens[UpperPB, com.google.protobuf.struct.Struct] = field(_.getDynamicMetadata)((c_, f_) => c_.copy(dynamicMetadata = Option(f_)))
def optionalDynamicMetadata: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[com.google.protobuf.struct.Struct]] = field(_.dynamicMetadata)((c_, f_) => c_.copy(dynamicMetadata = f_))
def quota: _root_.scalapb.lenses.Lens[UpperPB, io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota] = field(_.getQuota)((c_, f_) => c_.copy(quota = Option(f_)))
def optionalQuota: _root_.scalapb.lenses.Lens[UpperPB, _root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota]] = field(_.quota)((c_, f_) => c_.copy(quota = f_))
}
final val OVERALL_CODE_FIELD_NUMBER = 1
final val STATUSES_FIELD_NUMBER = 2
final val RESPONSE_HEADERS_TO_ADD_FIELD_NUMBER = 3
final val REQUEST_HEADERS_TO_ADD_FIELD_NUMBER = 4
final val RAW_BODY_FIELD_NUMBER = 5
final val DYNAMIC_METADATA_FIELD_NUMBER = 6
final val QUOTA_FIELD_NUMBER = 7
def of(
overallCode: io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Code,
statuses: _root_.scala.Seq[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.DescriptorStatus],
responseHeadersToAdd: _root_.scala.Seq[io.envoyproxy.envoy.config.core.v3.HeaderValue],
requestHeadersToAdd: _root_.scala.Seq[io.envoyproxy.envoy.config.core.v3.HeaderValue],
rawBody: _root_.com.google.protobuf.ByteString,
dynamicMetadata: _root_.scala.Option[com.google.protobuf.struct.Struct],
quota: _root_.scala.Option[io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse.Quota]
): _root_.io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse = _root_.io.envoyproxy.envoy.service.ratelimit.v3.RateLimitResponse(
overallCode,
statuses,
responseHeadersToAdd,
requestHeadersToAdd,
rawBody,
dynamicMetadata,
quota
)
// @@protoc_insertion_point(GeneratedMessageCompanion[envoy.service.ratelimit.v3.RateLimitResponse])
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy