Sha256: d3ddf0b47e1eeb183a899f0cb03d20efb32083bd850644d961418b887825996d

Contents?: true

Size: 777 Bytes

Versions: 4

Compression:

Stored size: 777 Bytes

Contents

module TroleGroups
  module Api
    autoload :Core,       'trole_groups/api/core'
    autoload :Cache,      'trole_groups/api/cache'
    autoload :Config,     'trole_groups/api/config'
    autoload :Event,      'trole_groups/api/event'
    autoload :Read,       'trole_groups/api/read'
    autoload :Write,      'trole_groups/api/write'
    autoload :Validation, 'trole_groups/api/validation'


    module ClassMethods
      def apis
        [:core, :cache, :config, :event, :read, :validation, :write]
      end

      def included(base)
        apis.each do |api|
          begin
            base.include_and_extend :"#{api.to_s.camelize}"
          rescue
            puts "include error: #{api}"
          end
        end
      end
    end
    extend ClassMethods
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
troles-0.6.1 lib/trole_groups/api.rb
troles-0.6.0 lib/trole_groups/api.rb
troles-0.5.2 lib/trole_groups/api.rb
troles-0.5.1 lib/trole_groups/api.rb