예제 #1
0
파일: exec.go 프로젝트: hanjin8307/circuit
func (y YCmd) Start() (stdin io.WriteCloser, stdout, stderr io.ReadCloser, err error) {
	r := y.Call("Start")
	err = errors.Unpack(r[3])
	if err != nil {
		return nil, nil, nil, err
	}
	return xyio.NewYWriteCloser(r[0]), xyio.NewYReadCloser(r[1]), xyio.NewYReadCloser(r[2]), nil
}
예제 #2
0
파일: shell.go 프로젝트: hanjin8307/circuit
func (y YShell) Tail(name string, arg ...string) (stdin io.WriteCloser, stdout, stderr io.ReadCloser, err error) {
	ig := make([]interface{}, 0, len(arg))
	for _, a := range arg {
		ig = append(ig, a)
	}
	r := y.Call("Tail", ig...)
	err = errors.Unpack(r[3])
	if err != nil {
		return nil, nil, nil, err
	}
	return xyio.NewYWriteCloser(r[0]), xyio.NewYReadCloser(r[1]), xyio.NewYReadCloser(r[2]), nil
}
예제 #3
0
파일: x.go 프로젝트: hanjin8307/circuit
func (y YValve) Recv() (_ io.ReadCloser, err error) {
	r := y.X.Call("Recv")
	if err = errors.Unpack(r[1]); err != nil {
		return nil, err
	}
	return xio.NewYReadCloser(r[0]), nil
}
예제 #4
0
파일: x.go 프로젝트: keryoo/circuit
func (y YServer) Profile(name string) (rc io.ReadCloser, err error) {
	r := y.X.Call("Profile", name)
	if err := errors.Unpack(r[1]); err != nil {
		return nil, err
	}
	return xio.NewYReadCloser(r[0]), nil
}
예제 #5
0
파일: x.go 프로젝트: herokai/circuit
func (y YContainer) Stderr() io.ReadCloser {
	return xio.NewYReadCloser(y.X.Call("Stderr")[0])
}
예제 #6
0
파일: x.go 프로젝트: hanjin8307/circuit
func (y YProc) Stdout() io.ReadCloser {
	return xio.NewYReadCloser(y.X.Call("Stdout")[0])
}