services

package
v0.17.0 Latest Latest
Warning

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

Go to latest
Published: Nov 2, 2021 License: Apache-2.0 Imports: 30 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ComplianceSuite holds the protocol buffer representation of the compliance suite data.
	ComplianceSuite *pb.ComplianceSuite

	// ComplianceSuiteRequests holds all the requests in ComplianceSuite, indexed by the `name` field of the request.
	ComplianceSuiteRequests map[string]*pb.RepeatRequest

	// ComplianceSuiteStatus reports the status of loading the compliance suite data into services.ComplianceSuite.
	ComplianceSuiteStatus ComplianceSuiteInitStatus

	// ComplianceSuiteStatusMessage holds a message explaining ComplianceSuiteStatus. This is
	// typically used to provide more information in the case
	// ComplianceSuiteStatus==ComplianceSuiteError.
	ComplianceSuiteStatusMessage string
)

Functions

func IndexComplianceSuite added in v0.15.0

func IndexComplianceSuite(suite *pb.ComplianceSuite) (map[string]*pb.RepeatRequest, error)

IndexComplianceSuite creates a map by request name of the the requests in the suite, for easy retrieval later.

func NewComplianceServer added in v0.13.0

func NewComplianceServer() pb.ComplianceServer

NewComplianceServer returns a new ComplianceServer for the Showcase API.

func NewEchoServer

func NewEchoServer() pb.EchoServer

NewEchoServer returns a new EchoServer for the Showcase API.

func NewIAMPolicyServer added in v0.13.0

func NewIAMPolicyServer() iampb.IAMPolicyServer

NewIAMPolicyServer returns a new LocationsServer for the Showcase API.

func NewIdentityServer

func NewIdentityServer() pb.IdentityServer

NewIdentityServer returns a new instance of showcase identity server.

func NewLocationsServer added in v0.13.0

func NewLocationsServer() locpb.LocationsServer

NewLocationsServer returns a new LocationsServer for the Showcase API.

func NewOperationsServer

func NewOperationsServer(messagingServer MessagingServer) lropb.OperationsServer

NewOperationsServer returns a new OperationsServer for the Showcase API.

func NewSequenceServer added in v0.12.0

func NewSequenceServer() pb.SequenceServiceServer

NewSequenceServer returns a new SequenceServer for the Showcase API.

func NewTestingServer

func NewTestingServer(observerRegistry server.GrpcObserverRegistry) pb.TestingServer

NewTestingServer returns a new TestingServer for the Showcase API.

Types

type Backend added in v0.13.0

type Backend struct {
	// Showcase schema
	EchoServer            pb.EchoServer
	IdentityServer        pb.IdentityServer
	MessagingServer       pb.MessagingServer
	SequenceServiceServer pb.SequenceServiceServer
	ComplianceServer      pb.ComplianceServer
	TestingServer         pb.TestingServer

	// Supporting protos
	OperationsServer lropb.OperationsServer
	LocationsServer  locpb.LocationsServer
	IAMPolicyServer  iampb.IAMPolicyServer

	// Other supporting data structures
	StdLog, ErrLog   *log.Logger
	ObserverRegistry server.GrpcObserverRegistry
}

Backend contains the various service backends that will be accessible via one or more transport endpoints.

type BlurbsOutStream

type BlurbsOutStream interface {
	Send(*pb.StreamBlurbsResponse) error
}

BlurbsOutStream is the common interface of the connect and streamblurbs streams. This interface allows the observer to handle both streams.

type ComplianceSuiteInitStatus added in v0.15.0

type ComplianceSuiteInitStatus int

ComplianceSuiteInitStatus contains the status result of loading the compliance test suite

const (
	// ComplianceSuiteUninitialized means we have not attempted to parse the compliance suite data into services.ComplianceSuite.
	ComplianceSuiteUninitialized ComplianceSuiteInitStatus = iota

	// ComplianceSuiteLoaded means we have successfully parsed the compliance suite data into services.ComplianceSuite.
	ComplianceSuiteLoaded

	// ComplianceSuiteError means we failed parsing the compliance suite data into services.ComplianceSuite.
	ComplianceSuiteError
)

type MessagingServer

type MessagingServer interface {
	FilteredListBlurbs(context.Context, *pb.ListBlurbsRequest, func(*pb.Blurb) bool) (*pb.ListBlurbsResponse, error)

	pb.MessagingServer
}

MessagingServer provides an interface which is the implementation of the MessagingServer proto and as well as a method for filtering the blurbs.

func NewMessagingServer

func NewMessagingServer(identityServer ReadOnlyIdentityServer) MessagingServer

NewMessagingServer returns an instance of a messaging server.

type ReadOnlyIdentityServer

type ReadOnlyIdentityServer interface {
	GetUser(context.Context, *pb.GetUserRequest) (*pb.User, error)
	ListUsers(context.Context, *pb.ListUsersRequest) (*pb.ListUsersResponse, error)
}

ReadOnlyIdentityServer provides a read-only interface of an identity server.

Jump to

Keyboard shortcuts

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