Skip to content

Commit

Permalink
Add one railtie to load the proper files depending of the frameworks
Browse files Browse the repository at this point in the history
  • Loading branch information
Rafael Mendonça França committed Oct 14, 2012
1 parent 0544c78 commit c4f9e10
Show file tree
Hide file tree
Showing 8 changed files with 43 additions and 23 deletions.
29 changes: 27 additions & 2 deletions lib/rails-observers.rb
@@ -1,4 +1,29 @@
require "rails/observers/version" require "rails/observers/version"


require "rails/observers/activerecord/observer" module Rails
require "rails/observers/action_controller/caching" module Observes
module Railtie < Rails::Railtie
initializer "active_record.observer" do
ActiveSupport.on_load(:active_record) do
require "rails/observers/activerecord/active_record"
end
end

initializer "action_controller.caching.sweppers" do
ActiveSupport.on_load(:action_controller) do
require "rails/observers/action_controller/caching"
end
end

config.after_initialize do |app|
ActiveSupport.on_load(:active_record) do
ActiveRecord::Model.instantiate_observers

ActionDispatch::Reloader.to_prepare do
ActiveRecord::Model.instantiate_observers
end
end
end
end
end
end
4 changes: 3 additions & 1 deletion lib/rails/observers/activerecord/active_record.rb
@@ -1,3 +1,5 @@
require 'rails/observers/activerecord/model'

module ActiveRecord module ActiveRecord
autoload :Observer autoload :Observer, 'rails/observers/activerecord/observer'
end end
10 changes: 8 additions & 2 deletions lib/rails/observers/activerecord/model.rb
@@ -1,9 +1,15 @@
require 'rails/observers/active_model/active_model'

module ActiveRecord module ActiveRecord
module Model module Model
extend ActiveModel::Observing::ClassMethods

included do included do
extend ActiveModel::Observing::ClassMethods
include ActiveModel::Observing include ActiveModel::Observing
end end
end end

class Base
extend ActiveModel::Observing::ClassMethods
include ActiveModel::Observing
end
end end
2 changes: 0 additions & 2 deletions lib/rails/observers/activerecord/observer.rb
@@ -1,5 +1,3 @@
require 'rails/observers/active_model/active_model'

module ActiveRecord module ActiveRecord
# = Active Record Observer # = Active Record Observer
# #
Expand Down
13 changes: 0 additions & 13 deletions lib/rails/observers/activerecord/railtie.rb

This file was deleted.

2 changes: 1 addition & 1 deletion test/observer_array_test.rb
@@ -1,6 +1,6 @@
require 'minitest/autorun' require 'minitest/autorun'
require 'active_model' require 'active_model'
require 'rails-observers' require 'rails/observers/active_model/active_model'
require 'models/observers' require 'models/observers'


class ObserverArrayTest < ActiveModel::TestCase class ObserverArrayTest < ActiveModel::TestCase
Expand Down
2 changes: 1 addition & 1 deletion test/observing_test.rb
@@ -1,6 +1,6 @@
require 'minitest/autorun' require 'minitest/autorun'
require 'active_model' require 'active_model'
require 'rails-observers' require 'rails/observers/active_model/active_model'


class ObservedModel class ObservedModel
include ActiveModel::Observing include ActiveModel::Observing
Expand Down
4 changes: 3 additions & 1 deletion test/sweeper_test.rb
@@ -1,6 +1,8 @@
require 'minitest/autorun' require 'minitest/autorun'
require 'action_controller' require 'action_controller'
require 'rails-observers' require 'active_record'
require 'rails/observers/activerecord/active_record'
require 'rails/observers/action_controller/caching'


SharedTestRoutes = ActionDispatch::Routing::RouteSet.new SharedTestRoutes = ActionDispatch::Routing::RouteSet.new


Expand Down

0 comments on commit c4f9e10

Please sign in to comment.