Class AppConnector.Builder (0.5.0)

public static final class AppConnector.Builder extends GeneratedMessageV3.Builder<AppConnector.Builder> implements AppConnectorOrBuilder

A BeyondCorp connector resource that represents an application facing component deployed proximal to and with direct access to the application instances. It is used to establish connectivity between the remote enterprise environment and GCP. It initiates connections to the applications and can proxy the data from users over the connection.

Protobuf type google.cloud.beyondcorp.appconnectors.v1.AppConnector

Static Methods

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
TypeDescription
Descriptor

Methods

addRepeatedField(Descriptors.FieldDescriptor field, Object value)

public AppConnector.Builder addRepeatedField(Descriptors.FieldDescriptor field, Object value)
Parameters
NameDescription
fieldFieldDescriptor
valueObject
Returns
TypeDescription
AppConnector.Builder
Overrides

build()

public AppConnector build()
Returns
TypeDescription
AppConnector

buildPartial()

public AppConnector buildPartial()
Returns
TypeDescription
AppConnector

clear()

public AppConnector.Builder clear()
Returns
TypeDescription
AppConnector.Builder
Overrides

clearCreateTime()

public AppConnector.Builder clearCreateTime()

Output only. Timestamp when the resource was created.

.google.protobuf.Timestamp create_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
AppConnector.Builder

clearDisplayName()

public AppConnector.Builder clearDisplayName()

Optional. An arbitrary user-provided name for the AppConnector. Cannot exceed 64 characters.

string display_name = 5 [(.google.api.field_behavior) = OPTIONAL];

Returns
TypeDescription
AppConnector.Builder

This builder for chaining.

clearField(Descriptors.FieldDescriptor field)

public AppConnector.Builder clearField(Descriptors.FieldDescriptor field)
Parameter
NameDescription
fieldFieldDescriptor
Returns
TypeDescription
AppConnector.Builder
Overrides

clearLabels()

public AppConnector.Builder clearLabels()
Returns
TypeDescription
AppConnector.Builder

clearName()

public AppConnector.Builder clearName()

Required. Unique resource name of the AppConnector. The name is ignored when creating a AppConnector.

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

Returns
TypeDescription
AppConnector.Builder

This builder for chaining.

clearOneof(Descriptors.OneofDescriptor oneof)

public AppConnector.Builder clearOneof(Descriptors.OneofDescriptor oneof)
Parameter
NameDescription
oneofOneofDescriptor
Returns
TypeDescription
AppConnector.Builder
Overrides

clearPrincipalInfo()

public AppConnector.Builder clearPrincipalInfo()

Required. Principal information about the Identity of the AppConnector.

.google.cloud.beyondcorp.appconnectors.v1.AppConnector.PrincipalInfo principal_info = 8 [(.google.api.field_behavior) = REQUIRED];

Returns
TypeDescription
AppConnector.Builder

clearResourceInfo()

public AppConnector.Builder clearResourceInfo()

Optional. Resource info of the connector.

.google.cloud.beyondcorp.appconnectors.v1.ResourceInfo resource_info = 11 [(.google.api.field_behavior) = OPTIONAL];

Returns
TypeDescription
AppConnector.Builder

clearState()

public AppConnector.Builder clearState()

Output only. The current state of the AppConnector.

.google.cloud.beyondcorp.appconnectors.v1.AppConnector.State state = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
AppConnector.Builder

This builder for chaining.

clearUid()

public AppConnector.Builder clearUid()

Output only. A unique identifier for the instance generated by the system.

string uid = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
AppConnector.Builder

This builder for chaining.

clearUpdateTime()

public AppConnector.Builder clearUpdateTime()

Output only. Timestamp when the resource was last modified.

.google.protobuf.Timestamp update_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
AppConnector.Builder

clone()

public AppConnector.Builder clone()
Returns
TypeDescription
AppConnector.Builder
Overrides

containsLabels(String key)

public boolean containsLabels(String key)

Optional. Resource labels to represent user provided metadata.

map<string, string> labels = 4 [(.google.api.field_behavior) = OPTIONAL];

Parameter
NameDescription
keyString
Returns
TypeDescription
boolean

getCreateTime()

public Timestamp getCreateTime()

Output only. Timestamp when the resource was created.

.google.protobuf.Timestamp create_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
Timestamp

The createTime.

getCreateTimeBuilder()

public Timestamp.Builder getCreateTimeBuilder()

Output only. Timestamp when the resource was created.

.google.protobuf.Timestamp create_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
Builder

