Class: StarkBank::Boleto::Log
- Inherits:
-
Utils::Resource
- Object
- Utils::Resource
- StarkBank::Boleto::Log
- Defined in:
- lib/boleto/log.rb
Overview
# Boleto::Log object
Every time a Boleto entity is updated, a corresponding Boleto::Log is generated for the entity. This log is never generated by the user, but it can be retrieved to check additional information on the Boleto.
## Attributes:
-
id [string]: unique id returned when the log is created. ex: “5656565656565656”
-
boleto [Boleto]: Boleto entity to which the log refers to.
-
errors [list of strings]: list of errors linked to this Boleto event
-
type [string]: type of the Boleto event which triggered the log creation. ex: “registered” or “paid”
-
created [DateTime]: creation datetime for the boleto. ex: DateTime.new(2020, 3, 10, 10, 30, 0, 0)
Instance Attribute Summary collapse
-
#boleto ⇒ Object
readonly
Returns the value of attribute boleto.
-
#created ⇒ Object
readonly
Returns the value of attribute created.
-
#errors ⇒ Object
readonly
Returns the value of attribute errors.
-
#id ⇒ Object
readonly
Returns the value of attribute id.
-
#type ⇒ Object
readonly
Returns the value of attribute type.
Class Method Summary collapse
-
.get(id, user: nil) ⇒ Object
# Retrieve a specific Log.
-
.query(limit: nil, after: nil, before: nil, types: nil, boleto_ids: nil, user: nil) ⇒ Object
# Retrieve Logs.
- .resource ⇒ Object
Instance Method Summary collapse
-
#initialize(id:, created:, type:, errors:, boleto:) ⇒ Log
constructor
A new instance of Log.
Methods inherited from Utils::Resource
Constructor Details
#initialize(id:, created:, type:, errors:, boleto:) ⇒ Log
Returns a new instance of Log.
25 26 27 28 29 30 31 |
# File 'lib/boleto/log.rb', line 25 def initialize(id:, created:, type:, errors:, boleto:) super(id) @type = type @errors = errors @boleto = boleto @created = StarkBank::Utils::Checks.check_datetime(created) end |
Instance Attribute Details
#boleto ⇒ Object (readonly)
Returns the value of attribute boleto.
24 25 26 |
# File 'lib/boleto/log.rb', line 24 def boleto @boleto end |
#created ⇒ Object (readonly)
Returns the value of attribute created.
24 25 26 |
# File 'lib/boleto/log.rb', line 24 def created @created end |
#errors ⇒ Object (readonly)
Returns the value of attribute errors.
24 25 26 |
# File 'lib/boleto/log.rb', line 24 def errors @errors end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
24 25 26 |
# File 'lib/boleto/log.rb', line 24 def id @id end |
#type ⇒ Object (readonly)
Returns the value of attribute type.
24 25 26 |
# File 'lib/boleto/log.rb', line 24 def type @type end |
Class Method Details
.get(id, user: nil) ⇒ Object
# Retrieve a specific Log
Receive a single Log object previously created by the Stark Bank API by passing its id
## Parameters (required):
-
id [string]: object unique id. ex: “5656565656565656”
## Parameters (optional):
-
user [Project object]: Project object. Not necessary if StarkBank.user was set before function call
## Return:
-
Log object with updated attributes
45 46 47 |
# File 'lib/boleto/log.rb', line 45 def self.get(id, user: nil) StarkBank::Utils::Rest.get_id(id: id, user: user, **resource) end |
.query(limit: nil, after: nil, before: nil, types: nil, boleto_ids: nil, user: nil) ⇒ Object
# Retrieve Logs
Receive a generator of Log objects previously created in the Stark Bank API
## Parameters (optional):
-
limit [integer, default nil]: maximum number of objects to be retrieved. Unlimited if nil. ex: 35
-
after [Date, DateTime, Time or string, default nil] date filter for objects created only after specified date. ex: Date.new(2020, 3, 10)
-
before [Date, DateTime, Time or string, default nil] date filter for objects created only before specified date. ex: Date.new(2020, 3, 10)
-
types [list of strings, default nil]: filter for log event types. ex: ‘paid’ or ‘registered’
-
boleto_ids [list of strings, default nil]: list of Boleto ids to filter logs. ex: [‘5656565656565656’, ‘4545454545454545’]
-
user [Project object, default nil]: Project object. Not necessary if StarkBank.user was set before function call
## Return:
-
list of Log objects with updated attributes
63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/boleto/log.rb', line 63 def self.query(limit: nil, after: nil, before: nil, types: nil, boleto_ids: nil, user: nil) after = StarkBank::Utils::Checks.check_date(after) before = StarkBank::Utils::Checks.check_date(before) StarkBank::Utils::Rest.get_list( limit: limit, after: after, before: before, types: types, boleto_ids: boleto_ids, user: user, **resource ) end |
.resource ⇒ Object
77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
# File 'lib/boleto/log.rb', line 77 def self.resource boleto_maker = StarkBank::Boleto.resource[:resource_maker] { resource_name: 'BoletoLog', resource_maker: proc { |json| Log.new( id: json['id'], created: json['created'], type: json['type'], errors: json['errors'], boleto: StarkBank::Utils::API.from_api_json(boleto_maker, json['boleto']) ) } } end |