Class ExtensionChain.Extension (0.4.0)

public static final class ExtensionChain.Extension extends GeneratedMessageV3 implements ExtensionChain.ExtensionOrBuilder

A single extension in the chain to execute for the matching request.

Protobuf type google.cloud.networkservices.v1.ExtensionChain.Extension

Static Fields

AUTHORITY_FIELD_NUMBER

public static final int AUTHORITY_FIELD_NUMBER
Field Value
Type Description
int

FAIL_OPEN_FIELD_NUMBER

public static final int FAIL_OPEN_FIELD_NUMBER
Field Value
Type Description
int

FORWARD_HEADERS_FIELD_NUMBER

public static final int FORWARD_HEADERS_FIELD_NUMBER
Field Value
Type Description
int

NAME_FIELD_NUMBER

public static final int NAME_FIELD_NUMBER
Field Value
Type Description
int

SERVICE_FIELD_NUMBER

public static final int SERVICE_FIELD_NUMBER
Field Value
Type Description
int

SUPPORTED_EVENTS_FIELD_NUMBER

public static final int SUPPORTED_EVENTS_FIELD_NUMBER
Field Value
Type Description
int

TIMEOUT_FIELD_NUMBER

public static final int TIMEOUT_FIELD_NUMBER
Field Value
Type Description
int

Static Methods

getDefaultInstance()

public static ExtensionChain.Extension getDefaultInstance()
Returns
Type Description
ExtensionChain.Extension

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
Type Description
Descriptor

newBuilder()

public static ExtensionChain.Extension.Builder newBuilder()
Returns
Type Description
ExtensionChain.Extension.Builder

newBuilder(ExtensionChain.Extension prototype)

public static ExtensionChain.Extension.Builder newBuilder(ExtensionChain.Extension prototype)
Parameter
Name Description
prototype ExtensionChain.Extension
Returns
Type Description
ExtensionChain.Extension.Builder

parseDelimitedFrom(InputStream input)

public static ExtensionChain.Extension parseDelimitedFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
ExtensionChain.Extension
Exceptions
Type Description
IOException

parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static ExtensionChain.Extension parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
ExtensionChain.Extension
Exceptions
Type Description
IOException

parseFrom(byte[] data)

public static ExtensionChain.Extension parseFrom(byte[] data)
Parameter
Name Description
data byte[]
Returns
Type Description
ExtensionChain.Extension
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)

public static ExtensionChain.Extension parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data byte[]
extensionRegistry ExtensionRegistryLite
Returns
Type Description
ExtensionChain.Extension
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data)

public static ExtensionChain.Extension parseFrom(ByteString data)
Parameter
Name Description
data ByteString
Returns
Type Description
ExtensionChain.Extension
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)

public static ExtensionChain.Extension parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteString
extensionRegistry ExtensionRegistryLite
Returns
Type Description
ExtensionChain.Extension
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(CodedInputStream input)

public static ExtensionChain.Extension parseFrom(CodedInputStream input)
Parameter
Name Description
input CodedInputStream
Returns
Type Description
ExtensionChain.Extension
Exceptions
Type Description
IOException

parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public static ExtensionChain.Extension parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input CodedInputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
ExtensionChain.Extension
Exceptions
Type Description
IOException

parseFrom(InputStream input)

public static ExtensionChain.Extension parseFrom(InputStream input)
Parameter
Name Description
input InputStream
Returns
Type Description
ExtensionChain.Extension
Exceptions
Type Description
IOException

parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static ExtensionChain.Extension parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
input InputStream
extensionRegistry ExtensionRegistryLite
Returns
Type Description
ExtensionChain.Extension
Exceptions
Type Description
IOException

parseFrom(ByteBuffer data)

public static ExtensionChain.Extension parseFrom(ByteBuffer data)
Parameter
Name Description
data ByteBuffer
Returns
Type Description
ExtensionChain.Extension
Exceptions
Type Description
InvalidProtocolBufferException

parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)

public static ExtensionChain.Extension parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
Parameters
Name Description
data ByteBuffer
extensionRegistry ExtensionRegistryLite
Returns
Type Description
ExtensionChain.Extension
Exceptions
Type Description
InvalidProtocolBufferException

parser()

