Ignore:
Timestamp:
08/15/08 15:50:02 (12 years ago)
Author:
Eoin
Message:

Updating halConfig serialization.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/halConfig.hpp

    r519 r541  
    3131        Config() : 
    3232                hal::IniBase<Config>("globals/bittorrent", "Config"), 
    33                 maxConnections(200), 
    34                 maxUploads(20), 
    35                 downRate(-1), 
    36                 upRate(-1), 
    37                 torrentMaxConnections(50), 
    38                 torrentMaxUploads(10), 
    39                 torrentDownRate(-1), 
    40                 torrentUpRate(-1), 
     33                globals_(), 
     34                torrent_defaults_(), 
    4135                portFrom(6881), 
    4236                portTo(6881), 
    4337                portRange(false), 
    44                 enableDHT(false), 
    45                 dhtMaxPeersReply(50), 
    46                 dhtSearchBranching(5),           
    47                 dhtServicePort(6881), 
    48                 dhtMaxFailCount(20), 
     38                enable_dht_(true), 
     39                dht_settings_(), 
    4940                enableIPFilter(false), 
    5041                enableProxy(false), 
     
    5445                useMoveTo(false), 
    5546                savePrompt(true), 
    56                 enablePe(false), 
    57                 peEncLevel(0), 
    58                 pePerferRc4(false), 
    59                 peConInPolicy(1), 
    60                 peConOutPolicy(1), 
     47                enable_pe_(false), 
     48                pe_settings_(), 
    6149                halfConn(true), 
    6250                halfConnLimit(10), 
     
    7260        {        
    7361                using boost::serialization::make_nvp; 
     62                switch (version) 
     63                { 
     64                case 6: 
     65                ar      & make_nvp("globals", globals_) 
     66                        & make_nvp("torrent_defaults", torrent_defaults_) 
     67                        & make_nvp("queue_settings", queue_settings_) 
     68                        & make_nvp("timeouts", timeouts_) 
     69                        & make_nvp("enable_dht", enable_dht_) 
     70                        & make_nvp("dht_settings", dht_settings_) 
     71                        & make_nvp("enable_pe", enable_pe_) 
     72                        & make_nvp("pe_settings", pe_settings_); 
     73                break; 
    7474 
    75                 ar & BOOST_SERIALIZATION_NVP(maxConnections); 
    76                 ar & BOOST_SERIALIZATION_NVP(maxUploads); 
    77                 ar & BOOST_SERIALIZATION_NVP(downRate); 
    78                 ar & BOOST_SERIALIZATION_NVP(upRate); 
    79                 ar & BOOST_SERIALIZATION_NVP(portFrom); 
    80                 ar & BOOST_SERIALIZATION_NVP(portTo); 
     75                case 4: 
     76                ar      & BOOST_SERIALIZATION_NVP(defaultMoveToFolder); 
     77                        & BOOST_SERIALIZATION_NVP(useMoveTo); 
     78 
     79                case 3: 
     80                ar      & BOOST_SERIALIZATION_NVP(mappingType); 
     81 
     82                case 2: 
     83                ar      & BOOST_SERIALIZATION_NVP(halfConn) 
     84                        & BOOST_SERIALIZATION_NVP(halfConnLimit); 
     85 
     86                case 1: 
     87                ar      & make_nvp("enablePe", enable_pe_) 
     88                        & make_nvp("peEncLevel", pe_settings_.encrypt_level) 
     89                        & make_nvp("pePerferRc4", pe_settings_.prefer_rc4) 
     90                        & make_nvp("peConInPolicy", pe_settings_.conn_in_policy) 
     91                        & make_nvp("peConOutPolicy", pe_settings_.conn_out_policy); 
     92 
     93                case 0: 
     94                ar      & make_nvp("maxConnections", globals_.total) 
     95                        & make_nvp("maxUploads", globals_.uploads) 
     96                        & make_nvp("downRate", globals_.download_rate) 
     97                        & make_nvp("upRate", globals_.upload_rate) 
     98                        & BOOST_SERIALIZATION_NVP(portFrom) 
     99                        & BOOST_SERIALIZATION_NVP(portTo); 
    81100                 
    82                 ar & BOOST_SERIALIZATION_NVP(enableDHT); 
    83                 ar & BOOST_SERIALIZATION_NVP(dhtMaxPeersReply); 
    84                 ar & BOOST_SERIALIZATION_NVP(dhtSearchBranching); 
    85                 ar & BOOST_SERIALIZATION_NVP(dhtServicePort); 
    86                 ar & BOOST_SERIALIZATION_NVP(dhtMaxFailCount); 
    87                 ar & BOOST_SERIALIZATION_NVP(enableIPFilter); 
    88                 ar & BOOST_SERIALIZATION_NVP(portRange); 
     101                ar      & make_nvp("enableDHT", enable_dht_) 
     102                        & make_nvp("dhtMaxPeersReply", dht_settings_.max_peers_reply) 
     103                        & make_nvp("dhtSearchBranching", dht_settings_.search_branching) 
     104                        & make_nvp("dhtServicePort", dht_settings_.service_port) 
     105                        & make_nvp("dhtMaxFailCount", dht_settings_.max_fail_count); 
    89106                 
    90                 ar & BOOST_SERIALIZATION_NVP(torrentMaxConnections); 
    91                 ar & BOOST_SERIALIZATION_NVP(torrentMaxUploads); 
    92                 ar & BOOST_SERIALIZATION_NVP(torrentDownRate); 
    93                 ar & BOOST_SERIALIZATION_NVP(torrentUpRate); 
    94                  
    95                 if (version <= 1) { 
    96                         ar & BOOST_SERIALIZATION_NVP(enableProxy); 
    97                         ar & BOOST_SERIALIZATION_NVP(proxyHost); 
    98                         ar & BOOST_SERIALIZATION_NVP(proxyPort); 
    99                         ar & BOOST_SERIALIZATION_NVP(proxyUsername); 
    100                         ar & BOOST_SERIALIZATION_NVP(proxyPassword); 
    101                 } 
    102                  
    103                 ar & BOOST_SERIALIZATION_NVP(defaultSaveFolder); 
    104                 if (version > 3) { 
    105                         ar & BOOST_SERIALIZATION_NVP(defaultMoveToFolder); 
    106                         ar & BOOST_SERIALIZATION_NVP(useMoveTo); 
    107                 } 
    108                 ar & BOOST_SERIALIZATION_NVP(savePrompt); 
    109                  
    110                 if (version > 0) { 
    111                         ar & BOOST_SERIALIZATION_NVP(enablePe); 
    112                         ar & BOOST_SERIALIZATION_NVP(peEncLevel); 
    113                         ar & BOOST_SERIALIZATION_NVP(pePerferRc4); 
    114                         ar & BOOST_SERIALIZATION_NVP(peConInPolicy); 
    115                         ar & BOOST_SERIALIZATION_NVP(peConOutPolicy); 
    116                 } 
    117                 if (version > 1) { 
    118                         ar & BOOST_SERIALIZATION_NVP(halfConn); 
    119                         ar & BOOST_SERIALIZATION_NVP(halfConnLimit); 
    120                 } 
    121                 if (version > 2) { 
    122                         ar & BOOST_SERIALIZATION_NVP(mappingType); 
    123                 } 
     107                ar      & make_nvp("peerTimeout", timeouts_.peer_connect_timeout) 
     108                        & make_nvp("trackerTimeout", timeouts_.tracker_receive_timeout); 
    124109 
    125                 if (version > 2 && version < 6) { 
    126                         ar & make_nvp("peerTimeout", timeouts_.peer_connect_timeout); 
    127                         ar & make_nvp("trackerTimeout", timeouts_.tracker_receive_timeout); 
    128                 } else if (version > 5) { 
    129                         ar & make_nvp("queue_settings", queue_settings_); 
    130                         ar & make_nvp("timeouts", timeouts_); 
     110                ar      & BOOST_SERIALIZATION_NVP(enableIPFilter) 
     111                        & BOOST_SERIALIZATION_NVP(portRange) 
     112                        & make_nvp("torrentMaxConnections", torrent_defaults_.total) 
     113                        & make_nvp("torrentMaxUploads", torrent_defaults_.uploads) 
     114                        & make_nvp("torrentDownRate", torrent_defaults_.download_rate) 
     115                        & make_nvp("torrentUpRate", torrent_defaults_.upload_rate) 
     116                        & BOOST_SERIALIZATION_NVP(defaultSaveFolder) 
     117                        & BOOST_SERIALIZATION_NVP(savePrompt); 
    131118                } 
    132119        } 
     
    145132        bool settingsThread(); 
    146133         
    147         int maxConnections; 
    148         int maxUploads; 
    149          
    150         float downRate; 
    151         float upRate; 
    152  
    153         int torrentMaxConnections; 
    154         int torrentMaxUploads; 
    155          
    156         float torrentDownRate; 
    157         float torrentUpRate; 
     134        hal::connections globals_; 
     135        hal::connections torrent_defaults_; 
    158136         
    159137        int portFrom; 
     
    161139        bool portRange; 
    162140         
    163         bool enableDHT; 
    164         int dhtMaxPeersReply; 
    165         int dhtSearchBranching; 
    166         int dhtServicePort; 
    167         int dhtMaxFailCount; 
     141        bool enable_dht_; 
     142        hal::dht_settings dht_settings_; 
    168143         
    169144        bool enableIPFilter; 
     
    180155        bool savePrompt; 
    181156 
    182     bool enablePe; 
    183     int peEncLevel; 
    184     bool pePerferRc4; 
    185     int peConInPolicy; 
    186     int peConOutPolicy; 
     157    bool enable_pe_; 
     158        hal::pe_settings pe_settings_; 
    187159         
    188160        bool halfConn; 
Note: See TracChangeset for help on using the changeset viewer.