GetKites returns the list of Kites matching the query. The returned list contains Ready to connect Client instances. The caller must connect with Client.Dial() before using each Kite. An error is returned when no kites are available. The returned clients have token renewer running, which is leaked
(query *protocol.KontrolQuery)
| 122 | // return clients[0] |
| 123 | // |
| 124 | func (k *Kite) GetKites(query *protocol.KontrolQuery) ([]*Client, error) { |
| 125 | if err := k.SetupKontrolClient(); err != nil { |
| 126 | return nil, err |
| 127 | } |
| 128 | |
| 129 | clients, err := k.getKites(protocol.GetKitesArgs{Query: query}) |
| 130 | if err != nil { |
| 131 | return nil, err |
| 132 | } |
| 133 | |
| 134 | if len(clients) == 0 { |
| 135 | return nil, ErrNoKitesAvailable |
| 136 | } |
| 137 | |
| 138 | return clients, nil |
| 139 | } |
| 140 | |
| 141 | // used internally for GetKites() and WatchKites() |
| 142 | func (k *Kite) getKites(args protocol.GetKitesArgs) ([]*Client, error) { |