Class: Google::Apis::ManagedkafkaV1::Acl

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

Overview

Represents the set of ACLs for a given Kafka Resource Pattern, which consists of resource_type, resource_name and pattern_type.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Acl

Returns a new instance of Acl.



102
103
104
# File 'lib/google/apis/managedkafka_v1/classes.rb', line 102

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

Instance Attribute Details

#acl_entriesArray<Google::Apis::ManagedkafkaV1::AclEntry>

Required. The ACL entries that apply to the resource pattern. The maximum number of allowed entries 100. Corresponds to the JSON property aclEntries



55
56
57
# File 'lib/google/apis/managedkafka_v1/classes.rb', line 55

def acl_entries
  @acl_entries
end

#etagString

Optional. etag is used for concurrency control. An etag is returned in the response to GetAcl and CreateAcl. Callers are required to put that etag in the request to UpdateAcl to ensure that their change will be applied to the same version of the acl that exists in the Kafka Cluster. A terminal 'T' character in the etag indicates that the AclEntries were truncated; more entries for the Acl exist on the Kafka Cluster, but can't be returned in the Acl due to repeated field limits. Corresponds to the JSON property etag

Returns:

  • (String)


66
67
68
# File 'lib/google/apis/managedkafka_v1/classes.rb', line 66

def etag
  @etag
end

#nameString

Identifier. The name for the acl. Represents a single Resource Pattern. Structured like: projects/project/locations/location/clusters/cluster/ acls/acl_id The structure of acl_id defines the Resource Pattern ( resource_type, resource_name, pattern_type) of the acl. acl_id is structured like one of the following: For acls on the cluster: cluster For acls on a single resource within the cluster: topic/resource_name`consumerGroup/` resource_name transactionalId/resource_nameFor acls on all resources that match a prefix: `topicPrefixed/`resource_name consumerGroupPrefixed/ resource_name`transactionalIdPrefixed/`resource_name For acls on all resources of a given type (i.e. the wildcard literal ""): allTopics ( represents `topic/)allConsumerGroups(representsconsumerGroup/) allTransactionalIds(representstransactionalId/) Corresponds to the JSON propertyname`

Returns:

  • (String)


82
83
84
# File 'lib/google/apis/managedkafka_v1/classes.rb', line 82

def name
  @name
end

#pattern_typeString

Output only. The ACL pattern type derived from the name. One of: LITERAL, PREFIXED. Corresponds to the JSON property patternType

Returns:

  • (String)


88
89
90
# File 'lib/google/apis/managedkafka_v1/classes.rb', line 88

def pattern_type
  @pattern_type
end

#resource_nameString

Output only. The ACL resource name derived from the name. For cluster resource_type, this is always "kafka-cluster". Can be the wildcard literal "*". Corresponds to the JSON property resourceName

Returns:

  • (String)


94
95
96
# File 'lib/google/apis/managedkafka_v1/classes.rb', line 94

def resource_name
  @resource_name
end

#resource_typeString

Output only. The ACL resource type derived from the name. One of: CLUSTER, TOPIC, GROUP, TRANSACTIONAL_ID. Corresponds to the JSON property resourceType

Returns:

  • (String)


100
101
102
# File 'lib/google/apis/managedkafka_v1/classes.rb', line 100

def resource_type
  @resource_type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



107
108
109
110
111
112
113
114
# File 'lib/google/apis/managedkafka_v1/classes.rb', line 107

def update!(**args)
  @acl_entries = args[:acl_entries] if args.key?(:acl_entries)
  @etag = args[:etag] if args.key?(:etag)
  @name = args[:name] if args.key?(:name)
  @pattern_type = args[:pattern_type] if args.key?(:pattern_type)
  @resource_name = args[:resource_name] if args.key?(:resource_name)
  @resource_type = args[:resource_type] if args.key?(:resource_type)
end