| | 286 | wt_server_t * wt_servers_server_with_ip(wi_string_t *ip) { |
|---|
| | 287 | wi_enumerator_t *enumerator; |
|---|
| | 288 | wt_server_t *server, *value = NULL; |
|---|
| | 289 | |
|---|
| | 290 | wi_array_rdlock(wt_servers); |
|---|
| | 291 | |
|---|
| | 292 | enumerator = wi_array_data_enumerator(wt_servers); |
|---|
| | 293 | |
|---|
| | 294 | while((server = wi_enumerator_next_data(enumerator))) { |
|---|
| | 295 | if(wi_is_equal(server->ip, ip)) { |
|---|
| | 296 | value = server; |
|---|
| | 297 | |
|---|
| | 298 | break; |
|---|
| | 299 | } |
|---|
| | 300 | } |
|---|
| | 301 | |
|---|
| | 302 | wi_array_unlock(wt_servers); |
|---|
| | 303 | |
|---|
| | 304 | return value; |
|---|
| | 305 | } |
|---|
| | 306 | |
|---|
| | 307 | |
|---|
| | 308 | |
|---|
| | 309 | wt_server_t * wt_servers_server_with_key(wi_string_t *key) { |
|---|
| | 310 | wi_enumerator_t *enumerator; |
|---|
| | 311 | wt_server_t *server, *value = NULL; |
|---|
| | 312 | |
|---|
| | 313 | wi_array_rdlock(wt_servers); |
|---|
| | 314 | |
|---|
| | 315 | enumerator = wi_array_data_enumerator(wt_servers); |
|---|
| | 316 | |
|---|
| | 317 | while((server = wi_enumerator_next_data(enumerator))) { |
|---|
| | 318 | if(wi_is_equal(server->key, key)) { |
|---|
| | 319 | value = server; |
|---|
| | 320 | |
|---|
| | 321 | break; |
|---|
| | 322 | } |
|---|
| | 323 | } |
|---|
| | 324 | |
|---|
| | 325 | wi_array_unlock(wt_servers); |
|---|
| | 326 | |
|---|
| | 327 | return value; |
|---|
| | 328 | } |
|---|
| | 329 | |
|---|
| | 330 | |
|---|
| | 331 | |
|---|
| 432 | | |
|---|
| 433 | | |
|---|
| 434 | | |
|---|
| 435 | | #pragma mark - |
|---|
| 436 | | |
|---|
| 437 | | wt_server_t * wt_server_with_ip(wi_string_t *ip) { |
|---|
| 438 | | wi_enumerator_t *enumerator; |
|---|
| 439 | | wt_server_t *server, *value = NULL; |
|---|
| 440 | | |
|---|
| 441 | | wi_array_rdlock(wt_servers); |
|---|
| 442 | | |
|---|
| 443 | | enumerator = wi_array_data_enumerator(wt_servers); |
|---|
| 444 | | |
|---|
| 445 | | while((server = wi_enumerator_next_data(enumerator))) { |
|---|
| 446 | | if(wi_is_equal(server->ip, ip)) { |
|---|
| 447 | | value = server; |
|---|
| 448 | | |
|---|
| 449 | | break; |
|---|
| 450 | | } |
|---|
| 451 | | } |
|---|
| 452 | | |
|---|
| 453 | | wi_array_unlock(wt_servers); |
|---|
| 454 | | |
|---|
| 455 | | return value; |
|---|
| 456 | | } |
|---|
| 457 | | |
|---|
| 458 | | |
|---|
| 459 | | |
|---|
| 460 | | wt_server_t * wt_server_with_key(wi_string_t *key) { |
|---|
| 461 | | wi_enumerator_t *enumerator; |
|---|
| 462 | | wt_server_t *server, *value = NULL; |
|---|
| 463 | | |
|---|
| 464 | | wi_array_rdlock(wt_servers); |
|---|
| 465 | | |
|---|
| 466 | | enumerator = wi_array_data_enumerator(wt_servers); |
|---|
| 467 | | |
|---|
| 468 | | while((server = wi_enumerator_next_data(enumerator))) { |
|---|
| 469 | | if(wi_is_equal(server->key, key)) { |
|---|
| 470 | | value = server; |
|---|
| 471 | | |
|---|
| 472 | | break; |
|---|
| 473 | | } |
|---|
| 474 | | } |
|---|
| 475 | | |
|---|
| 476 | | wi_array_unlock(wt_servers); |
|---|
| 477 | | |
|---|
| 478 | | return value; |
|---|
| 479 | | } |
|---|