rpc

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Aug 10, 2020 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var RPC = struct {
	Server struct{ Run_Task, Task_Status, Is_Ready_Task, Get_Task_Result, List_Tasks string }
}{
	Server: struct{ Run_Task, Task_Status, Is_Ready_Task, Get_Task_Result, List_Tasks string }{
		Run_Task:        "run_task",
		Task_Status:     "task_status",
		Is_Ready_Task:   "is_ready_task",
		Get_Task_Result: "get_task_result",
		List_Tasks:      "list_tasks",
	},
}

Functions

func ServeServer

func ServeServer(listenAddr string, db models.TaskDB) error

Types

type Client

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

func NewClient

func NewClient() (*Client, error)

func (*Client) Cancel

func (c *Client) Cancel(id models.TaskID) error

func (*Client) Create

func (c *Client) Create(task models.Task) (models.TaskID, error)

func (*Client) Delete

func (c *Client) Delete(id models.TaskID) error

func (*Client) Inspect

func (c *Client) Inspect(id models.TaskID) (models.TaskDetail, error)

func (*Client) List

func (c *Client) List() ([]models.TaskDetail, error)

func (*Client) Wait

func (c *Client) Wait(id models.TaskID, ctx context.Context) error

type Detail

type Detail struct {
	ID        *TaskID
	StatusStr string
	ResultObj *Result
}

func NewDetail

func NewDetail(d models.TaskDetail) *Detail

func (*Detail) Result

func (f *Detail) Result() models.TaskResult

func (*Detail) State

func (f *Detail) State() string

func (*Detail) String

func (f *Detail) String() string

func (*Detail) TaskID

func (f *Detail) TaskID() models.TaskID

type Result

type Result struct {
	ID     TaskID
	ErrMsg string
	Before *ScriptResult
	Main   *ScriptResult
	After  *ScriptResult
}

func NewResult

func NewResult(id models.TaskID, tr models.TaskResult) *Result

func (*Result) AfterResult

func (r *Result) AfterResult() models.ScriptResult

func (*Result) BeforeResult

func (r *Result) BeforeResult() models.ScriptResult

func (*Result) Error

func (r *Result) Error() error

func (*Result) ScriptResult

func (r *Result) ScriptResult() models.ScriptResult

func (*Result) String

func (r *Result) String() string

type ScriptResult

type ScriptResult struct {
	Start    time.Time
	End      time.Time
	Hostname string
	Out      []byte
	Exit     int
}

func NewScriptResult

func NewScriptResult(r models.ScriptResult) *ScriptResult

func (*ScriptResult) EndTime

func (r *ScriptResult) EndTime() time.Time

func (*ScriptResult) ExitCode

func (r *ScriptResult) ExitCode() int

func (*ScriptResult) Host

func (r *ScriptResult) Host() string

func (*ScriptResult) Output

func (r *ScriptResult) Output() []byte

func (*ScriptResult) StartTime

func (r *ScriptResult) StartTime() time.Time

func (*ScriptResult) String

func (r *ScriptResult) String() string

type Server

type Server struct {
	DB models.TaskDB

} //zenrpc

func (*Server) Get_Task_Result

func (s *Server) Get_Task_Result(id string) *Result

func (Server) Invoke

func (s Server) Invoke(ctx context.Context, method string, params json.RawMessage) zenrpc.Response

Invoke is as generated code from zenrpc cmd

func (*Server) Is_Ready_Task

func (s *Server) Is_Ready_Task(id string) bool

func (*Server) List_Tasks

func (s *Server) List_Tasks() []*Detail

func (*Server) Run_Task

func (s *Server) Run_Task(spec []byte) string

func (Server) SMD

func (Server) SMD() smd.ServiceInfo

func (*Server) Task_Status

func (s *Server) Task_Status(id string) string

type TaskID

type TaskID struct {
	ID string
}

func NewTaskID

func NewTaskID(id models.TaskID) *TaskID

func (*TaskID) String

func (t *TaskID) String() string

Jump to

Keyboard shortcuts

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