notifier

package
v0.0.0-...-b9d6e19 Latest Latest
Warning

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

Go to latest
Published: Nov 17, 2023 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Notifier

type Notifier interface {
	Login(sid, endpoint string)

	Logout(sid string)

	Notify(sid string)
}

Notifier 用于通知一个Workspace可用(即它的Pod处于Ready状态) 注册或注销Workspace的IP地址到网关中,使得网关可以发现可用的Workspace

type Request

type Request struct {
	Sid      string `json:"sid,omitempty"`
	Endpoint string `json:"endpoint,omitempty"`
}

type Waiter

type Waiter interface {
	WaitFor(context.Context, string) error
}

Waiter 用于等待一个Workspace的Pod处于Ready状态

type WorkspaceNotifier

type WorkspaceNotifier struct {
	Url   string
	Token string
	// contains filtered or unexported fields
}

func NewWorkspaceNotifier

func NewWorkspaceNotifier(ctx context.Context, logger logr.Logger, svcName, path, token string, workers int) (*WorkspaceNotifier, error)

func (*WorkspaceNotifier) Login

func (w *WorkspaceNotifier) Login(sid, endpoint string)

Login 通过HTTP请求将Pod的IP地址和端口注册到网关中 使得网关可以访问到Pod

func (*WorkspaceNotifier) Logout

func (w *WorkspaceNotifier) Logout(sid string)

Logout 从网关中注销Pod,防止网关访问到不存在或其它用户的Pod

func (*WorkspaceNotifier) Notify

func (w *WorkspaceNotifier) Notify(sid string)

Notify 通知Pod已经可用

func (*WorkspaceNotifier) WaitFor

func (w *WorkspaceNotifier) WaitFor(ctx context.Context, sid string) error

WaitFor 等待Pod可用

Jump to

Keyboard shortcuts

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