httpd

package
v0.0.0-...-539d32a Latest Latest
Warning

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

Go to latest
Published: May 23, 2023 License: GPL-3.0 Imports: 29 Imported by: 0

Documentation

Index

Constants

View Source
const (
	PING           = "PING"
	PONG           = "PONG"
	CONNECT        = "CONNECT"
	CLOSE          = "CLOSE"
	TERMINALINIT   = "TERMINAL_INIT"
	TERMINALDATA   = "TERMINAL_DATA"
	TERMINALRESIZE = "TERMINAL_RESIZE"
	TERMINALBINARY = "TERMINAL_BINARY"
	TERMINALACTION = "TERMINAL_ACTION"

	TERMINALSESSION = "TERMINAL_SESSION"

	TERMINALSHARE         = "TERMINAL_SHARE"
	TERMINALSHAREJOIN     = "TERMINAL_SHARE_JOIN"
	TERMINALSHARELEAVE    = "TERMINAL_SHARE_LEAVE"
	TERMINALSHAREUSERS    = "TERMINAL_SHARE_USERS"
	TERMINALGETSHAREUSERS = "TERMINAL_GET_SHARE_USER"

	TERMINALERROR = "TERMINAL_ERROR"
)
View Source
const (
	TargetTypeAsset = "asset"

	// TargetTypeMonitor todo: 前端参数将 统一修改成 monitor
	TargetTypeMonitor = "shareroom"

	TargetTypeShare = "share"
)
View Source
const (
	TTYName       = "terminal"
	WebFolderName = "web_folder"
)
View Source
const MaxMessageLen = 1024

Variables

This section is empty.

Functions

func NewBroadcaster

func NewBroadcaster() *broadcaster

func NewElfinderFileInfo

func NewElfinderFileInfo(id, dirPath string, originFileInfo os.FileInfo) elfinder.FileDir

func TrimPrefix

func TrimPrefix(path string) string

Types

type Client

type Client struct {
	WinChan   chan ssh.Window
	UserRead  io.ReadCloser
	UserWrite io.WriteCloser
	Conn      *UserWebsocket

	sync.Mutex
	// contains filtered or unexported fields
}

func (*Client) Close

func (c *Client) Close() (err error)

func (*Client) Context

func (c *Client) Context() context.Context

func (*Client) HandleRoomEvent

func (c *Client) HandleRoomEvent(event string, roomMsg *exchange.RoomMessage)

func (*Client) ID

func (c *Client) ID() string

func (*Client) LoginFrom

func (c *Client) LoginFrom() string

func (*Client) Pty

func (c *Client) Pty() ssh.Pty

func (*Client) Read

func (c *Client) Read(p []byte) (n int, err error)

func (*Client) RemoteAddr

func (c *Client) RemoteAddr() string

func (*Client) SetWinSize

func (c *Client) SetWinSize(size ssh.Window)

func (*Client) WinCh

func (c *Client) WinCh() <-chan ssh.Window

func (*Client) Write

func (c *Client) Write(p []byte) (n int, err error)

func (*Client) WriteData

func (c *Client) WriteData(p []byte)

type GetUserParams

type GetUserParams struct {
	Query string `json:"query"`
}

type Handler

type Handler interface {
	Name() string
	CheckValidation() bool
	HandleMessage(*Message)
	CleanUp()
}

type Message

type Message struct {
	Id   string `json:"id"`
	Type string `json:"type"`
	Data string `json:"data"`
	Raw  []byte `json:"-"`
	Err  string `json:"err"`
}

type Server

type Server struct {
	Srv        *http.Server
	JmsService *service.JMService
	// contains filtered or unexported fields
}

func NewServer

func NewServer(jmsService *service.JMService) *Server

func (*Server) GenerateViewMeta

func (s *Server) GenerateViewMeta(targetId string) (meta ViewPageMata)

func (*Server) HealthStatusHandler

func (s *Server) HealthStatusHandler(ctx *gin.Context)

func (*Server) ProcessElfinderWebsocket

func (s *Server) ProcessElfinderWebsocket(ctx *gin.Context)

func (*Server) ProcessTerminalWebsocket

func (s *Server) ProcessTerminalWebsocket(ctx *gin.Context)

