Class: ActiveRecordViews::RegisteredView
- Inherits:
-
Object
- Object
- ActiveRecordViews::RegisteredView
- Defined in:
- lib/active_record_views/registered_view.rb
Instance Attribute Summary collapse
-
#model_class_name ⇒ Object
readonly
Returns the value of attribute model_class_name.
-
#sql_path ⇒ Object
readonly
Returns the value of attribute sql_path.
Instance Method Summary collapse
- #dead? ⇒ Boolean
-
#initialize(model_class, sql_path) ⇒ RegisteredView
constructor
A new instance of RegisteredView.
- #model_class ⇒ Object
- #reload! ⇒ Object
- #stale? ⇒ Boolean
Constructor Details
#initialize(model_class, sql_path) ⇒ RegisteredView
Returns a new instance of RegisteredView.
5 6 7 8 9 |
# File 'lib/active_record_views/registered_view.rb', line 5 def initialize(model_class, sql_path) @model_class_name = model_class.name @sql_path = sql_path end |
Instance Attribute Details
#model_class_name ⇒ Object (readonly)
Returns the value of attribute model_class_name.
3 4 5 |
# File 'lib/active_record_views/registered_view.rb', line 3 def model_class_name @model_class_name end |
#sql_path ⇒ Object (readonly)
Returns the value of attribute sql_path.
3 4 5 |
# File 'lib/active_record_views/registered_view.rb', line 3 def sql_path @sql_path end |
Instance Method Details
#dead? ⇒ Boolean
19 20 21 |
# File 'lib/active_record_views/registered_view.rb', line 19 def dead? !File.exist?(sql_path) end |
#model_class ⇒ Object
11 12 13 |
# File 'lib/active_record_views/registered_view.rb', line 11 def model_class @model_class_name.constantize end |
#reload! ⇒ Object
23 24 25 26 27 28 29 30 31 |
# File 'lib/active_record_views/registered_view.rb', line 23 def reload! if File.exist? sql_path ActiveRecordViews.create_view model_class.connection, model_class.table_name, model_class.name, ActiveRecordViews.read_sql_file(model_class, sql_path), model_class. model_class.reset_column_information else ActiveRecordViews.drop_view model_class.connection, model_class.table_name end end |
#stale? ⇒ Boolean
15 16 17 |
# File 'lib/active_record_views/registered_view.rb', line 15 def stale? != @cached_sql_timestamp end |