Changeset 312

Show
Ignore:
Timestamp:
10/31/08 18:07:02 (2 months ago)
Author:
llaumgui
Message:

Mise en place de l'option --force permettant d'outre-passer les désactivcation du fichier de configuration.
Amélioration du code
Gestion du restore

Location:
python/netbook_blo/trunk/src
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • python/netbook_blo/trunk/src/NetbookBLO/GlobalOptimizations.py

    r310 r312  
    3434        self.nblo = nblo 
    3535         
    36         if self.isEnabled(): 
     36        if self.isEnabled() or self.nblo.options.force: 
    3737            self.__statut__ = "OK" 
    3838            if action == 'optimize': 
     
    4141                self.restore() 
    4242             
    43         self.nblo.interface.action(self.__label__, self.__statut__) 
     43        self.nblo.interface.action(action +": " +self.__label__, self.__statut__) 
    4444 
    4545 
     
    5757        """ This optimization is enabled ? """ 
    5858        if self.__config_item__ != "": 
    59             if self.nblo.config.get('optimization', self.__config_item__) == "enabled": 
    60                 return True 
     59            try: 
     60                if self.nblo.config.get('optimization', self.__config_item__) == "enabled": 
     61                    return True 
     62            except: 
     63                return False 
    6164        return False 
  • python/netbook_blo/trunk/src/netbook_blo.py

    r311 r312  
    3232 
    3333# Constante 
    34 __PATH_CONFIGURATION__ = '../config/netbook_blo.conf' 
     34__PATH_CONFIGURATION__ = '/etc/netbook_blo/netbook_blo.conf' 
    3535 
    3636# pydoc 
     
    4646    """ Netbook Optimization """ 
    4747     
     48    # List of optimization's Module 
     49    __optimizations = ["BluetoothOptimizations.BluetoothOptimizations", \ 
     50                       "CDROMPollingOptimizations.CDROMPollingOptimizations", \ 
     51                       "HardDiskOptimizations.HardDiskOptimizations", \ 
     52                       "IOOptimizations.IOOptimizations", \ 
     53                       "NetworkOptimizations.NetworkOptimizations", \ 
     54                       "SchedulingOptimizations.SchedulingOptimizations" ] 
     55 
     56 
     57 
    4858    def __init__(self,interface): 
    4959        """ Constructor """ 
     
    5767    def optimize(self): 
    5868        """ Init optimization """ 
    59         NetworkOptimizations.NetworkOptimizations(self) 
    60         BluetoothOptimizations.BluetoothOptimizations(self) 
    61         SchedulingOptimizations.SchedulingOptimizations(self) 
    62         HardDiskOptimizations.HardDiskOptimizations(self) 
    63         IOOptimizations.IOOptimizations(self) 
    64         CDROMPollingOptimizations.CDROMPollingOptimizations(self) 
     69        for opt in self.__optimizations: 
     70            exec(opt + "(self, action='optimize')") 
     71             
     72     
     73    def restore(self): 
     74        """ Init restoration """ 
     75        for opt in self.__optimizations: 
     76            exec(opt + "(self, action='restore')") 
    6577 
    6678 
     
    6880    def loadConfiguration(self ): 
    6981        """ Load configuration file """ 
    70         self.config = ConfigParser.ConfigParser()   
    71         self.config.readfp(open(__PATH_CONFIGURATION__)) 
    72         self.interface.log( 'Load configuration for "%s" in %s' % \ 
    73             (self.config.get('netbook', 'model'), __PATH_CONFIGURATION__) ) 
     82 
     83        # Determines the path_configuration 
     84        if self.options.path_configuration != "": 
     85            path_configuration = self.options.path_configuration 
     86 
     87        # Load configuration file 
     88        try: 
     89            self.config = ConfigParser.ConfigParser() 
     90            self.config.readfp(open(path_configuration)) 
     91            self.interface.log( 'Load configuration for "%s" in %s\n' % \ 
     92                (self.config.get('netbook', 'model'), path_configuration) ) 
     93        except IOError: 
     94             self.interface.log( 'No configuration in %s' % path_configuration, force=True) 
     95             exit(2) 
    7496 
    7597 
     
    90112                               dest="restore", 
    91113                               help="Restore default settings") 
     114        self.parser.add_option("--config", 
     115                               action="store", 
     116                               dest="path_configuration", 
     117                               help="Use a specific configuration file", 
     118                               default="") 
    92119        self.parser.add_option("--force", 
    93120                               action="store_true", 
    94121                               dest="force", 
    95122                               help="Enable all optimization") 
    96         self.parser.add_option("--config", 
    97                                action="store_true", 
    98                                dest="path_configuration", 
    99                                help="Configuration file") 
    100123        (options, args) = self.parser.parse_args() 
    101124        self.options = options 
     
    130153    console = ConsoleInterface() 
    131154    nblo = NetbookOptimization( console ) 
     155     
     156    # Optimize 
    132157    if nblo.options.optimize: 
    133158        nblo.optimize() 
     159    # Restore 
     160    elif nblo.options.restore: 
     161        nblo.restore() 
     162    # Other 
    134163    else: 
    135164        nblo.parser.print_help()