Changeset 9:69d5a3b74c6a in mailjam for postman/daemon.py


Ignore:
Timestamp:
May 19, 2012, 10:14:00 AM (12 years ago)
Author:
Francisco de Borja Lopez Rio <borja@…>
Branch:
default
Phase:
public
Message:

Added a new method to the config module that parses the configuration file and returns configuration parameters. Modified the daemon.Postman and daemon.PostmanDaemon so they load their configs from the config file

File:
1 edited

Legend:

Unmodified
Added
Removed
  • postman/daemon.py

    r7 r9  
    1212
    1313    def __init__(self, configfile=None):
    14         if not configfile:
    15             # FIXME: This is not used right now, we are getting the stuff
    16             # from postman.config, but we will move configurations to a
    17             # external ini-style config file soon
    18             configfile = os.path.join(os.path.dirname(__file__),
    19                                       '../conf/postman.conf')
    20         self.configfile = configfile
     14        self.storage_config = config.get_config_parameters('storage',
     15                                                           configfile)
     16        self.archive_config = config.get_config_parameters('archive',
     17                                                           configfile)
    2118
    2219        # lists were the currently managed mailing lists information is going
     
    2724        # the files were internal information (like active mailing lists,
    2825        # members, etc) is saved
    29         self.dbs = {'mailings': Storage(os.path.join(config.storage_path,
    30                                                      'mailings.json')),
    31                     'members': Storage(os.path.join(config.storage_path,
    32                                                     'members.json'))}
     26        self.dbs = {'mailings': Storage(self.storage_config['lists_db']),
     27                    'members': Storage(self.storage_config['members_db'])}
    3328
    3429    def save(self):
     
    178173    def add(self, member_addr=None, list_addr=None):
    179174        self.postman.add_mailing_member(member_addr, list_addr)
    180                  
    181 
     175   
     176
     177   
    182178class PostmanDaemon():
    183179    def __init__(self, configfile=None):
    184         if not configfile:
    185             # FIXME: This is not used right now, we are getting the stuff
    186             # from postman.config, but we will move configurations to a
    187             # external ini-style config file soon
    188             configfile = os.path.join(os.path.dirname(__file__),
    189                                       '../conf/postman.conf')
    190         self.configfile = configfile
     180        self.config = config.get_config_parameters('xmlrpc_server', configfile)
    191181
    192182        # FIXME: These should be loaded from a config file
    193         self.address='localhost'
    194         self.port = 9000
    195        
    196         self.logfile = os.path.join(os.path.dirname(__file__), 'server.log')
     183        self.address = self.config.get('address', 'localhost')
     184        self.port = int(self.config.get('port', 9876))
     185        self.logfile = self.config.get('logfile',
     186                                       os.path.join(os.path.dirname(__file__),
     187                                                    'server.log'))
    197188        logging.basicConfig(filename=self.logfile, level=logging.DEBUG)
    198189
Note: See TracChangeset for help on using the changeset viewer.