getCreateTimeOrBuilder()

public TimestampOrBuilder getCreateTimeOrBuilder()

Output only. Timestamp when the resource was created.

.google.protobuf.Timestamp create_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
TimestampOrBuilder

getDefaultInstanceForType()

public AppConnector getDefaultInstanceForType()
Returns
TypeDescription
AppConnector

getDescriptorForType()

public Descriptors.Descriptor getDescriptorForType()
Returns
TypeDescription
Descriptor
Overrides

getDisplayName()

public String getDisplayName()

Optional. An arbitrary user-provided name for the AppConnector. Cannot exceed 64 characters.

string display_name = 5 [(.google.api.field_behavior) = OPTIONAL];

Returns
TypeDescription
String

The displayName.

getDisplayNameBytes()

public ByteString getDisplayNameBytes()

Optional. An arbitrary user-provided name for the AppConnector. Cannot exceed 64 characters.

string display_name = 5 [(.google.api.field_behavior) = OPTIONAL];

Returns
TypeDescription
ByteString

The bytes for displayName.

getLabels()

public Map<String,String> getLabels()

Use #getLabelsMap() instead.

Returns
TypeDescription
Map<String,String>

getLabelsCount()

public int getLabelsCount()

Optional. Resource labels to represent user provided metadata.

map<string, string> labels = 4 [(.google.api.field_behavior) = OPTIONAL];

Returns
TypeDescription
int

getLabelsMap()

public Map<String,String> getLabelsMap()

Optional. Resource labels to represent user provided metadata.

map<string, string> labels = 4 [(.google.api.field_behavior) = OPTIONAL];

Returns
TypeDescription
Map<String,String>

getLabelsOrDefault(String key, String defaultValue)

public String getLabelsOrDefault(String key, String defaultValue)

Optional. Resource labels to represent user provided metadata.

map<string, string> labels = 4 [(.google.api.field_behavior) = OPTIONAL];

Parameters
NameDescription
keyString
defaultValueString
Returns
TypeDescription
String

getLabelsOrThrow(String key)

public String getLabelsOrThrow(String key)

Optional. Resource labels to represent user provided metadata.

map<string, string> labels = 4 [(.google.api.field_behavior) = OPTIONAL];

Parameter
NameDescription
keyString
Returns
TypeDescription
String

getMutableLabels()

public Map<String,String> getMutableLabels()

Use alternate mutation accessors instead.

Returns
TypeDescription
Map<String,String>

getName()

public String getName()

Required. Unique resource name of the AppConnector. The name is ignored when creating a AppConnector.

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

Returns
TypeDescription
String

The name.

getNameBytes()

public ByteString getNameBytes()

Required. Unique resource name of the AppConnector. The name is ignored when creating a AppConnector.

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

Returns
TypeDescription
ByteString

The bytes for name.

getPrincipalInfo()

public AppConnector.PrincipalInfo getPrincipalInfo()

Required. Principal information about the Identity of the AppConnector.

.google.cloud.beyondcorp.appconnectors.v1.AppConnector.PrincipalInfo principal_info = 8 [(.google.api.field_behavior) = REQUIRED];

Returns
TypeDescription
AppConnector.PrincipalInfo

The principalInfo.

getPrincipalInfoBuilder()

public AppConnector.PrincipalInfo.Builder getPrincipalInfoBuilder()

Required. Principal information about the Identity of the AppConnector.

.google.cloud.beyondcorp.appconnectors.v1.AppConnector.PrincipalInfo principal_info = 8 [(.google.api.field_behavior) = REQUIRED];

Returns
TypeDescription
AppConnector.PrincipalInfo.Builder

getPrincipalInfoOrBuilder()

public AppConnector.PrincipalInfoOrBuilder getPrincipalInfoOrBuilder()

Required. Principal information about the Identity of the AppConnector.

.google.cloud.beyondcorp.appconnectors.v1.AppConnector.PrincipalInfo principal_info = 8 [(.google.api.field_behavior) = REQUIRED];

Returns
TypeDescription
AppConnector.PrincipalInfoOrBuilder

getResourceInfo()

public ResourceInfo getResourceInfo()

Optional. Resource info of the connector.

.google.cloud.beyondcorp.appconnectors.v1.ResourceInfo resource_info = 11 [(.google.api.field_behavior) = OPTIONAL];

Returns
TypeDescription
ResourceInfo

The resourceInfo.

getResourceInfoBuilder()

public ResourceInfo.Builder getResourceInfoBuilder()