func (*Server) ProcessTokenWebsocket

func (s *Server) ProcessTokenWebsocket(ctx *gin.Context)

func (*Server) SftpHostConnectorView

func (s *Server) SftpHostConnectorView(ctx *gin.Context)

func (*Server) Start

func (s *Server) Start()

func (*Server) Stop

func (s *Server) Stop()

func (*Server) Upgrade

func (s *Server) Upgrade(ctx *gin.Context) (*ws.Socket, error)

type ShareInfo

type ShareInfo struct {
	Record model.ShareRecord
}

type ShareRequestMeta

type ShareRequestMeta struct {
	Users []string `json:"users"`
}

type ShareRequestParams

type ShareRequestParams struct {
	SessionID  string   `json:"session_id"`
	ExpireTime int      `json:"expired"`
	Users      []string `json:"users"`
}

type ShareResponse

type ShareResponse struct {
	ShareId string `json:"share_id"`
	Code    string `json:"code"`
}

type TerminalConnectData

type TerminalConnectData struct {
	Cols int    `json:"cols"`
	Rows int    `json:"rows"`
	Code string `json:"code"`
}

type UserVolume

type UserVolume struct {
	Uuid     string
	UserSftp *srvconn.UserSftpConn
	Homename string
	// contains filtered or unexported fields
}

func NewUserVolume

func NewUserVolume(jmsService *service.JMService, user *model.User, addr, hostId string) *UserVolume

func (*UserVolume) Close

func (u *UserVolume) Close()

func (*UserVolume) GetFile

func (u *UserVolume) GetFile(path string) (reader io.ReadCloser, err error)

func (*UserVolume) ID

func (u *UserVolume) ID() string

func (*UserVolume) Info

func (u *UserVolume) Info(path string) (elfinder.FileDir, error)

func (*UserVolume) List

func (u *UserVolume) List(path string) []elfinder.FileDir

func (*UserVolume) MakeDir

func (u *UserVolume) MakeDir(dir, newDirname string) (elfinder.FileDir, error)

func (*UserVolume) MakeFile

func (u *UserVolume) MakeFile(dir, newFilename string) (elfinder.FileDir, error)

func (*UserVolume) MergeChunk

func (u *UserVolume) MergeChunk(cid, total int, dirPath, uploadPath, filename string) (elfinder.FileDir, error)

func (*UserVolume) Parents

func (u *UserVolume) Parents(path string, dep int) []elfinder.FileDir

func (*UserVolume) Paste

func (u *UserVolume) Paste(dir, filename, suffix string, reader io.ReadCloser) (elfinder.FileDir, error)

func (*UserVolume) Remove

func (u *UserVolume) Remove(path string) error

func (*UserVolume) Rename

func (u *UserVolume) Rename(oldNamePath, newName string) (elfinder.FileDir, error)

func (*UserVolume) RootFileDir

func (u *UserVolume) RootFileDir() elfinder.FileDir

func (*UserVolume) Search

func (u *UserVolume) Search(path, key string, mimes ...string) (res []elfinder.FileDir, err error)

func (*UserVolume) UploadChunk

func (u *UserVolume) UploadChunk(cid int, dirPath, uploadPath, filename string, rangeData elfinder.ChunkRange, reader io.Reader) error

func (*UserVolume) UploadFile

func (u *UserVolume) UploadFile(dirPath, uploadPath, filename string, reader io.Reader) (elfinder.FileDir, error)

type UserWebsocket

type UserWebsocket struct {
	Uuid string
	// contains filtered or unexported fields
}

func (*UserWebsocket) ClientIP

func (userCon *UserWebsocket) ClientIP() string

func (*UserWebsocket) CurrentUser

func (userCon *UserWebsocket) CurrentUser() *model.User

func (*UserWebsocket) GetHandler

func (userCon *UserWebsocket) GetHandler() Handler

func (*UserWebsocket) Run

func (userCon *UserWebsocket) Run()

func (*UserWebsocket) SendMessage

func (userCon *UserWebsocket) SendMessage(msg *Message)

type ViewPageMata

type ViewPageMata struct {
	ID      string
	IconURL string
}

type WindowSize

type WindowSize struct {
	Cols int `json:"cols"`
	Rows int `json:"rows"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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