used internally for GetKites() and WatchKites()
(args protocol.GetKitesArgs)
| 140 | |
| 141 | // used internally for GetKites() and WatchKites() |
| 142 | func (k *Kite) getKites(args protocol.GetKitesArgs) ([]*Client, error) { |
| 143 | <-k.kontrol.readyConnected |
| 144 | |
| 145 | response, err := k.kontrol.TellWithTimeout("getKites", k.Config.Timeout, args) |
| 146 | if err != nil { |
| 147 | return nil, err |
| 148 | } |
| 149 | |
| 150 | var result = new(protocol.GetKitesResult) |
| 151 | err = response.Unmarshal(&result) |
| 152 | if err != nil { |
| 153 | return nil, err |
| 154 | } |
| 155 | |
| 156 | clients := make([]*Client, len(result.Kites)) |
| 157 | for i, currentKite := range result.Kites { |
| 158 | auth := &Auth{ |
| 159 | Type: "token", |
| 160 | Key: currentKite.Token, |
| 161 | } |
| 162 | |
| 163 | clients[i] = k.NewClient(currentKite.URL) |
| 164 | clients[i].Kite = currentKite.Kite |
| 165 | clients[i].Auth = auth |
| 166 | } |
| 167 | |
| 168 | // Renew tokens |
| 169 | for _, c := range clients { |
| 170 | token, err := NewTokenRenewer(c, k) |
| 171 | if err != nil { |
| 172 | k.Log.Error("Error in token. Token will not be renewed when it expires: %s", err) |
| 173 | continue |
| 174 | } |
| 175 | |
| 176 | token.RenewWhenExpires() |
| 177 | c.closeRenewer = token.disconnect |
| 178 | } |
| 179 | |
| 180 | return clients, nil |
| 181 | } |
| 182 | |
| 183 | // GetToken is used to get a token for a single Kite. |
| 184 | // |
no test coverage detected