Permalink
Browse files

Removed broken attempt to DRY module ClassMethod #970

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1069 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
  • Loading branch information...
1 parent c788bcb commit 7c8d2f28e16958b16812b5fef3d7eca8b640e445 @dhh dhh committed Apr 2, 2005
@@ -1,5 +1,10 @@
module ActionController
module Scaffolding # :nodoc:
+ def self.append_features(base)
+ super
+ base.extend(ClassMethods)
+ end
+
# Scaffolding is a way to quickly put an Active Record class online by providing a series of standardized actions
# for listing, showing, creating, updating, and destroying objects of the class. These standardized actions come
# with both controller logic and default templates that through introspection already know which fields to display
@@ -27,6 +27,11 @@ module ActionController #:nodoc:
# :redirect_to => :category_url
#
module Verification
+ def self.append_features(base) #:nodoc:
+ super
+ base.extend(ClassMethods)
+ end
+
module ClassMethods
# Verify the given actions so that if certain prerequisites are not met,
# the user is redirected to a different action. The +options+ parameter
@@ -120,7 +120,7 @@ def test_invalid_record
end
end
- rescue SqliteError => e
+ rescue Object => e
puts "Skipping active record based tests"
puts e.message
end
@@ -4,6 +4,11 @@ module Direct # :nodoc:
class ContainerError < ActionWebServiceError # :nodoc:
end
+ def self.append_features(base) # :nodoc:
+ super
+ base.extend(ClassMethods)
+ end
+
module ClassMethods
# Attaches ActionWebService API +definition+ to the calling class.
#
@@ -1,6 +1,11 @@
module ActiveRecord
module Acts #:nodoc:
module List #:nodoc:
+ def self.append_features(base)
+ super
+ base.extend(ClassMethods)
+ end
+
# This act provides the capabilities for sorting and reordering a number of objects in list.
# The class that has this specified needs to have a "position" column defined as an integer on
# the mapped database table.
@@ -1,6 +1,11 @@
module ActiveRecord
module Acts #:nodoc:
module Tree #:nodoc:
+ def self.append_features(base)
+ super
+ base.extend(ClassMethods)
+ end
+
# Specify this act if you want to model a tree structure by providing a parent association and an children
# association. This act assumes that requires that you have a foreign key column, which by default is called parent_id.
#
@@ -1,5 +1,10 @@
module ActiveRecord
module Aggregations # :nodoc:
+ def self.append_features(base)
+ super
+ base.extend(ClassMethods)
+ end
+
# Active Record implements aggregation through a macro-like class method called +composed_of+ for representing attributes
# as value objects. It expresses relationships like "Account [is] composed of Money [among other things]" or "Person [is]
# composed of [an] address". Each call to the macro adds a description on how the value objects are created from the
@@ -8,6 +8,11 @@
module ActiveRecord
module Associations # :nodoc:
+ def self.append_features(base)
+ super
+ base.extend(ClassMethods)
+ end
+
# Clears out the association cache
def clear_association_cache #:nodoc:
self.class.reflect_on_all_associations.to_a.each do |assoc|
@@ -9,6 +9,11 @@ def wrap_with(wrapper, *attributes)
end
end
+ def self.append_features(base)
+ super
+ base.extend(ClassMethods)
+ end
+
class AbstractWrapper #:nodoc:
def self.wrap(attribute, record_binding) #:nodoc:
%w( before_save after_save after_initialize ).each do |callback|

0 comments on commit 7c8d2f2

Please sign in to comment.