Sha256: b0a23666449c0cfd25f0061a3fae1c162af87adc8d36992a8a22f8bdb443b445

Contents?: true

Size: 765 Bytes

Versions: 3

Compression:

Stored size: 765 Bytes

Contents

# @author Kristian Mandrup
#
# Troles base storage for Many roles strategies
#
module Troles
  module Storage
    class BaseMany < Troles::Common::Storage
      protected
      
      # get matching list of Role instances
      # @param  [Array<Symbol>] list of role names to find Roles for
      # @return [Array<Role>] references to Role instances
      def find_roles *roles
        role_model.where(:name => roles.flatten).all
      end

      # get list of embedded Role instances
      # @param  [Array<Symbol>] list of role names
      # @return [Array<Role>] Role instances generated      
      def roles_to_embed *roles
        raise "Must be implemented by embed storage to generate a set of roles to embed"
      end           
    end        
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
troles-0.5.2 lib/troles/storage/base_many.rb
troles-0.5.1 lib/troles/storage/base_many.rb
troles-0.5.0 lib/troles/storage/base_many.rb