public static Parser<ExtensionChain.Extension> parser()
Returns
Type Description
Parser<Extension>

Methods

equals(Object obj)

public boolean equals(Object obj)
Parameter
Name Description
obj Object
Returns
Type Description
boolean
Overrides

getAuthority()

public String getAuthority()

Optional. The :authority header in the gRPC request sent from Envoy to the extension service. Required for Callout extensions.

string authority = 2 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
String

The authority.

getAuthorityBytes()

public ByteString getAuthorityBytes()

Optional. The :authority header in the gRPC request sent from Envoy to the extension service. Required for Callout extensions.

string authority = 2 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
ByteString

The bytes for authority.

getDefaultInstanceForType()

public ExtensionChain.Extension getDefaultInstanceForType()
Returns
Type Description
ExtensionChain.Extension

getFailOpen()

public boolean getFailOpen()

Optional. Determines how the proxy behaves if the call to the extension fails or times out.

When set to TRUE, request or response processing continues without error. Any subsequent extensions in the extension chain are also executed. When set to FALSE or the default setting of FALSE is used, one of the following happens:

  • If response headers have not been delivered to the downstream client, a generic 500 error is returned to the client. The error response can be tailored by configuring a custom error response in the load balancer.

  • If response headers have been delivered, then the HTTP stream to the downstream client is reset.

bool fail_open = 6 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
boolean

The failOpen.

getForwardHeaders(int index)

public String getForwardHeaders(int index)

Optional. List of the HTTP headers to forward to the extension (from the client or backend). If omitted, all headers are sent. Each element is a string indicating the header name.

repeated string forward_headers = 7 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
index int

The index of the element to return.

Returns
Type Description
String

The forwardHeaders at the given index.

getForwardHeadersBytes(int index)

public ByteString getForwardHeadersBytes(int index)

Optional. List of the HTTP headers to forward to the extension (from the client or backend). If omitted, all headers are sent. Each element is a string indicating the header name.

repeated string forward_headers = 7 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
index int

The index of the value to return.

Returns
Type Description
ByteString

The bytes of the forwardHeaders at the given index.

getForwardHeadersCount()

public int getForwardHeadersCount()

Optional. List of the HTTP headers to forward to the extension (from the client or backend). If omitted, all headers are sent. Each element is a string indicating the header name.

repeated string forward_headers = 7 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
int

The count of forwardHeaders.

getForwardHeadersList()

public ProtocolStringList getForwardHeadersList()

Optional. List of the HTTP headers to forward to the extension (from the client or backend). If omitted, all headers are sent. Each element is a string indicating the header name.

repeated string forward_headers = 7 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
ProtocolStringList

A list containing the forwardHeaders.

getName()

public String getName()

Required. The name for this extension. The name is logged as part of the HTTP request logs. The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens, and can have a maximum length of 63 characters. Additionally, the first character must be a letter and the last a letter or a number.

string name = 1 [(.google.api.field_behavior) = REQUIRED];

Returns
Type Description
String

The name.

getNameBytes()

public ByteString getNameBytes()

Required. The name for this extension. The name is logged as part of the HTTP request logs. The name must conform with RFC-1034, is restricted to lower-cased letters, numbers and hyphens, and can have a maximum length of 63 characters. Additionally, the first character must be a letter and the last a letter or a number.

string name = 1 [(.google.api.field_behavior) = REQUIRED];

Returns
Type Description
ByteString

The bytes for name.

getParserForType()

public Parser<ExtensionChain.Extension> getParserForType()
Returns
Type Description
Parser<Extension>
Overrides

getSerializedSize()

public int getSerializedSize()
Returns
Type Description
int
Overrides

getService()

public String getService()

Required. The reference to the service that runs the extension.

Currently only callout extensions are supported here.

To configure a callout extension, service must be a fully-qualified reference to a backend service in the format: https://www.googleapis.com/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService} or https://www.googleapis.com/compute/v1/projects/{project}/global/backendServices/{backendService}.

string service = 3 [(.google.api.field_behavior) = REQUIRED];

Returns
Type Description
String

The service.

getServiceBytes()

public ByteString getServiceBytes()

Required. The reference to the service that runs the extension.

Currently only callout extensions are supported here.

