Sha256: 16b5255477cac2468cc5421914a71e6f358824e0eda55ad8bd943e729610f0c0
Contents?: true
Size: 597 Bytes
Versions: 1
Compression:
Stored size: 597 Bytes
Contents
class ThingSpeakReporter include UseCasePattern def initialize(api_key:, params: {}) @api_key = api_key @params = params end def perform post_data check_response end private attr_reader :params, :api_key, :response def post_data uri = URI("https://api.thingspeak.com/update.json") @response = Net::HTTP.post_form(uri, request_params) end def check_response if response.code != '200' errors.add(:base, "Non 200 response #{response.code}: #{response.body}") end end def request_params params.merge(api_key: api_key) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
use_case_pattern-1.0.0 | examples/thing_speak_reporter.rb |