processor

package
v1.25.1 Latest Latest
Warning

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

Go to latest
Published: Apr 23, 2023 License: BSD-3-Clause Imports: 21 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ProcessorQueueGroup           = "processor"
	MessageRequestReceivedSubject = "messagerequest.received"
	ReactionReceivedSubject       = "reaction.received"
	InteractionReceivedSubject    = "interaction.received"
	JobReceivedSubject            = "jobs"
	ReplyReceivedSubject          = "processor.reply.received"
	EventReceivedSubject          = "processor.event.received"
)
View Source
const (
	DatabaseName = "treediagram_processor"
)

Variables

This section is empty.

Functions

func NewService

func NewService(queue *nats.EncodedConn, repository Repository) (processingpb.ProcessingServer, error)

Types

type Client

type Client struct{}

func (Client) Do

func (c Client) Do(request interface{}, endpoint string) (string, error)

type Command

type Command struct {
	Request *processingpb.MessageRequest `json:"request"`
	Intent  *intentpb.Intent             `json:"intent"`
}

func (Command) Execute

func (c Command) Execute() (*processingpb.Response, error)

func (Command) MarshalZerologObject

func (c Command) MarshalZerologObject(e *zerolog.Event)

func (Command) ProcessingRequest

func (c Command) ProcessingRequest() *processingpb.ProcessingRequest

func (Command) ShouldExecute

func (c Command) ShouldExecute() (bool, error)

type Executable

type Executable interface {
	ShouldExecute() (bool, error)
	Execute() (*processingpb.Response, error)
	ProcessingRequest() *processingpb.ProcessingRequest
	MarshalZerologObject(e *zerolog.Event)
}

type Interaction added in v1.23.0

type Interaction struct {
	Request *processingpb.Interaction `json:"request"`
	Intent  *intentpb.Intent          `json:"intent"`
}

func (Interaction) Execute added in v1.23.0

func (c Interaction) Execute() (*processingpb.Response, error)

func (Interaction) MarshalZerologObject added in v1.23.0

func (c Interaction) MarshalZerologObject(e *zerolog.Event)

func (Interaction) ProcessingRequest added in v1.23.0

func (c Interaction) ProcessingRequest() *processingpb.ProcessingRequest

func (Interaction) ShouldExecute added in v1.23.0

func (c Interaction) ShouldExecute() (bool, error)

type Job

type Job struct {
	SchedulingJob *schedulingpb.Job
}

func (Job) Execute

func (j Job) Execute() (*processingpb.Response, error)

func (Job) MarshalZerologObject

func (j Job) MarshalZerologObject(e *zerolog.Event)

func (Job) ProcessingRequest

func (j Job) ProcessingRequest() *processingpb.ProcessingRequest

func (Job) ShouldExecute

func (j Job) ShouldExecute() (bool, error)

type Processor

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

func New

func New(logger zerolog.Logger, queue *nats.EncodedConn, registry intentpb.IntentRegistryClient, userClient userpb.UserClient, schedulerClient schedulingpb.SchedulingClient, repository Repository) Processor

func (Processor) Start

func (p Processor) Start() error

func (Processor) Stop

func (p Processor) Stop()

type Reaction

type Reaction struct {
	Request *processingpb.Reaction `json:"request"`
	Intent  *intentpb.Intent       `json:"intent"`
}

func (Reaction) Execute

func (c Reaction) Execute() (*processingpb.Response, error)

func (Reaction) MarshalZerologObject

func (c Reaction) MarshalZerologObject(e *zerolog.Event)

func (Reaction) ProcessingRequest

func (c Reaction) ProcessingRequest() *processingpb.ProcessingRequest

func (Reaction) ShouldExecute

func (c Reaction) ShouldExecute() (bool, error)

type Repository

type Repository interface {
	SaveProcessingRequest(*processingpb.ProcessingRequest) error
	ProcessingRequest(string) (*processingpb.ProcessingRequest, error)
	SaveProcessingEvent(*processingpb.ProcessingEvent) error
	ProcessingEvents(string) ([]*processingpb.ProcessingEvent, error)
	SaveMessageReply(*processingpb.MessageReply) error
	MessageReply(string) (*processingpb.MessageReply, error)
	CountProcessingRequestsForIntentByUser(req *processingpb.ProcessingRequestIntentStatisticsRequest) ([]*processingpb.UserStatistic, error)

	Migrate() error
}

func NewRepository

func NewRepository(url string) (Repository, error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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