Class: OpenFga::Leaf
- Inherits:
-
ApiModelBase
- Object
- ApiModelBase
- OpenFga::Leaf
- Defined in:
- lib/openfga/models/leaf.rb
Overview
A leaf node contains either - a set of users (which may be individual users, or usersets referencing other relations) - a computed node, which is the result of a computed userset value in the authorization model - a tupleToUserset nodes, containing the result of expanding a tupleToUserset value in a authorization model.
Instance Attribute Summary collapse
-
#computed ⇒ Object
Returns the value of attribute computed.
-
#tuple_to_userset ⇒ Object
Returns the value of attribute tuple_to_userset.
-
#users ⇒ Object
Returns the value of attribute users.
Class Method Summary collapse
-
.acceptable_attribute_map ⇒ Object
Returns attribute mapping this model knows about.
-
.acceptable_attributes ⇒ Object
Returns all the JSON keys this model knows about.
-
.attribute_map ⇒ Object
Attribute mapping from ruby-style variable name to JSON key.
-
.build_from_hash(attributes) ⇒ Object
Builds the object from hash.
-
.openapi_nullable ⇒ Object
List of attributes with nullable: true.
-
.openapi_types ⇒ Object
Attribute type mapping.
Instance Method Summary collapse
-
#==(o) ⇒ Object
Checks equality by comparing each attribute.
- #eql?(o) ⇒ Boolean
-
#hash ⇒ Integer
Calculates hash code according to all attributes.
-
#initialize(attributes = {}) ⇒ Leaf
constructor
Initializes the object.
-
#list_invalid_properties ⇒ Object
Show invalid properties with the reasons.
-
#to_hash ⇒ Hash
Returns the object in the form of hash.
-
#valid? ⇒ Boolean
Check to see if the all the properties in the model are valid.
Methods inherited from ApiModelBase
_deserialize, #_to_hash, #to_body, #to_s
Constructor Details
#initialize(attributes = {}) ⇒ Leaf
Initializes the object
62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 |
# File 'lib/openfga/models/leaf.rb', line 62 def initialize(attributes = {}) if (!attributes.is_a?(Hash)) fail ArgumentError, 'The input argument (attributes) must be a hash in `OpenFga::Leaf` initialize method' end # check to see if the attribute exists and convert string to symbol for hash key acceptable_attribute_map = self.class.acceptable_attribute_map attributes = attributes.each_with_object({}) { |(k, v), h| if (!acceptable_attribute_map.key?(k.to_sym)) fail ArgumentError, "`#{k}` is not a valid attribute in `OpenFga::Leaf`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect end h[k.to_sym] = v } if attributes.key?(:'users') self.users = attributes[:'users'] end if attributes.key?(:'computed') self.computed = attributes[:'computed'] end if attributes.key?(:'tuple_to_userset') self.tuple_to_userset = attributes[:'tuple_to_userset'] end end |
Instance Attribute Details
#computed ⇒ Object
Returns the value of attribute computed.
22 23 24 |
# File 'lib/openfga/models/leaf.rb', line 22 def computed @computed end |
#tuple_to_userset ⇒ Object
Returns the value of attribute tuple_to_userset.
24 25 26 |
# File 'lib/openfga/models/leaf.rb', line 24 def tuple_to_userset @tuple_to_userset end |
#users ⇒ Object
Returns the value of attribute users.
20 21 22 |
# File 'lib/openfga/models/leaf.rb', line 20 def users @users end |
Class Method Details
.acceptable_attribute_map ⇒ Object
Returns attribute mapping this model knows about
36 37 38 |
# File 'lib/openfga/models/leaf.rb', line 36 def self.acceptable_attribute_map attribute_map end |
.acceptable_attributes ⇒ Object
Returns all the JSON keys this model knows about
41 42 43 |
# File 'lib/openfga/models/leaf.rb', line 41 def self.acceptable_attributes acceptable_attribute_map.values end |
.attribute_map ⇒ Object
Attribute mapping from ruby-style variable name to JSON key.
27 28 29 30 31 32 33 |
# File 'lib/openfga/models/leaf.rb', line 27 def self.attribute_map { 'users': :'users', 'computed': :'computed', 'tuple_to_userset': :'tupleToUserset' } end |
.build_from_hash(attributes) ⇒ Object
Builds the object from hash
129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 |
# File 'lib/openfga/models/leaf.rb', line 129 def self.build_from_hash(attributes) return nil unless attributes.is_a?(Hash) attributes = attributes.transform_keys(&:to_sym) transformed_hash = {} openapi_types.each_pair do |key, type| if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil? transformed_hash["#{key}"] = nil elsif type =~ /\AArray<(.*)>/i # check to ensure the input is an array given that the attribute # is documented as an array but the input is not if attributes[attribute_map[key]].is_a?(Array) transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) } end elsif !attributes[attribute_map[key]].nil? transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]]) end end new(transformed_hash) end |
.openapi_nullable ⇒ Object
List of attributes with nullable: true
55 56 57 58 |
# File 'lib/openfga/models/leaf.rb', line 55 def self.openapi_nullable Set.new([ ]) end |
.openapi_types ⇒ Object
Attribute type mapping.
46 47 48 49 50 51 52 |
# File 'lib/openfga/models/leaf.rb', line 46 def self.openapi_types { 'users': :'Users', 'computed': :'Computed', 'tuple_to_userset': :'UsersetTreeTupleToUserset' } end |
Instance Method Details
#==(o) ⇒ Object
Checks equality by comparing each attribute.
106 107 108 109 110 111 112 |
# File 'lib/openfga/models/leaf.rb', line 106 def ==(o) return true if self.equal?(o) self.class == o.class && users == o.users && computed == o.computed && tuple_to_userset == o.tuple_to_userset end |
#eql?(o) ⇒ Boolean
116 117 118 |
# File 'lib/openfga/models/leaf.rb', line 116 def eql?(o) self == o end |
#hash ⇒ Integer
Calculates hash code according to all attributes.
122 123 124 |
# File 'lib/openfga/models/leaf.rb', line 122 def hash [users, computed, tuple_to_userset].hash end |
#list_invalid_properties ⇒ Object
Show invalid properties with the reasons. Usually used together with valid?
91 92 93 94 95 |
# File 'lib/openfga/models/leaf.rb', line 91 def list_invalid_properties warn '[DEPRECATED] the `list_invalid_properties` method is obsolete' invalid_properties = Array.new invalid_properties end |
#to_hash ⇒ Hash
Returns the object in the form of hash
151 152 153 154 155 156 157 158 159 160 161 162 163 |
# File 'lib/openfga/models/leaf.rb', line 151 def to_hash hash = {} self.class.attribute_map.each_pair do |attr, param| value = self.send(attr) if value.nil? is_nullable = self.class.openapi_nullable.include?(attr) next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}")) end hash[param] = _to_hash(value) end hash end |
#valid? ⇒ Boolean
Check to see if the all the properties in the model are valid
99 100 101 102 |
# File 'lib/openfga/models/leaf.rb', line 99 def valid? warn '[DEPRECATED] the `valid?` method is obsolete' true end |