Class: Google::Apis::AlloydbV1alpha::Endpoint

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/alloydb_v1alpha/classes.rb,
lib/google/apis/alloydb_v1alpha/representations.rb,
lib/google/apis/alloydb_v1alpha/representations.rb

Overview

Endpoint resource.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Endpoint

Returns a new instance of Endpoint.



1602
1603
1604
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1602

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#annotationsHash<String,String>

Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128 Corresponds to the JSON property annotations

Returns:

  • (Hash<String,String>)


1508
1509
1510
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1508

def annotations
  @annotations
end

#create_timeString

Output only. Create time stamp Corresponds to the JSON property createTime

Returns:

  • (String)


1513
1514
1515
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1513

def create_time
  @create_time
end

#delete_timeString

Output only. Delete time stamp Corresponds to the JSON property deleteTime

Returns:

  • (String)


1518
1519
1520
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1518

def delete_time
  @delete_time
end

#display_nameString

User-settable and human-readable display name for the Endpoint. Corresponds to the JSON property displayName

Returns:

  • (String)


1523
1524
1525
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1523

def display_name
  @display_name
end

#dns_configGoogle::Apis::AlloydbV1alpha::DnsConfig

The DNS config for the endpoint, containing the DNS record name, type and targets. Corresponds to the JSON property dnsConfig



1529
1530
1531
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1529

def dns_config
  @dns_config
end

#effective_target_instancesArray<String>

Output only. The effective target instances that the endpoint is associated with. This is a list of target instance names, e.g. projects/project_number/ locations/location/clusters/cluster_id/instances/instance_id For write endpoint, there is only one effective target instance which has to be a primary instance. Effective target instances are only different from target instances after a switchover or cross-region failover operation. Otherwise, effective_target_instances are the same as target_instances. Note that after a cross-region failover operation, the effective_target_instances can be stale until the operation to update the endpoint is complete. Corresponds to the JSON property effectiveTargetInstances

Returns:

  • (Array<String>)


1542
1543
1544
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1542

def effective_target_instances
  @effective_target_instances
end

#endpoint_typeString

The type of the endpoint, either write or read. Corresponds to the JSON property endpointType

Returns:

  • (String)


1547
1548
1549
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1547

def endpoint_type
  @endpoint_type
end

#etagString

For Resource freshness validation (https://google.aip.dev/154) Corresponds to the JSON property etag

Returns:

  • (String)


1552
1553
1554
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1552

def etag
  @etag
end

#nameString

Output only. Identifier. The name of the endpoint resource with the format: * projects/project/locations/region/endpoints/endpoint_id where the endpoint ID segment should satisfy the regex expression [a-z0-9-]+. For more details see https://google.aip.dev/122. The prefix of the endpoint resource name is the name of the parent resource: * projects/project/locations/ region Corresponds to the JSON property name

Returns:

  • (String)


1562
1563
1564
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1562

def name
  @name
end

#reconcilingBoolean Also known as: reconciling?

Output only. Reconciling (https://google.aip.dev/128#reconciliation). Set to true if the current state of Endpoint does not match the user's intended state, and the service is actively updating the Endpoint to reconcile them. This can happen due to user-triggered updates or system actions like failover or maintenance. Corresponds to the JSON property reconciling

Returns:

  • (Boolean)


1571
1572
1573
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1571

def reconciling
  @reconciling
end

#stateString

Output only. The state of the endpoint. Corresponds to the JSON property state

Returns:

  • (String)


1577
1578
1579
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1577

def state
  @state
end

#target_instancesArray<String>

The names of the target instances for the endpoint, should be of format projects/project/locations/region/clusters/cluster/instances/instance. For write endpoint, there is only one target instance which has to be a primary instance. For read endpoint, there can be multiple target instances which can be read or secondary instances. After a cross-region failover or switchover operation, the endpoint will be associated with a different target instance. This change will be reflected in the effective_target_instances field. Corresponds to the JSON property targetInstances

Returns:

  • (Array<String>)


1589
1590
1591
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1589

def target_instances
  @target_instances
end

#uidString

Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted. Corresponds to the JSON property uid

Returns:

  • (String)


1595
1596
1597
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1595

def uid
  @uid
end

#update_timeString

Output only. Update time stamp Corresponds to the JSON property updateTime

Returns:

  • (String)


1600
1601
1602
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1600

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
# File 'lib/google/apis/alloydb_v1alpha/classes.rb', line 1607

def update!(**args)
  @annotations = args[:annotations] if args.key?(:annotations)
  @create_time = args[:create_time] if args.key?(:create_time)
  @delete_time = args[:delete_time] if args.key?(:delete_time)
  @display_name = args[:display_name] if args.key?(:display_name)
  @dns_config = args[:dns_config] if args.key?(:dns_config)
  @effective_target_instances = args[:effective_target_instances] if args.key?(:effective_target_instances)
  @endpoint_type = args[:endpoint_type] if args.key?(:endpoint_type)
  @etag = args[:etag] if args.key?(:etag)
  @name = args[:name] if args.key?(:name)
  @reconciling = args[:reconciling] if args.key?(:reconciling)
  @state = args[:state] if args.key?(:state)
  @target_instances = args[:target_instances] if args.key?(:target_instances)
  @uid = args[:uid] if args.key?(:uid)
  @update_time = args[:update_time] if args.key?(:update_time)
end