Module: Verikloak::Pundit

Defined in:
lib/verikloak/pundit.rb,
lib/verikloak/pundit/railtie.rb,
lib/verikloak/pundit/version.rb,
lib/verikloak/pundit/controller.rb,
lib/verikloak/pundit/claim_utils.rb,
lib/verikloak/pundit/delegations.rb,
lib/verikloak/pundit/role_mapper.rb,
lib/verikloak/pundit/user_context.rb,
lib/verikloak/pundit/configuration.rb,
lib/generators/verikloak/pundit/install/install_generator.rb

Overview

Pundit integration namespace

Defined Under Namespace

Modules: ClaimUtils, Controller, Delegations, Generators, RoleMapper Classes: Configuration, Railtie, UserContext

Constant Summary collapse

VERSION =

Gem version for verikloak-pundit.

Returns:

  • (String)
'1.1.0'

Class Method Summary collapse

Class Method Details

.configConfiguration

Access the current configuration without mutating it.

Returns:



44
45
46
47
48
# File 'lib/verikloak/pundit.rb', line 44

def config
  config_lock.synchronize do
    @config ||= Configuration.new.finalize!
  end
end

.configure {|Configuration| ... } ⇒ Configuration

Configure the library at runtime.

Yields:

  • (Configuration)

    Yields the configuration instance for mutation.

Returns:

  • (Configuration)

    the current configuration after applying changes



30
31
32
33
34
35
36
37
38
39
# File 'lib/verikloak/pundit.rb', line 30

def configure
  new_config = nil
  config_lock.synchronize do
    current = @config&.dup || Configuration.new
    yield current if block_given?
    new_config = current.finalize!
    @config = new_config
  end
  new_config
end

.reset!void

This method returns an undefined value.

Reset configuration to defaults. Useful for test suites.



53
54
55
56
57
# File 'lib/verikloak/pundit.rb', line 53

def reset!
  config_lock.synchronize do
    @config = nil
  end
end