Module: Materialist::Materializer::Internals::DSL
- Defined in:
- lib/materialist/materializer/internals/dsl.rb
Instance Method Summary collapse
- #after_destroy(*method_array) ⇒ Object
- #after_upsert(*method_array) ⇒ Object
- #before_destroy(*method_array) ⇒ Object
- #before_upsert(*method_array) ⇒ Object
- #capture(key, as: key) ⇒ Object
- #capture_link_href(key, as:, &url_parser_block) ⇒ Object
- #link(key, enable_caching: false) ⇒ Object
- #materialize_link(key, topic: key) ⇒ Object
- #persist_to(klass) ⇒ Object
- #sidekiq_options(options) ⇒ Object
- #source_key(key, &url_parser_block) ⇒ Object
Instance Method Details
#after_destroy(*method_array) ⇒ Object
50 51 52 |
# File 'lib/materialist/materializer/internals/dsl.rb', line 50 def after_destroy(*method_array) [:after_destroy] = method_array end |
#after_upsert(*method_array) ⇒ Object
46 47 48 |
# File 'lib/materialist/materializer/internals/dsl.rb', line 46 def after_upsert(*method_array) [:after_upsert] = method_array end |
#before_destroy(*method_array) ⇒ Object
54 55 56 |
# File 'lib/materialist/materializer/internals/dsl.rb', line 54 def before_destroy(*method_array) [:before_destroy] = method_array end |
#before_upsert(*method_array) ⇒ Object
42 43 44 |
# File 'lib/materialist/materializer/internals/dsl.rb', line 42 def before_upsert(*method_array) [:before_upsert] = method_array end |
#capture(key, as: key) ⇒ Object
9 10 11 |
# File 'lib/materialist/materializer/internals/dsl.rb', line 9 def capture(key, as: key) __materialist_dsl_mapping_stack.last << FieldMapping.new(key: key, as: as) end |
#capture_link_href(key, as:, &url_parser_block) ⇒ Object
13 14 15 16 17 18 19 |
# File 'lib/materialist/materializer/internals/dsl.rb', line 13 def capture_link_href(key, as:, &url_parser_block) __materialist_dsl_mapping_stack.last << LinkHrefMapping.new( key: key, as: as, url_parser: url_parser_block ) end |
#link(key, enable_caching: false) ⇒ Object
21 22 23 24 25 26 27 |
# File 'lib/materialist/materializer/internals/dsl.rb', line 21 def link(key, enable_caching: false) link_mapping = LinkMapping.new(key: key, enable_caching: enable_caching) __materialist_dsl_mapping_stack.last << link_mapping __materialist_dsl_mapping_stack << link_mapping.mapping yield __materialist_dsl_mapping_stack.pop end |
#materialize_link(key, topic: key) ⇒ Object
5 6 7 |
# File 'lib/materialist/materializer/internals/dsl.rb', line 5 def materialize_link(key, topic: key) [:links_to_materialize][key] = { topic: topic } end |
#persist_to(klass) ⇒ Object
29 30 31 |
# File 'lib/materialist/materializer/internals/dsl.rb', line 29 def persist_to(klass) [:model_class] = klass end |
#sidekiq_options(options) ⇒ Object
33 34 35 |
# File 'lib/materialist/materializer/internals/dsl.rb', line 33 def () [:sidekiq_options] = end |
#source_key(key, &url_parser_block) ⇒ Object
37 38 39 40 |
# File 'lib/materialist/materializer/internals/dsl.rb', line 37 def source_key(key, &url_parser_block) [:source_key] = key [:url_parser] = url_parser_block end |