Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BoundConfig ¶
type BoundConfig struct { Thermometers []BoundThermometer Database database.CalorDB Port int ReadAcceptors []BoundReadAcceptor }
A BoundConfig represents a confuration that has actual calor structs loaded into memory
type BoundReadAcceptor ¶
type BoundReadAcceptor struct { Name string ReadAcceptor readings.ReadAcceptor }
type BoundThermometer ¶
type BoundThermometer struct { Name string Thermometer thermometers.Thermometer UpdateInterval int }
type ConfigBinder ¶
type ConfigBinder interface {
Bind(config LoadedConfig) BoundConfig
}
A ConfigBinder is a type that can take some LoadedConfig and produce a Bound Config From it. Currently it's a fairly useless abstraction, but eventually we'll want to be able bind configs from other sources, and hence we don't want to directly work with LoadedConfigs
type ConfigLoader ¶
type ConfigLoader interface {
Load(filepath string) LoadedConfig
}
A ConfigLoader takes a config file and produces a LoadedConfig Currently we just have the json loader
type DatabaseConfig ¶
type DatabaseConfig struct { DriverType string File string Host string Port string Username string Password string }
A DabaaseConfig contains all config needed to describe a DB connection
type JsonLoader ¶
type JsonLoader struct{}
A config loader that reads from a JSON file
func (JsonLoader) Load ¶
func (loader JsonLoader) Load(filepath string) LoadedConfig
type LoadedConfig ¶
type LoadedConfig struct { Thermometers []ThermometerConfig Database DatabaseConfig Port int // TCP port to start listening on ReadAcceptors []ReadAcceptor // the things readings get output to }
A LoadedConfig is a struct declaring what we want, but does not actually contain any valid calor types
type LoadedConfigBinder ¶ added in v0.0.5
type LoadedConfigBinder struct{}
A LoadedConfig bnder accepts a LoadedConfig and produces a Bound Config from it.
func (LoadedConfigBinder) Bind ¶ added in v0.0.5
func (sb LoadedConfigBinder) Bind(config LoadedConfig) BoundConfig
type ReadAcceptor ¶
A ReadAcceptor contains all config needed to construct a particular type of read acceptor
type ThermometerConfig ¶
type ThermometerConfig struct { Name string DriverType string UpdateInterval int // time in seconds to take a reading Options map[string]string }
A ThermometerConfig is the basic config for a thermometer The options map exist to allow key/value pairs that are specific to a particular driver type