Module: Creditario::Resource

Overview

Creditario::Resource

Modulo que se encarga de establecer el mecanismo de inicialización de las siguientes clases:

  • Creditario::Product

  • Creditario::Customer

  • Creditario::Application

  • Creditario::Credit

  • Creditario::Contract

  • Creditario::Expense

  • Creditario::Income

  • Creditario::Reference

  • Creditario::Attachment

  • Creditario::CreditEstimate

  • Creditario::Catalog

  • Creditario::Payment

  • Creditario::Movement

  • Creditario::QualifyScoreFlow

Defined Under Namespace

Modules: ClassMethods

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#attributesObject (readonly)

Hash que representa los attributos de un recurso.



31
32
33
# File 'lib/creditario/resources/resource.rb', line 31

def attributes
  @attributes
end

Colección de links relaccionados al recurso.



35
36
37
# File 'lib/creditario/resources/resource.rb', line 35

def links
  @links
end

Class Method Details

.included(klass) ⇒ Object

:nodoc:



25
26
27
# File 'lib/creditario/resources/resource.rb', line 25

def self.included(klass) # :nodoc:
  klass.extend ClassMethods
end

Instance Method Details

#[](key) ⇒ Object

Método para acceder con llave al elemento del Hash attributes



48
49
50
# File 'lib/creditario/resources/resource.rb', line 48

def [](key)
  attributes[key]
end

#[]=(key, value) ⇒ Object

Método para acceder con llave y sobreescribir el elemento del Hash attributes



54
55
56
# File 'lib/creditario/resources/resource.rb', line 54

def []=(key, value)
  attributes[key] = value
end

#initialize(attributes, links = []) ⇒ Object

Recibe parametro attributes de tipo Hash y genera los métodos de escritura y lectura para cada elemento del Hash.



40
41
42
43
44
# File 'lib/creditario/resources/resource.rb', line 40

def initialize(attributes, links = [])
  @attributes = attributes
  @links = links
  define_attributes_setters_and_getters
end