Changeset 4395

Show
Ignore:
Timestamp:
10/01/06 13:17:25 (2 years ago)
Author:
morris
Message:

Cleanups

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trackerd/trunk/trackerd/commands.c

    r4394 r4395  
    455455        server->update_time             = 0.0; 
    456456        server->ip                              = wi_retain(client->ip); 
    457         server->category                = wt_category_is_valid(WI_ARRAY(arguments, 0)) 
     457        server->category                = wt_servers_category_is_valid(WI_ARRAY(arguments, 0)) 
    458458                ? wi_retain(WI_ARRAY(arguments, 0)) 
    459459                : wi_string_init(wi_string_alloc()); 
  • trackerd/trunk/trackerd/servers.c

    r4394 r4395  
    259259                                server->name, server->url, interval - update); 
    260260 
    261                         wt_server_stats_remove(server); 
     261                        wt_servers_remove_stats_for_server(server); 
    262262                         
    263263                        wi_array_remove_data_at_index(wt_servers, i); 
     
    278278                wt_write_servers(); 
    279279        } 
     280} 
     281 
     282 
     283 
     284#pragma mark - 
     285 
     286void wt_servers_add_stats_for_server(wt_server_t *server) { 
     287        wi_lock_lock(wt_status_lock); 
     288        wt_current_servers++; 
     289        wt_current_users += server->users; 
     290        wt_current_files += server->files; 
     291        wt_current_size += server->size; 
     292        wi_lock_unlock(wt_status_lock); 
     293} 
     294 
     295 
     296 
     297void wt_servers_remove_stats_for_server(wt_server_t *server) { 
     298        wi_lock_lock(wt_status_lock); 
     299        wt_current_servers--; 
     300        wt_current_users -= server->users; 
     301        wt_current_files -= server->files; 
     302        wt_current_size -= server->size; 
     303        wi_lock_unlock(wt_status_lock); 
     304} 
     305 
     306 
     307 
     308#pragma mark - 
     309 
     310wi_boolean_t wt_servers_category_is_valid(wi_string_t *category) { 
     311        wi_file_t               *file; 
     312        wi_string_t             *string; 
     313        wi_boolean_t    result = false; 
     314 
     315        if(wi_string_length(category) == 0) 
     316                return true; 
     317 
     318        file = wi_file_for_reading(wt_settings.categories); 
     319         
     320        if(!file) { 
     321                wi_log_err(WI_STR("Could not open %@: %m"), wt_settings.categories); 
     322                 
     323                return true; 
     324        } 
     325         
     326        while((string = wi_file_read_config_line(file))) { 
     327                if(wi_is_equal(category, string)) { 
     328                        result = true; 
     329                         
     330                        break; 
     331                } 
     332        } 
     333 
     334        return result; 
    280335} 
    281336 
     
    423478        return value; 
    424479} 
    425  
    426  
    427  
    428 #pragma mark - 
    429  
    430 void wt_server_stats_add(wt_server_t *server) { 
    431         wi_lock_lock(wt_status_lock); 
    432         wt_current_servers++; 
    433         wt_current_users += server->users; 
    434         wt_current_files += server->files; 
    435         wt_current_size += server->size; 
    436         wi_lock_unlock(wt_status_lock); 
    437 } 
    438  
    439  
    440  
    441 void wt_server_stats_remove(wt_server_t *server) { 
    442         wi_lock_lock(wt_status_lock); 
    443         wt_current_servers--; 
    444         wt_current_users -= server->users; 
    445         wt_current_files -= server->files; 
    446         wt_current_size -= server->size; 
    447         wi_lock_unlock(wt_status_lock); 
    448 } 
    449  
    450  
    451  
    452 #pragma mark - 
    453  
    454 wi_boolean_t wt_category_is_valid(wi_string_t *category) { 
    455         wi_file_t               *file; 
    456         wi_string_t             *string; 
    457         wi_boolean_t    result = false; 
    458  
    459         if(wi_string_length(category) == 0) 
    460                 return true; 
    461  
    462         file = wi_file_for_reading(wt_settings.categories); 
    463          
    464         if(!file) { 
    465                 wi_log_err(WI_STR("Could not open %@: %m"), wt_settings.categories); 
    466                  
    467                 return true; 
    468         } 
    469          
    470         while((string = wi_file_read_config_line(file))) { 
    471                 if(wi_is_equal(category, string)) { 
    472                         result = true; 
    473                          
    474                         break; 
    475                 } 
    476         } 
    477  
    478         return result; 
    479 } 
  • trackerd/trunk/trackerd/servers.h

    r4394 r4395  
    6363void                                                            wt_write_servers(void); 
    6464 
     65void                                                            wt_servers_add_stats_for_server(wt_server_t *); 
     66void                                                            wt_servers_remove_stats_for_server(wt_server_t *); 
     67 
     68wi_boolean_t                                            wt_servers_category_is_valid(wi_string_t *); 
     69 
    6570wt_server_t *                                           wt_server_alloc(void); 
    6671wt_server_t *                                           wt_server_init(wt_server_t *); 
     
    7075wt_server_t *                                           wt_server_with_key(wi_string_t *); 
    7176 
    72 void                                                            wt_server_stats_add(wt_server_t *); 
    73 void                                                            wt_server_stats_remove(wt_server_t *); 
    74  
    75 wi_boolean_t                                            wt_category_is_valid(wi_string_t *); 
    76  
    7777 
    7878extern wi_array_t                                       *wt_servers; 
  • trackerd/trunk/trackerd/tracker.c

    r4394 r4395  
    316316                                                server->name, server->url, interval - server->update_time); 
    317317 
    318                                         wt_server_stats_remove(server); 
    319  
    320                                         wi_list_wrlock(wt_servers); 
    321                                         wi_list_remove_data(wt_servers, server); 
    322                                         wi_list_unlock(wt_servers); 
     318                                        wt_servers_remove_stats_for_server(server); 
     319 
     320                                        wi_array_wrlock(wt_servers); 
     321                                        wi_array_remove_data(wt_servers, server); 
     322                                        wi_array_unlock(wt_servers); 
    323323 
    324324                                        wi_lock_lock(wt_status_lock); 
     
    333333                         
    334334                        /* update server */ 
    335                         wt_server_stats_remove(server); 
     335                        wt_servers_remove_stats_for_server(server); 
    336336                        server->users           = wi_string_uint32(WI_ARRAY(arguments, 1)); 
    337337                        server->guest           = wi_string_bool(WI_ARRAY(arguments, 2)); 
     
    340340                        server->size            = wi_string_uint64(WI_ARRAY(arguments, 5)); 
    341341                        server->update_time     = interval; 
    342                         wt_server_stats_add(server); 
     342                        wt_servers_add_stats_for_server(server); 
    343343 
    344344                        wi_lock_lock(wt_status_lock);