class Basecamp3::Model

A base class for models

@abstract

Constants

REQUIRED_FIELDS

Public Class Methods

new(data = {}) click to toggle source
# File lib/basecamp3/model.rb, line 7
def initialize(data = {})
  data.each do |attr, value|
    instance_variable_set("@#{attr}", value)
  end
end

Protected Class Methods

validate_required(data) click to toggle source

Validates if the given data contain the required attributes.

@param [Hash] data the data to send in the request

@raise [StandardError] raises an error if required parameter is missing

# File lib/basecamp3/model.rb, line 20
def self.validate_required(data)
  self::REQUIRED_FIELDS.each { |f| raise "Missing required parameter #{f}" if data[f.to_sym].nil? }
end