Class: SDM::Group

Inherits:
Object
  • Object
show all
Defined in:
lib/models/porcelain.rb

Overview

A Group is a named set of principals.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(description: nil, id: nil, name: nil, source: nil, tags: nil) ⇒ Group

Returns a new instance of Group.



8275
8276
8277
8278
8279
8280
8281
8282
8283
8284
8285
8286
8287
# File 'lib/models/porcelain.rb', line 8275

def initialize(
  description: nil,
  id: nil,
  name: nil,
  source: nil,
  tags: nil
)
  @description = description == nil ? "" : description
  @id = id == nil ? "" : id
  @name = name == nil ? "" : name
  @source = source == nil ? "" : source
  @tags = tags == nil ? SDM::_porcelain_zero_value_tags() : tags
end

Instance Attribute Details

#descriptionObject

Description of the Group.



8265
8266
8267
# File 'lib/models/porcelain.rb', line 8265

def description
  @description
end

#idObject

Unique identifier of the Group.



8267
8268
8269
# File 'lib/models/porcelain.rb', line 8267

def id
  @id
end

#nameObject

Unique human-readable name of the Group.



8269
8270
8271
# File 'lib/models/porcelain.rb', line 8269

def name
  @name
end

#sourceObject

Source is a read only field for what service manages this group, e.g. StrongDM, Okta, Azure.



8271
8272
8273
# File 'lib/models/porcelain.rb', line 8271

def source
  @source
end

#tagsObject

Tags is a map of key/value pairs that can be attached to a Group.



8273
8274
8275
# File 'lib/models/porcelain.rb', line 8273

def tags
  @tags
end

Instance Method Details

#to_json(options = {}) ⇒ Object



8289
8290
8291
8292
8293
8294
8295
# File 'lib/models/porcelain.rb', line 8289

def to_json(options = {})
  hash = {}
  self.instance_variables.each do |var|
    hash[var.id2name.delete_prefix("@")] = self.instance_variable_get var
  end
  hash.to_json
end