MCPcopy Create free account
hub / github.com/cloudspannerecosystem/spanner-cli / NewCli

Function NewCli

cli.go:82–111  ·  view source on GitHub ↗
(projectId, instanceId, databaseId, prompt, historyFile string, credential []byte,
	inStream io.ReadCloser, outStream, errStream io.Writer, verbose bool,
	priority pb.RequestOptions_Priority, role, endpoint string, directedRead *pb.DirectedReadOptions,
	skipTLSVerify bool, protoDescriptor []byte)

Source from the content-addressed store, hash-verified

80}
81
82func NewCli(projectId, instanceId, databaseId, prompt, historyFile string, credential []byte,
83 inStream io.ReadCloser, outStream, errStream io.Writer, verbose bool,
84 priority pb.RequestOptions_Priority, role, endpoint string, directedRead *pb.DirectedReadOptions,
85 skipTLSVerify bool, protoDescriptor []byte) (*Cli, error) {
86 session, err := createSession(projectId, instanceId, databaseId, credential, priority, role, endpoint, directedRead, skipTLSVerify, protoDescriptor)
87 if err != nil {
88 return nil, err
89 }
90
91 if prompt == "" {
92 prompt = defaultPrompt
93 }
94
95 if historyFile == "" {
96 historyFile = defaultHistoryFile
97 }
98
99 return &Cli{
100 Session: session,
101 Prompt: prompt,
102 HistoryFile: historyFile,
103 Credential: credential,
104 InStream: inStream,
105 OutStream: outStream,
106 ErrStream: errStream,
107 Verbose: verbose,
108 Endpoint: endpoint,
109 SkipTLSVerify: skipTLSVerify,
110 }, nil
111}
112
113func (c *Cli) RunInteractive() int {
114 rl, err := readline.NewEx(&readline.Config{

Callers 1

mainFunction · 0.85

Calls 1

createSessionFunction · 0.85

Tested by

no test coverage detected