event_bus

package
v0.10.0 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Publish

func Publish(event Event) error

func Subscribe

func Subscribe(unsubscribe chan bool) chan Event

func SubscribeWithFilter

func SubscribeWithFilter(unsubscribe chan bool, filter func(i Event) bool) chan Event

Types

type Event

type Event struct {
	Name    EventName
	Payload EventPayload
}

type EventName

type EventName string
const (
	WorkspaceEventCreatingNetwork EventName = "creating-network"
	WorkspaceEventNetworkCreated  EventName = "network-created"
	WorkspaceEventProjectCreating EventName = "project-creating"
	WorkspaceEventProjectCreated  EventName = "project-created"
	WorkspaceEventCreating        EventName = "creating"
	WorkspaceEventCreated         EventName = "created"
	WorkspaceEventStarting        EventName = "starting"
	WorkspaceEventStarted         EventName = "started"
	WorkspaceEventStopping        EventName = "stopping"
	WorkspaceEventStopped         EventName = "stopped"
	WorkspaceEventRemoving        EventName = "removing"
	WorkspaceEventRemoved         EventName = "removed"
)
const (
	ProjectEventCloningRepo           EventName = "cloning-repo"
	ProjectEventRepoCloned            EventName = "repo-cloned"
	ProjectEventInitializing          EventName = "project-initializing"
	ProjectEventInitialized           EventName = "project-initialized"
	ProjectEventPreparingExtension    EventName = "preparing-extension"
	ProjectEventInitializingExtension EventName = "initializing-extension"
	ProjectEventStartingExtension     EventName = "starting-extension"
	ProjectEventStarting              EventName = "project-starting"
	ProjectEventStarted               EventName = "project-started"
	ProjectEventStopping              EventName = "project-stopping"
	ProjectEventStopped               EventName = "project-stopped"
	ProjectEventRemoving              EventName = "project-removing"
	ProjectEventRemoved               EventName = "project-removed"
)

type EventPayload

type EventPayload interface{}

type ProjectEventPayload

type ProjectEventPayload struct {
	ProjectName   string `json:"projectName"`
	WorkspaceName string `json:"workspaceName"`
	ExtensionName string `json:"extensionName"`
}

func UnmarshallProjectEventPayload

func UnmarshallProjectEventPayload(payload string) (*ProjectEventPayload, error)

type WorkspaceEventPayload

type WorkspaceEventPayload struct {
	WorkspaceName string `json:"workspaceName"`
	ProjectName   string `json:"projectName"`
}

func UnmarshallWorkspaceEventPayload

func UnmarshallWorkspaceEventPayload(payload string) (*WorkspaceEventPayload, error)

Jump to

Keyboard shortcuts

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