Module: Killbill::Plugin::PropertiesHelper
- Included in:
- ActiveMerchant::PaymentPlugin, ActiveMerchant::RSpec
- Defined in:
- lib/killbill/helpers/properties_helper.rb
Instance Method Summary collapse
- #build_property(key, value = nil) ⇒ Object
- #find_value_from_properties(properties, key = nil) ⇒ Object
- #hash_to_properties(options = {}) ⇒ Object
- #merge_properties(properties, options = {}) ⇒ Object
- #properties_to_hash(properties, options = {}) ⇒ Object
Instance Method Details
#build_property(key, value = nil) ⇒ Object
33 34 35 36 37 38 |
# File 'lib/killbill/helpers/properties_helper.rb', line 33 def build_property(key, value = nil) prop = ::Killbill::Plugin::Model::PluginProperty.new prop.key = key prop.value = value prop end |
#find_value_from_properties(properties, key = nil) ⇒ Object
5 6 7 8 9 |
# File 'lib/killbill/helpers/properties_helper.rb', line 5 def find_value_from_properties(properties, key = nil) return nil if key.nil? prop = (properties.find { |kv| kv.key.to_s == key.to_s }) prop.nil? ? nil : prop.value end |
#hash_to_properties(options = {}) ⇒ Object
11 12 13 |
# File 'lib/killbill/helpers/properties_helper.rb', line 11 def hash_to_properties( = {}) merge_properties([], ) end |
#merge_properties(properties, options = {}) ⇒ Object
23 24 25 26 27 28 29 30 31 |
# File 'lib/killbill/helpers/properties_helper.rb', line 23 def merge_properties(properties, = {}) merged = properties_to_hash(properties, ) properties = [] merged.each do |k, v| properties << build_property(k, v) end properties end |
#properties_to_hash(properties, options = {}) ⇒ Object
15 16 17 18 19 20 21 |
# File 'lib/killbill/helpers/properties_helper.rb', line 15 def properties_to_hash(properties, = {}) merged = {} (properties || []).each do |p| merged[p.key.to_sym] = p.value end merged.merge() end |