Sha256: 25379ae27c27c67d135a477b58a4a7973d2512d1129fd2c91b6fb3effad95612

Contents?: true

Size: 961 Bytes

Versions: 1

Compression:

Stored size: 961 Bytes

Contents

module Monzo

  # Public: Retrieve information about a pot. A Pot is a place to keep
  # some money separate from your main spending account.
  class Pot

    attr_reader :id, :name, :style, :balance,
      :currency, :created, :updated, :deleted

    # Public: Initialize an Pot.
    #
    # params - A Hash of pot parameters.
    def initialize(params)
      @id = params[:id]
      @name = params[:name]
      @style = params[:style]
      @balance = params[:balance]
      @currency = params[:currency]
      @created = params[:created]
      @updated = params[:updated]
      @deleted = params[:deleted]
    end

    # Public: Find all Monzo Pots
    #
    # Returns An Array of Monzo::Pot
    def self.all
      client = Monzo.client
      response = client.get("/pots/listV1")
      parsed_response = JSON.parse(response.body, :symbolize_names => true)

      parsed_response[:pots].map do |item|
        Monzo::Pot.new(item)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
monzo-0.2.0 lib/monzo/pot.rb