Optional. Resource info of the connector.

.google.cloud.beyondcorp.appconnectors.v1.ResourceInfo resource_info = 11 [(.google.api.field_behavior) = OPTIONAL];

Returns
TypeDescription
ResourceInfo.Builder

getResourceInfoOrBuilder()

public ResourceInfoOrBuilder getResourceInfoOrBuilder()

Optional. Resource info of the connector.

.google.cloud.beyondcorp.appconnectors.v1.ResourceInfo resource_info = 11 [(.google.api.field_behavior) = OPTIONAL];

Returns
TypeDescription
ResourceInfoOrBuilder

getState()

public AppConnector.State getState()

Output only. The current state of the AppConnector.

.google.cloud.beyondcorp.appconnectors.v1.AppConnector.State state = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
AppConnector.State

The state.

getStateValue()

public int getStateValue()

Output only. The current state of the AppConnector.

.google.cloud.beyondcorp.appconnectors.v1.AppConnector.State state = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
int

The enum numeric value on the wire for state.

getUid()

public String getUid()

Output only. A unique identifier for the instance generated by the system.

string uid = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
String

The uid.

getUidBytes()

public ByteString getUidBytes()

Output only. A unique identifier for the instance generated by the system.

string uid = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
ByteString

The bytes for uid.

getUpdateTime()

public Timestamp getUpdateTime()

Output only. Timestamp when the resource was last modified.

.google.protobuf.Timestamp update_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
Timestamp

The updateTime.

getUpdateTimeBuilder()

public Timestamp.Builder getUpdateTimeBuilder()

Output only. Timestamp when the resource was last modified.

.google.protobuf.Timestamp update_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
Builder

getUpdateTimeOrBuilder()

public TimestampOrBuilder getUpdateTimeOrBuilder()

Output only. Timestamp when the resource was last modified.

.google.protobuf.Timestamp update_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
TimestampOrBuilder

hasCreateTime()

public boolean hasCreateTime()

Output only. Timestamp when the resource was created.

.google.protobuf.Timestamp create_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
boolean

Whether the createTime field is set.

hasPrincipalInfo()

public boolean hasPrincipalInfo()

Required. Principal information about the Identity of the AppConnector.

.google.cloud.beyondcorp.appconnectors.v1.AppConnector.PrincipalInfo principal_info = 8 [(.google.api.field_behavior) = REQUIRED];

Returns
TypeDescription
boolean

Whether the principalInfo field is set.

hasResourceInfo()

public boolean hasResourceInfo()

Optional. Resource info of the connector.

.google.cloud.beyondcorp.appconnectors.v1.ResourceInfo resource_info = 11 [(.google.api.field_behavior) = OPTIONAL];

Returns
TypeDescription
boolean

Whether the resourceInfo field is set.

hasUpdateTime()

public boolean hasUpdateTime()

Output only. Timestamp when the resource was last modified.

.google.protobuf.Timestamp update_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];

Returns
TypeDescription
boolean

Whether the updateTime field is set.

internalGetFieldAccessorTable()

protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Returns
TypeDescription
FieldAccessorTable
Overrides

internalGetMapField(int number)

protected MapField internalGetMapField(int number)
Parameter
NameDescription
numberint
Returns
TypeDescription
MapField
Overrides

internalGetMutableMapField(int number)

protected MapField internalGetMutableMapField(int number)
Parameter
NameDescription
numberint
Returns
TypeDescription
MapField
Overrides

isInitialized()

public final boolean isInitialized()
Returns
TypeDescription
boolean
Overrides

mergeCreateTime(Timestamp value)

public AppConnector.Builder mergeCreateTime(Timestamp value)

Output only. Timestamp when the resource was created.

.google.protobuf.Timestamp create_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
NameDescription
valueTimestamp
Returns
TypeDescription
AppConnector.Builder

mergeFrom(AppConnector other)

public AppConnector.Builder mergeFrom(AppConnector other)
Parameter
NameDescription
otherAppConnector
Returns
TypeDescription
AppConnector.Builder

mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)

public AppConnector.Builder mergeFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputCodedInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
AppConnector.Builder
Overrides Exceptions
TypeDescription
IOException

mergeFrom(Message other)

public AppConnector.Builder mergeFrom(Message other)
Parameter
NameDescription
otherMessage
Returns
TypeDescription
AppConnector.Builder
Overrides

mergePrincipalInfo(AppConnector.PrincipalInfo value)

public AppConnector.Builder mergePrincipalInfo(AppConnector.PrincipalInfo value)

