Class: Craigslist::API::CreditSummary

Inherits:
Object
  • Object
show all
Defined in:
lib/craigslist/api/credit_summary.rb

Overview

Credit standing for an invoiced account.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(credit_line: nil, remaining: nil, used: nil) ⇒ CreditSummary

Returns a new instance of CreditSummary.



16
17
18
19
20
21
# File 'lib/craigslist/api/credit_summary.rb', line 16

def initialize(credit_line: nil, remaining: nil, used: nil)
  @credit_line = credit_line
  @remaining = remaining
  @used = used
  freeze
end

Instance Attribute Details

#credit_lineMoney? (readonly)

Returns total credit extended.

Returns:

  • (Money, nil)

    total credit extended



8
9
10
# File 'lib/craigslist/api/credit_summary.rb', line 8

def credit_line
  @credit_line
end

#remainingMoney? (readonly)

Returns credit still available.

Returns:

  • (Money, nil)

    credit still available



11
12
13
# File 'lib/craigslist/api/credit_summary.rb', line 11

def remaining
  @remaining
end

#usedMoney? (readonly)

Returns credit consumed so far.

Returns:

  • (Money, nil)

    credit consumed so far



14
15
16
# File 'lib/craigslist/api/credit_summary.rb', line 14

def used
  @used
end

Class Method Details

.from(hash) ⇒ CreditSummary

Parameters:

  • hash (Hash)

    raw payload

Returns:



25
26
27
28
29
30
31
32
# File 'lib/craigslist/api/credit_summary.rb', line 25

def self.from(hash)
  hash ||= {}
  new(
    credit_line: Money.from(hash["creditLine"]),
    remaining: Money.from(hash["creditRemaining"]),
    used: Money.from(hash["creditUsed"])
  )
end

Instance Method Details

#inspectObject



34
35
36
# File 'lib/craigslist/api/credit_summary.rb', line 34

def inspect
  "#<#{self.class.name} line=#{credit_line} remaining=#{remaining} used=#{used}>"
end