Package vtctlclient contains the generic client side of the remote vtctl protocol.
RegisterFactory allows a client implementation to register itself.
RunCommandAndWait executes a single command on a given vtctld and blocks until the command did return or timed out. Output from vtctld is streamed as logutilpb.Event messages which have to be consumed by the caller who has to specify a "recv" function.
UnregisterFactoryForTest allows to unregister a client implementation from the static map. This function is used by unit tests to cleanly unregister any fake implementations. This way, a test package can use the same name for different fakes and no dangling fakes are left behind in the static factories map after the test.
Factory functions are registered by client implementations
VtctlClient defines the interface used to send remote vtctl commands
New allows a user of the client library to get its implementation.