Required. Principal information about the Identity of the AppConnector.

.google.cloud.beyondcorp.appconnectors.v1.AppConnector.PrincipalInfo principal_info = 8 [(.google.api.field_behavior) = REQUIRED];

Parameter
NameDescription
valueAppConnector.PrincipalInfo
Returns
TypeDescription
AppConnector.Builder

mergeResourceInfo(ResourceInfo value)

public AppConnector.Builder mergeResourceInfo(ResourceInfo value)

Optional. Resource info of the connector.

.google.cloud.beyondcorp.appconnectors.v1.ResourceInfo resource_info = 11 [(.google.api.field_behavior) = OPTIONAL];

Parameter
NameDescription
valueResourceInfo
Returns
TypeDescription
AppConnector.Builder

mergeUnknownFields(UnknownFieldSet unknownFields)

public final AppConnector.Builder mergeUnknownFields(UnknownFieldSet unknownFields)
Parameter
NameDescription
unknownFieldsUnknownFieldSet
Returns
TypeDescription
AppConnector.Builder
Overrides

mergeUpdateTime(Timestamp value)

public AppConnector.Builder mergeUpdateTime(Timestamp value)

Output only. Timestamp when the resource was last modified.

.google.protobuf.Timestamp update_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
NameDescription
valueTimestamp
Returns
TypeDescription
AppConnector.Builder

putAllLabels(Map<String,String> values)

public AppConnector.Builder putAllLabels(Map<String,String> values)

Optional. Resource labels to represent user provided metadata.

map<string, string> labels = 4 [(.google.api.field_behavior) = OPTIONAL];

Parameter
NameDescription
valuesMap<String,String>
Returns
TypeDescription
AppConnector.Builder

putLabels(String key, String value)

public AppConnector.Builder putLabels(String key, String value)

Optional. Resource labels to represent user provided metadata.

map<string, string> labels = 4 [(.google.api.field_behavior) = OPTIONAL];

Parameters
NameDescription
keyString
valueString
Returns
TypeDescription
AppConnector.Builder

removeLabels(String key)

public AppConnector.Builder removeLabels(String key)

Optional. Resource labels to represent user provided metadata.

map<string, string> labels = 4 [(.google.api.field_behavior) = OPTIONAL];

Parameter
NameDescription
keyString
Returns
TypeDescription
AppConnector.Builder

setCreateTime(Timestamp value)

public AppConnector.Builder setCreateTime(Timestamp value)

Output only. Timestamp when the resource was created.

.google.protobuf.Timestamp create_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
NameDescription
valueTimestamp
Returns
TypeDescription
AppConnector.Builder

setCreateTime(Timestamp.Builder builderForValue)

public AppConnector.Builder setCreateTime(Timestamp.Builder builderForValue)

Output only. Timestamp when the resource was created.

.google.protobuf.Timestamp create_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
NameDescription
builderForValueBuilder
Returns
TypeDescription
AppConnector.Builder

setDisplayName(String value)

public AppConnector.Builder setDisplayName(String value)

Optional. An arbitrary user-provided name for the AppConnector. Cannot exceed 64 characters.

string display_name = 5 [(.google.api.field_behavior) = OPTIONAL];

Parameter
NameDescription
valueString

The displayName to set.

Returns
TypeDescription
AppConnector.Builder

This builder for chaining.

setDisplayNameBytes(ByteString value)

public AppConnector.Builder setDisplayNameBytes(ByteString value)

Optional. An arbitrary user-provided name for the AppConnector. Cannot exceed 64 characters.

string display_name = 5 [(.google.api.field_behavior) = OPTIONAL];

Parameter
NameDescription
valueByteString

The bytes for displayName to set.

Returns
TypeDescription
AppConnector.Builder

This builder for chaining.

setField(Descriptors.FieldDescriptor field, Object value)

public AppConnector.Builder setField(Descriptors.FieldDescriptor field, Object value)
Parameters
NameDescription
fieldFieldDescriptor
valueObject
Returns
TypeDescription
AppConnector.Builder
Overrides

setName(String value)

public AppConnector.Builder setName(String value)

Required. Unique resource name of the AppConnector. The name is ignored when creating a AppConnector.

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

Parameter
NameDescription
valueString

The name to set.

Returns
TypeDescription
AppConnector.Builder

This builder for chaining.

setNameBytes(ByteString value)

public AppConnector.Builder setNameBytes(ByteString value)

Required. Unique resource name of the AppConnector. The name is ignored when creating a AppConnector.

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

