Sha256: 05627b7a77597691f67de6c4772fd8d954c176f072fd1dc54f9678b50fe240bb

Contents?: true

Size: 564 Bytes

Versions: 7

Compression:

Stored size: 564 Bytes

Contents

module Ddr::Auth
  module Roles
    extend ActiveSupport::Autoload

    autoload :Role
    autoload :RoleType
    autoload :RoleTypes

    include RoleTypes

    RESOURCE_SCOPE = "resource".freeze
    POLICY_SCOPE = "policy".freeze
    SCOPES = [RESOURCE_SCOPE, POLICY_SCOPE].freeze

    class << self

      def type_map
        @type_map ||= role_types.map { |role_type| [role_type.to_s, role_type] }.to_h
      end

      def role_types
        @role_types ||= RoleTypes.constants(false).map { |const| RoleTypes.const_get(const) }
      end

    end

  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
ddr-core-1.1.2 lib/ddr/auth/roles.rb
ddr-core-1.1.1 lib/ddr/auth/roles.rb
ddr-core-1.1.0 lib/ddr/auth/roles.rb
ddr-core-1.0.0 lib/ddr/auth/roles.rb
ddr-core-0.3.0 lib/ddr/auth/roles.rb
ddr-core-0.2.2 lib/ddr/auth/roles.rb
ddr-core-0.2.1 lib/ddr/auth/roles.rb