platform

package module
v0.9.3 Latest Latest
Warning

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

Go to latest
Published: Apr 30, 2021 License: MIT Imports: 8 Imported by: 0

README

spa

Cloud Platform abstractions and other shared code to build cloud-native services.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func InitDefaultProviders added in v0.9.3

func InitDefaultProviders()

func Logger

func Logger(logID string) logging.LoggingProvider

Logger returns a logger instance identified by ID

func NewHttpContext

func NewHttpContext(req *h.Request) context.Context

NewHttpContext creates a new Http context for request req

func NewTask added in v0.9.3

func NewTask(task tasks.HttpTask) error

func ReportError

func ReportError(e error)

ReportError reports error e using the current platform's error reporting provider

Types

type InstanceProviderFunc

type InstanceProviderFunc func(string) interface{}

type Platform

type Platform struct {
	// contains filtered or unexported fields
}

func DefaultPlatform added in v0.9.3

func DefaultPlatform() *Platform

DefaultPlatform returns the current default platform provider

func InitPlatform

func InitPlatform(ctx context.Context, opts ...PlatformOpts) (*Platform, error)

InitPlatform creates a new platform instance and configures it with providers

func RegisterPlatform

func RegisterPlatform(p *Platform) *Platform

RegisterPlatform makes p the new default platform provider

type PlatformOpts

type PlatformOpts struct {
	ID   string
	Type ProviderType
	Impl InstanceProviderFunc
}
var (
	DefaultLoggingConfig        PlatformOpts = PlatformOpts{ID: "platform.default.logger", Type: ProviderTypeLogger, Impl: local.NewDefaultLoggingProvider}
	DefaultErrorReportingConfig PlatformOpts = PlatformOpts{ID: "platform.default.errorreporting", Type: ProviderTypeErrorReporter, Impl: local.NewDefaultErrorReportingProvider}
	DefaultContextConfig        PlatformOpts = PlatformOpts{ID: "platform.default.context", Type: ProviderTypeHttpContext, Impl: local.NewDefaultContextProvider}
	DefaultTaskConfig           PlatformOpts = PlatformOpts{ID: "platform.default.task", Type: ProviderTypeTask, Impl: local.NewDefaultTaskProvider}
)

type ProviderType

type ProviderType int
const (
	ProviderTypeLogger ProviderType = iota
	ProviderTypeErrorReporter
	ProviderTypeHttpContext
	ProviderTypeTask
)

func (ProviderType) String

func (l ProviderType) String() string

Returns the name of a provider type

Directories

Path Synopsis
pkg
api
env
id
provider

Jump to

Keyboard shortcuts

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