Sha256: 698ef80d97e1ff77f9803faaa9525d4319dc861c45948f867cd5f75835585adc

Contents?: true

Size: 1.1 KB

Versions: 2

Compression:

Stored size: 1.1 KB

Contents

require 'hashie/dash'
require 'hashie/mash'
require 'trax_core'
require 'inherited_resources'
require 'will_paginate'
require 'active_model_serializers'
require 'has_scope'

module Trax
  module Controller
    extend ::ActiveSupport::Concern
    extend ::ActiveSupport::Autoload

    included do
      inherit_resources
    end

    autoload :Actions
    autoload :Authorize
    autoload :Authorization
    autoload :Config
    autoload :Collection
    autoload :Engine
    autoload :Resource
    autoload :InheritResources
    autoload :ActionTypes
    autoload :PermitParamsFor
    autoload :Serialization

    @configuration ||= ::Trax::Controller::Config.new

    def self.configure(&block)
      block.call(config)
    end

    include ::Trax::Controller::InheritResources
    include ::Trax::Controller::Collection::Base
    include ::Trax::Controller::Resource::Base
    include ::Trax::Controller::Actions
    include ::Trax::Controller::ActionTypes

    class << self
      attr_accessor :configuration
      alias_method :config, :configuration
    end
  end
end

::Trax::Controller::Engine if defined?(::Rails)

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
trax_controller-1.0.0 lib/trax/controller.rb
trax_controller-0.1.4 lib/trax/controller.rb