Parameter
NameDescription
valueByteString

The bytes for name to set.

Returns
TypeDescription
AppConnector.Builder

This builder for chaining.

setPrincipalInfo(AppConnector.PrincipalInfo value)

public AppConnector.Builder setPrincipalInfo(AppConnector.PrincipalInfo value)

Required. Principal information about the Identity of the AppConnector.

.google.cloud.beyondcorp.appconnectors.v1.AppConnector.PrincipalInfo principal_info = 8 [(.google.api.field_behavior) = REQUIRED];

Parameter
NameDescription
valueAppConnector.PrincipalInfo
Returns
TypeDescription
AppConnector.Builder

setPrincipalInfo(AppConnector.PrincipalInfo.Builder builderForValue)

public AppConnector.Builder setPrincipalInfo(AppConnector.PrincipalInfo.Builder builderForValue)

Required. Principal information about the Identity of the AppConnector.

.google.cloud.beyondcorp.appconnectors.v1.AppConnector.PrincipalInfo principal_info = 8 [(.google.api.field_behavior) = REQUIRED];

Parameter
NameDescription
builderForValueAppConnector.PrincipalInfo.Builder
Returns
TypeDescription
AppConnector.Builder

setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)

public AppConnector.Builder setRepeatedField(Descriptors.FieldDescriptor field, int index, Object value)
Parameters
NameDescription
fieldFieldDescriptor
indexint
valueObject
Returns
TypeDescription
AppConnector.Builder
Overrides

setResourceInfo(ResourceInfo value)

public AppConnector.Builder setResourceInfo(ResourceInfo value)

Optional. Resource info of the connector.

.google.cloud.beyondcorp.appconnectors.v1.ResourceInfo resource_info = 11 [(.google.api.field_behavior) = OPTIONAL];

Parameter
NameDescription
valueResourceInfo
Returns
TypeDescription
AppConnector.Builder

setResourceInfo(ResourceInfo.Builder builderForValue)

public AppConnector.Builder setResourceInfo(ResourceInfo.Builder builderForValue)

Optional. Resource info of the connector.

.google.cloud.beyondcorp.appconnectors.v1.ResourceInfo resource_info = 11 [(.google.api.field_behavior) = OPTIONAL];

Parameter
NameDescription
builderForValueResourceInfo.Builder
Returns
TypeDescription
AppConnector.Builder

setState(AppConnector.State value)

public AppConnector.Builder setState(AppConnector.State value)

Output only. The current state of the AppConnector.

.google.cloud.beyondcorp.appconnectors.v1.AppConnector.State state = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
NameDescription
valueAppConnector.State

The state to set.

Returns
TypeDescription
AppConnector.Builder

This builder for chaining.

setStateValue(int value)

public AppConnector.Builder setStateValue(int value)

Output only. The current state of the AppConnector.

.google.cloud.beyondcorp.appconnectors.v1.AppConnector.State state = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
NameDescription
valueint

The enum numeric value on the wire for state to set.

Returns
TypeDescription
AppConnector.Builder

This builder for chaining.

setUid(String value)

public AppConnector.Builder setUid(String value)

Output only. A unique identifier for the instance generated by the system.

string uid = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
NameDescription
valueString

The uid to set.

Returns
TypeDescription
AppConnector.Builder

This builder for chaining.

setUidBytes(ByteString value)

public AppConnector.Builder setUidBytes(ByteString value)

Output only. A unique identifier for the instance generated by the system.

string uid = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
NameDescription
valueByteString

The bytes for uid to set.

Returns
TypeDescription
AppConnector.Builder

This builder for chaining.

setUnknownFields(UnknownFieldSet unknownFields)

public final AppConnector.Builder setUnknownFields(UnknownFieldSet unknownFields)
Parameter
NameDescription
unknownFieldsUnknownFieldSet
Returns
TypeDescription
AppConnector.Builder
Overrides

setUpdateTime(Timestamp value)

public AppConnector.Builder setUpdateTime(Timestamp value)

Output only. Timestamp when the resource was last modified.

.google.protobuf.Timestamp update_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
NameDescription
valueTimestamp
Returns
TypeDescription
AppConnector.Builder

setUpdateTime(Timestamp.Builder builderForValue)

public AppConnector.Builder setUpdateTime(Timestamp.Builder builderForValue)

Output only. Timestamp when the resource was last modified.

.google.protobuf.Timestamp update_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];

Parameter
NameDescription
builderForValueBuilder
Returns
TypeDescription
AppConnector.Builder