ordering

package
v0.11.0 Latest Latest
Warning

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

Go to latest
Published: Jan 4, 2026 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_ordering_order_proto protoreflect.FileDescriptor

Functions

func QuorumCall

func QuorumCall(ctx *gorums.ConfigContext, in *Request, opts ...gorums.CallOption) *gorums.Responses[*Response]

QuorumCall is a quorum call invoked on all nodes in the configuration, with the same argument in. Use terminal methods like Majority(), First(), or Threshold(n) to retrieve the aggregated result.

Example:

resp, err := QuorumCall(ctx, in).Majority()

func RegisterGorumsTestServer

func RegisterGorumsTestServer(srv *gorums.Server, impl GorumsTestServer)

Types

type AsyncResponse

type AsyncResponse = *gorums.Async[*Response]

AsyncResponse is a future for async quorum calls returning *Response.

type Configuration

type Configuration = gorums.Configuration

Type aliases for important Gorums types to make them more accessible from user code already interacting with the generated code.

func NewConfig

func NewConfig(opts ...gorums.Option) (Configuration, error)

NewConfig returns a new Configuration based on the provided [gorums.Option]s. It accepts exactly one gorums.NodeListOption and multiple [gorums.ManagerOption]s. You may use this function to create the initial configuration for a new manager.

Example:

	cfg, err := NewConfig(
	    gorums.WithNodeList([]string{"localhost:8080", "localhost:8081", "localhost:8082"}),
        gorums.WithDialOptions(grpc.WithTransportCredentials(insecure.NewCredentials())),
	)

This is a convenience function for creating a configuration without explicitly creating a manager first. However, the manager can be accessed using the [Configuration.Manager] method. This method should only be used once since it creates a new manager; if a manager already exists, use NewConfiguration instead, and provide the existing manager as the first argument.

func NewConfiguration

func NewConfiguration(mgr *Manager, opt gorums.NodeListOption) (Configuration, error)

NewConfiguration returns a configuration based on the provided list of nodes. Nodes can be supplied using WithNodeMap or WithNodeList, or WithNodeIDs. A new configuration can also be created from an existing configuration, using the And, WithNewNodes, Except, and WithoutNodes methods.

type CorrectableResponse

type CorrectableResponse = *gorums.Correctable[*Response]

CorrectableResponse is a correctable object for quorum calls returning *Response.

type GorumsTestServer

type GorumsTestServer interface {
	QuorumCall(ctx gorums.ServerCtx, request *Request) (response *Response, err error)
	UnaryRPC(ctx gorums.ServerCtx, request *Request) (response *Response, err error)
}

GorumsTest is the server-side API for the GorumsTest Service

type Manager

type Manager = gorums.Manager

Type aliases for important Gorums types to make them more accessible from user code already interacting with the generated code.

func NewManager

func NewManager(opts ...gorums.ManagerOption) *Manager

NewManager returns a new Manager for managing connection to nodes added to the manager. This function accepts manager options used to configure various aspects of the manager.

type Node

type Node = gorums.Node

Type aliases for important Gorums types to make them more accessible from user code already interacting with the generated code.

type Request

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

func (*Request) GetNum

func (x *Request) GetNum() uint64

func (*Request) ProtoMessage

func (*Request) ProtoMessage()

func (*Request) ProtoReflect

func (x *Request) ProtoReflect() protoreflect.Message

func (*Request) Reset

func (x *Request) Reset()

func (*Request) SetNum

func (x *Request) SetNum(v uint64)

func (*Request) String

func (x *Request) String() string

type Request_builder

type Request_builder struct {
	Num uint64
	// contains filtered or unexported fields
}

func (Request_builder) Build

func (b0 Request_builder) Build() *Request

type Response

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

func UnaryRPC

func UnaryRPC(ctx *gorums.NodeContext, in *Request) (resp *Response, err error)

UnaryRPC is an RPC call invoked on the node in ctx.

func (*Response) GetInOrder

func (x *Response) GetInOrder() bool

func (*Response) ProtoMessage

func (*Response) ProtoMessage()

func (*Response) ProtoReflect

func (x *Response) ProtoReflect() protoreflect.Message

func (*Response) Reset

func (x *Response) Reset()

func (*Response) SetInOrder

func (x *Response) SetInOrder(v bool)

func (*Response) String

func (x *Response) String() string

type Response_builder

type Response_builder struct {
	InOrder bool
	// contains filtered or unexported fields
}

func (Response_builder) Build

func (b0 Response_builder) Build() *Response

Jump to

Keyboard shortcuts

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