Module: DataMagic
- Extended by:
- DateTranslation, StandardTranslation, YmlReader
- Defined in:
- lib/data_magic.rb,
lib/data_magic/version.rb,
lib/data_magic/translation.rb,
lib/data_magic/date_translation.rb,
lib/data_magic/standard_translation.rb
Defined Under Namespace
Modules: DateTranslation, StandardTranslation Classes: Translation
Constant Summary collapse
- VERSION =
"0.20"
Class Attribute Summary collapse
-
.yml ⇒ Object
Returns the value of attribute yml.
Instance Attribute Summary collapse
-
#parent ⇒ Object
readonly
Returns the value of attribute parent.
Class Method Summary collapse
- .add_translator(translator) ⇒ Object
- .default_directory ⇒ Object
- .included(cls) ⇒ Object
- .translators ⇒ Object
Instance Method Summary collapse
Methods included from StandardTranslation
catch_phrase, cell_phone, characters, city, company_name, country, domain_name, email_address, first_name, full_name, last_name, mask, name_prefix, name_suffix, paragraphs, phone_number, randomize, secondary_address, sentence, sentences, sequential, state, state_abbr, street_address, title, url, user_name, words, zip_code
Methods included from DateTranslation
day_of_week, day_of_week_abbr, month, month_abbr, today, tomorrow, yesterday
Class Attribute Details
.yml ⇒ Object
Returns the value of attribute yml.
65 66 67 |
# File 'lib/data_magic.rb', line 65 def yml @yml end |
Instance Attribute Details
#parent ⇒ Object (readonly)
Returns the value of attribute parent.
15 16 17 |
# File 'lib/data_magic.rb', line 15 def parent @parent end |
Class Method Details
.add_translator(translator) ⇒ Object
71 72 73 |
# File 'lib/data_magic.rb', line 71 def add_translator(translator) translators << translator end |
.default_directory ⇒ Object
67 68 69 |
# File 'lib/data_magic.rb', line 67 def default_directory 'config/data' end |
.included(cls) ⇒ Object
19 20 21 22 23 24 |
# File 'lib/data_magic.rb', line 19 def self.included(cls) @parent = cls translators.each do |translator| Translation.send :include, translator end end |
.translators ⇒ Object
75 76 77 |
# File 'lib/data_magic.rb', line 75 def translators @translators ||= [] end |
Instance Method Details
#data_for(key, additional = {}) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/data_magic.rb', line 26 def data_for(key, additional={}) if key.is_a?(String) && key.match(%r{/}) filename, record = key.split('/') DataMagic.load("#{filename}.yml") else record = key.to_s DataMagic.load(the_file) unless DataMagic.yml end data = DataMagic.yml[record] raise ArgumentError, "Undefined key #{key}" unless data prep_data data.merge(additional).clone end |