2015-12-09 17:15:46 +00:00
|
|
|
package altsrc
|
|
|
|
|
|
|
|
import (
|
|
|
|
"time"
|
|
|
|
|
2016-08-27 23:14:15 +00:00
|
|
|
"gopkg.in/urfave/cli.v2"
|
2015-12-09 17:15:46 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
// InputSourceContext is an interface used to allow
|
|
|
|
// other input sources to be implemented as needed.
|
2017-09-26 12:38:41 +00:00
|
|
|
//
|
|
|
|
// Source returns an identifier for the input source. In case of file source
|
|
|
|
// it should return path to the file.
|
2015-12-09 17:15:46 +00:00
|
|
|
type InputSourceContext interface {
|
2017-09-26 12:38:41 +00:00
|
|
|
Source() string
|
|
|
|
|
2015-12-09 17:15:46 +00:00
|
|
|
Int(name string) (int, error)
|
|
|
|
Duration(name string) (time.Duration, error)
|
|
|
|
Float64(name string) (float64, error)
|
|
|
|
String(name string) (string, error)
|
|
|
|
StringSlice(name string) ([]string, error)
|
|
|
|
IntSlice(name string) ([]int, error)
|
|
|
|
Generic(name string) (cli.Generic, error)
|
|
|
|
Bool(name string) (bool, error)
|
|
|
|
}
|