Sha256: 44356c95f476d7eaa4b1de5c9c87260b294077ebff7e5c2ba89ae93e77d68b04

Contents?: true

Size: 1.07 KB

Versions: 15

Compression:

Stored size: 1.07 KB

Contents

# frozen_string_literal: true

# Filter class to remove members of a particular Entitlements-managed group.

module Entitlements
  class Data
    class Groups
      class Calculated
        class Filters
          class MemberOfGroup < Entitlements::Data::Groups::Calculated::Filters::Base
            include ::Contracts::Core
            C = ::Contracts

            # Determine if the member is filtered as per this definition. Return true if the member
            # is to be filtered out, false if the member does not match the filter.
            #
            # member - Entitlements::Models::Person object
            #
            # Returns true if the person is to be filtered out, false otherwise.
            Contract Entitlements::Models::Person => C::Bool
            def filtered?(member)
              return false if filter == :all
              return false unless member_of_named_group?(member, config.fetch("group"))
              return true if filter == :none
              !member_of_filter?(member)
            end
          end
        end
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 2 rubygems

Version Path
entitlements-app-1.2.0 lib/entitlements/data/groups/calculated/filters/member_of_group.rb
entitlements-app-1.1.0 lib/entitlements/data/groups/calculated/filters/member_of_group.rb
entitlements-app-1.0.0 lib/entitlements/data/groups/calculated/filters/member_of_group.rb
entitlements-app-0.3.4 lib/entitlements/data/groups/calculated/filters/member_of_group.rb
entitlements-app-0.3.1 lib/entitlements/data/groups/calculated/filters/member_of_group.rb
entitlements-app-0.3.0 lib/entitlements/data/groups/calculated/filters/member_of_group.rb
entitlements-0.2.1 lib/entitlements/data/groups/calculated/filters/member_of_group.rb
entitlements-app-0.2.1 lib/entitlements/data/groups/calculated/filters/member_of_group.rb
entitlements-0.2.0 lib/entitlements/data/groups/calculated/filters/member_of_group.rb
entitlements-app-0.2.0 lib/entitlements/data/groups/calculated/filters/member_of_group.rb
entitlements-0.1.8 lib/entitlements/data/groups/calculated/filters/member_of_group.rb
entitlements-app-0.1.8 lib/entitlements/data/groups/calculated/filters/member_of_group.rb
entitlements-0.1.7 lib/entitlements/data/groups/calculated/filters/member_of_group.rb
entitlements-app-0.1.7 lib/entitlements/data/groups/calculated/filters/member_of_group.rb
entitlements-app-0.1.6 lib/entitlements/data/groups/calculated/filters/member_of_group.rb