service

package
v0.11.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 8, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AwaitTermination

func AwaitTermination(logger log.Logger, terminationListener chan error)

func NewInternalClient

func NewInternalClient(logger log.Logger, config *ClientConfig, name string) *http.Client

func NewTerminationListener

func NewTerminationListener() chan error

Types

type ACHGatewayConfig added in v0.7.0

type ACHGatewayConfig struct {
	Endpoint string
	Timeout  time.Duration
	Shards   []string
}

type BindAddress

type BindAddress struct {
	Address string
}

BindAddress specifies where the http server should bind to.

type BucketConfig

type BucketConfig struct {
	URL   string
	Paths []string
}

type ClientConfig

type ClientConfig struct {
	Timeout             time.Duration
	MaxIdleConns        int
	MaxIdleConnsPerHost int
	MaxConnsPerHost     int
}

type Config

type Config struct {
	Servers ServerConfig
	Clients *ClientConfig

	Display DisplayConfig
	Sources Sources
}

Config defines all the configuration for the app

func LoadConfig

func LoadConfig(logger log.Logger) (*Config, error)

type DisplayConfig

type DisplayConfig struct {
	Format       string // e.g. "human-readable"
	Masking      MaskingConfig
	HelpfulLinks HelpfulLinks
}

type EncryptionConfig

type EncryptionConfig struct {
	GPG *GPG
}

type Environment

type Environment struct {
	Logger         log.Logger
	Config         *Config
	TimeService    stime.TimeService
	InternalClient *http.Client

	PublicRouter *mux.Router
	Shutdown     func()
}

Environment - Contains everything thats been instantiated for this service.

func NewEnvironment

func NewEnvironment(env *Environment) (*Environment, error)

NewEnvironment - Generates a new default environment. Overrides can be specified via configs.

func (*Environment) RunServers

func (env *Environment) RunServers(terminationListener chan error) func()

RunServers - Boots up all the servers and awaits till they are stopped.

type FilesystemConfig

type FilesystemConfig struct {
	Paths []string
}

type GPG

type GPG struct {
	Files []GPGFile

	// KeyFile and KeyPassword are deprecated, use .Files
	KeyFile     string
	KeyPassword string
}

type GPGFile added in v0.10.0

type GPGFile struct {
	KeyFile     string
	KeyPassword string
}

type GlobalConfig

type GlobalConfig struct {
	ACHWebViewer Config
}

type HTTPConfig

type HTTPConfig struct {
	Bind     BindAddress
	BasePath string
}

HTTPConfig configuration for running an http server

type HelpfulLinks struct {
	Corrections string
	Returns     string
}

type MaskingConfig

type MaskingConfig struct {
	AccountNumbers bool
	CorrectedData  bool
	Names          bool

	PrettyAmounts bool
}

type ServerConfig

type ServerConfig struct {
	Public HTTPConfig
	Admin  HTTPConfig
}

ServerConfig - Groups all the http configs for the servers and ports that get opened.

type Source

type Source struct {
	ID string

	ACHGateway *ACHGatewayConfig
	Bucket     *BucketConfig
	Filesystem *FilesystemConfig

	Encryption *EncryptionConfig
}

type Sources

type Sources []Source

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL