Example #1
0
    def setUp(self):
        self.logger = logging.getLogger()
        self.dispatcher = type("MscDispatcher", (object, ), {"_circuits": []})
        self.circuits = []
        for id in xrange(10):
            self.circuits.append(Circuit(id))

        self.starter = LoopingStarter(self.dispatcher, 0.2)
Example #2
0
    def initialize(self, config):
        """ Initial setup """
        self.logger = logging.getLogger()
        self.config = config

        # provides the global statistics
        self.statistics = StatisticsProcessing(config)

        # stopped circuits tracker
        self.stopped_track = StoppedTracker()
	# started circuits tracker
        self.started_track = StartedTracker(self.config.max_command_time)

        # mainloop locker
        self.lock_start = DeferredLock()

        # bundles tracking container
        self.bundles = BundleReferences(config)

        # dispatching the batchs of start
	self.loop_starter = LoopingStarter(dispatcher=self,
			                   emitting_period=config.emitting_period)

        # launchers driving and slots detect
        self.groups = [net for (net, mask) in self.config.preferred_network]
        self.launchers_networks = dict([(launcher,[n[0] for n in net_and_mask])
                  for (launcher,net_and_mask) in self.config.launchers_networks.items()])
        self.logger.info("preferred networks by launchers: %s" % str(self.launchers_networks))
        self.launchers = self.config.launchers_uri
        # FIXME - main default launcher
        temp_launcher = self.launchers.keys()[0]

        default_slots = dict([(name, line["slots"]) \
                for (name, line) in self.config.launchers.items()])

        self.launchers_provider = RemoteCallProxy(self.config.launchers_uri,
                                                  default_slots,
                                                  temp_launcher)
        return self._get_all_slots()