mirror of
https://github.com/usetrmnl/trmnl-api.git
synced 2026-04-29 13:35:13 -07:00
Added application container
Necessary to register common application dependencies for potential injection as desired.
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
require "cogger"
|
||||
require "containable"
|
||||
require "http"
|
||||
|
||||
module TRMNL
|
||||
module API
|
||||
# Registers application dependencies.
|
||||
module Container
|
||||
extend Containable
|
||||
|
||||
register(:client) { API::Client.new }
|
||||
register(:logger) { Cogger.new id: "trmnl-api", formatter: :json }
|
||||
|
||||
register :http do
|
||||
HTTP.default_options = ::HTTP::Options.new features: {logging: {logger: self[:logger]}}
|
||||
HTTP
|
||||
end
|
||||
|
||||
namespace :contracts do
|
||||
register :current_screen, Contracts::CurrentScreen
|
||||
register :display, Contracts::Display
|
||||
register :firmware, Contracts::Firmware
|
||||
register :setup, Contracts::Setup
|
||||
end
|
||||
|
||||
namespace :models do
|
||||
register :current_screen, Models::CurrentScreen
|
||||
register :display, Models::Display
|
||||
register :firmware, Models::Firmware
|
||||
register :setup, Models::Setup
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user