Class: Pageflow::RevisionComponents
- Inherits:
-
Object
- Object
- Pageflow::RevisionComponents
- Includes:
- Enumerable
- Defined in:
- lib/pageflow/revision_components.rb
Overview
rubocop:todo Style/Documentation
Instance Method Summary collapse
- #create_defaults(revision) ⇒ Object
- #each ⇒ Object
-
#initialize ⇒ RevisionComponents
constructor
A new instance of RevisionComponents.
- #register(revision_component, create_defaults: false) ⇒ Object
Constructor Details
#initialize ⇒ RevisionComponents
Returns a new instance of RevisionComponents.
5 6 7 8 |
# File 'lib/pageflow/revision_components.rb', line 5 def initialize @revision_components = [] @create_defaults_hooks = [] end |
Instance Method Details
#create_defaults(revision) ⇒ Object
24 25 26 |
# File 'lib/pageflow/revision_components.rb', line 24 def create_defaults(revision) @create_defaults_hooks.each { |hook| hook.call(revision) } end |
#each ⇒ Object
20 21 22 |
# File 'lib/pageflow/revision_components.rb', line 20 def each(&) @revision_components.each(&) end |
#register(revision_component, create_defaults: false) ⇒ Object
10 11 12 13 14 15 16 17 18 |
# File 'lib/pageflow/revision_components.rb', line 10 def register(revision_component, create_defaults: false) return if @revision_components.include?(revision_component) @revision_components << revision_component return unless create_defaults @create_defaults_hooks << ->(revision) { revision_component.create_defaults(revision) } end |