Example #1
0
def _selftest(targethost, tport, username='******', realname=b'? ? ?',
      ssl=None):
   import pprint
   from gonium.service_aggregation import ServiceAggregate
   from gonium._debugging import streamlogger_setup
   
   logging.getLogger('IRCClientConnection').setLevel(20)
   
   us = IRCUserSpec(username=username, realname=realname)
   us.add_nick(b'NickServ')
   us.add_nick(b'ChanServ')
   
   servers = (
      IRCServerSpec('nonexistent.nowhere', 1),
      IRCServerSpec('0.0.0.0', 1),
      IRCServerSpec(targethost, tport, ssl=ssl),
   )
   
   def link():
      print('All done. Shutting down.')
      sa.ed.shutdown()
   
   streamlogger_setup()
   sa = ServiceAggregate()
   sa.add_dnslm()
   
   irccnl = IRCClientNetworkLink(sa, None, us, servers, conn_delay_is=5)
   irccnl.em_link_finish.new_prio_listener(link)
   
   irccnl.conn_init()
   
   sa.ed.event_loop()
Example #2
0
 def __init__(self, sa=None):
    if (sa is None):
       sa = ServiceAggregate()
       sa.add_dnslm()
    self._sa = sa
    self._icncs = []
    self._config_ns = {}
    
    self.log_formatter_default = self.LogFormatter()
    self.assoc_handler = NetUserAssocHandler(self._sa.ed)
    self._single_bnc_names = set()
    
    for name in dir(self):
       if (name.startswith('_')):
          continue
       self._config_ns[name] = getattr(self, name)