Class: Posgra::DSL::Converter

Inherits:
Object
  • Object
show all
Defined in:
lib/posgra/dsl/converter.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(exported, options = {}) ⇒ Converter

Returns a new instance of Converter.



10
11
12
13
# File 'lib/posgra/dsl/converter.rb', line 10

def initialize(exported, options = {})
  @exported = exported
  @options = options
end

Class Method Details

.convert_grants(exported, options = {}) ⇒ Object



6
7
8
# File 'lib/posgra/dsl/converter.rb', line 6

def self.convert_grants(exported, options = {})
  self.new(exported, options).convert_grants
end

.convert_roles(exported, options = {}) ⇒ Object



2
3
4
# File 'lib/posgra/dsl/converter.rb', line 2

def self.convert_roles(exported, options = {})
  self.new(exported, options).convert_roles
end

Instance Method Details

#convert_grantsObject



25
26
27
28
# File 'lib/posgra/dsl/converter.rb', line 25

def convert_grants
  grants_by_role = @exported || {}
  output_roles(grants_by_role).strip
end

#convert_rolesObject



15
16
17
18
19
20
21
22
23
# File 'lib/posgra/dsl/converter.rb', line 15

def convert_roles
  users_by_group = @exported[:users_by_group] || {}
  users = @exported.fetch(:users, []) - users_by_group.values.flatten

  [
    output_users(users),
    output_groups(users_by_group),
  ].join("\n").strip
end