Class: ActiveShipping::PackageItem
- Inherits:
-
Object
- Object
- ActiveShipping::PackageItem
- Defined in:
- lib/active_shipping/package_item.rb
Instance Attribute Summary collapse
-
#hs_code ⇒ Object
readonly
Returns the value of attribute hs_code.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#options ⇒ Object
readonly
Returns the value of attribute options.
-
#quantity ⇒ Object
readonly
Returns the value of attribute quantity.
-
#sku ⇒ Object
readonly
Returns the value of attribute sku.
-
#value ⇒ Object
readonly
Returns the value of attribute value.
-
#weight(options = {}) ⇒ Object
(also: #mass)
readonly
Returns the value of attribute weight.
Instance Method Summary collapse
- #grams(options = {}) ⇒ Object (also: #g)
-
#initialize(name, grams_or_ounces, value, quantity, options = {}) ⇒ PackageItem
constructor
A new instance of PackageItem.
- #kilograms(options = {}) ⇒ Object (also: #kg, #kgs)
- #ounces(options = {}) ⇒ Object (also: #oz)
- #pounds(options = {}) ⇒ Object (also: #lb, #lbs)
Constructor Details
#initialize(name, grams_or_ounces, value, quantity, options = {}) ⇒ PackageItem
Returns a new instance of PackageItem.
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/active_shipping/package_item.rb', line 5 def initialize(name, grams_or_ounces, value, quantity, = {}) @name = name imperial = ([:units] == :imperial) @unit_system = imperial ? :imperial : :metric @weight = grams_or_ounces @weight = Measured::Weight.new(grams_or_ounces, (@unit_system == :imperial ? :oz : :g)) unless @weight.is_a?(Measured::Weight) @value = Package.cents_from(value) @quantity = quantity > 0 ? quantity : 1 @sku = [:sku] @hs_code = [:hs_code] @options = end |
Instance Attribute Details
#hs_code ⇒ Object (readonly)
Returns the value of attribute hs_code.
3 4 5 |
# File 'lib/active_shipping/package_item.rb', line 3 def hs_code @hs_code end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
3 4 5 |
# File 'lib/active_shipping/package_item.rb', line 3 def name @name end |
#options ⇒ Object (readonly)
Returns the value of attribute options.
3 4 5 |
# File 'lib/active_shipping/package_item.rb', line 3 def @options end |
#quantity ⇒ Object (readonly)
Returns the value of attribute quantity.
3 4 5 |
# File 'lib/active_shipping/package_item.rb', line 3 def quantity @quantity end |
#sku ⇒ Object (readonly)
Returns the value of attribute sku.
3 4 5 |
# File 'lib/active_shipping/package_item.rb', line 3 def sku @sku end |
#value ⇒ Object (readonly)
Returns the value of attribute value.
3 4 5 |
# File 'lib/active_shipping/package_item.rb', line 3 def value @value end |
#weight(options = {}) ⇒ Object (readonly) Also known as: mass
Returns the value of attribute weight.
3 4 5 |
# File 'lib/active_shipping/package_item.rb', line 3 def weight @weight end |
Instance Method Details
#grams(options = {}) ⇒ Object Also known as: g
43 44 45 |
# File 'lib/active_shipping/package_item.rb', line 43 def grams( = {}) weight().convert_to(:g).value end |
#kilograms(options = {}) ⇒ Object Also known as: kg, kgs
54 55 56 |
# File 'lib/active_shipping/package_item.rb', line 54 def kilograms( = {}) weight().convert_to(:kg).value end |
#ounces(options = {}) ⇒ Object Also known as: oz
38 39 40 |
# File 'lib/active_shipping/package_item.rb', line 38 def ounces( = {}) weight().convert_to(:oz).value end |
#pounds(options = {}) ⇒ Object Also known as: lb, lbs
48 49 50 |
# File 'lib/active_shipping/package_item.rb', line 48 def pounds( = {}) weight().convert_to(:lb).value end |