To configure a callout extension, service must be a fully-qualified reference to a backend service in the format: https://www.googleapis.com/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService} or https://www.googleapis.com/compute/v1/projects/{project}/global/backendServices/{backendService}.

string service = 3 [(.google.api.field_behavior) = REQUIRED];

Returns
Type Description
ByteString

The bytes for service.

getSupportedEvents(int index)

public EventType getSupportedEvents(int index)

Optional. A set of events during request or response processing for which this extension is called. This field is required for the LbTrafficExtension resource. It must not be set for the LbRouteExtension resource.

repeated .google.cloud.networkservices.v1.EventType supported_events = 4 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
index int

The index of the element to return.

Returns
Type Description
EventType

The supportedEvents at the given index.

getSupportedEventsCount()

public int getSupportedEventsCount()

Optional. A set of events during request or response processing for which this extension is called. This field is required for the LbTrafficExtension resource. It must not be set for the LbRouteExtension resource.

repeated .google.cloud.networkservices.v1.EventType supported_events = 4 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
int

The count of supportedEvents.

getSupportedEventsList()

public List<EventType> getSupportedEventsList()

Optional. A set of events during request or response processing for which this extension is called. This field is required for the LbTrafficExtension resource. It must not be set for the LbRouteExtension resource.

repeated .google.cloud.networkservices.v1.EventType supported_events = 4 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
List<EventType>

A list containing the supportedEvents.

getSupportedEventsValue(int index)

public int getSupportedEventsValue(int index)

Optional. A set of events during request or response processing for which this extension is called. This field is required for the LbTrafficExtension resource. It must not be set for the LbRouteExtension resource.

repeated .google.cloud.networkservices.v1.EventType supported_events = 4 [(.google.api.field_behavior) = OPTIONAL];

Parameter
Name Description
index int

The index of the value to return.

Returns
Type Description
int

The enum numeric value on the wire of supportedEvents at the given index.

getSupportedEventsValueList()

public List<Integer> getSupportedEventsValueList()

Optional. A set of events during request or response processing for which this extension is called. This field is required for the LbTrafficExtension resource. It must not be set for the LbRouteExtension resource.

repeated .google.cloud.networkservices.v1.EventType supported_events = 4 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
List<Integer>

A list containing the enum numeric values on the wire for supportedEvents.

getTimeout()

public Duration getTimeout()

Optional. Specifies the timeout for each individual message on the stream. The timeout must be between 10-1000 milliseconds. Required for Callout extensions.

.google.protobuf.Duration timeout = 5 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
Duration

The timeout.

getTimeoutOrBuilder()

public DurationOrBuilder getTimeoutOrBuilder()

Optional. Specifies the timeout for each individual message on the stream. The timeout must be between 10-1000 milliseconds. Required for Callout extensions.

.google.protobuf.Duration timeout = 5 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
DurationOrBuilder

hasTimeout()

public boolean hasTimeout()

Optional. Specifies the timeout for each individual message on the stream. The timeout must be between 10-1000 milliseconds. Required for Callout extensions.

.google.protobuf.Duration timeout = 5 [(.google.api.field_behavior) = OPTIONAL];

Returns
Type Description
boolean

Whether the timeout field is set.

hashCode()

public int hashCode()
Returns
Type Description
int
Overrides

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
Type Description
FieldAccessorTable
Overrides

isInitialized()

public final boolean isInitialized()
Returns
Type Description
boolean
Overrides

newBuilderForType()

public ExtensionChain.Extension.Builder newBuilderForType()
Returns
Type Description
ExtensionChain.Extension.Builder

newBuilderForType(GeneratedMessageV3.BuilderParent parent)

protected ExtensionChain.Extension.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Parameter
Name Description
parent BuilderParent
Returns
Type Description
ExtensionChain.Extension.Builder
Overrides

newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)

protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Parameter
Name Description
unused UnusedPrivateParameter
Returns
Type Description
Object
Overrides

toBuilder()

public ExtensionChain.Extension.Builder toBuilder()
Returns
Type Description
ExtensionChain.Extension.Builder

writeTo(CodedOutputStream output)

public void writeTo(CodedOutputStream output)
Parameter
Name Description
output CodedOutputStream
Overrides
Exceptions
Type Description
IOException