class Getapp::Capterra::Product

Getapp::Capterra::Product Class

Responsible for transforming Capterra formatted product into common Getapp product format.

Constants

PRODUCT_KEYS_MAPPING

Getapp::Capterra::Product::PRODUCT_KEYS_MAPPING Constant

Hold key mappings for Capterra Product to Getapp Product

Attributes

product[R]
verbose[R]

Public Class Methods

new(product, verbose = false) click to toggle source

Getapp::Capterra::Product initialize Method

@param [Hash<String: String>], Boolean @return Getapp::Capterra::Product instance.

# File lib/getapp/capterra/product.rb, line 28
def initialize(product, verbose = false)
  @product = product.transform_keys(&:to_sym)
  @verbose = verbose
end

Public Instance Methods

get() click to toggle source

Getapp::Capterra::Product get Method

Transform keys from Capterra::Product to Getapp Product

@param [String] @return [OpenStruct<Key=Value>] #<OpenStruct Name=“GitHub”, Categories=“Bugs & Issue Tracking,Development Tools”, Twitter=“github”>

# File lib/getapp/capterra/product.rb, line 40
def get
  OpenStruct.new(PRODUCT_KEYS_MAPPING.map { |k, v| [v, product[k]] }.to_h)
end