Example #1
0
def run_demo():
    """
    Insère des données d'exemple dans la base de données
    à partir d'un scénario de démonstration.
    Plusieurs scénarios différents peuvent être cumulés
    en passant leurs différents noms à ce programme.
    """
    import optparse
    from vigilo.common.gettext import translate_narrow
    _ = translate_narrow(__name__)

    parser = optparse.OptionParser("Usage: %prog sample1 [sample2...]")
    args = parser.parse_args()[1]
    if not args:
        parser.error(_("No sample selected. Available samples: %s")
                % ", ".join(samples.keys()))
        return

    from vigilo.common.conf import settings
    settings.load_module('vigilo.models')

    from vigilo.models.configure import configure_db
    configure_db(settings['database'], 'sqlalchemy_')

    import atexit
    def commit_on_exit():
        """
        Effectue un COMMIT sur la transaction à la fin de l'exécution
        du script d'insertion des données de test.
        """
        import transaction, sqlalchemy
        try:
            transaction.commit()
        except sqlalchemy.exc.InvalidRequestError:
            transaction.abort()
    atexit.register(commit_on_exit)

    for sample in args:
        if sample not in samples:
            parser.error(_("Sample '%s' cannot be found.") % sample)
            return
        module = __import__(samples[sample], globals(), locals(), ["main"], -1)
        module.main()
Example #2
0
import argparse

from configobj import ConfigObj
from zope.interface import implements

from twisted.internet import defer

from vigilo.connector.client import OneShotClient
from vigilo.connector.interfaces import IBusHandler

from vigilo.common.logging import get_logger
LOGGER = get_logger(__name__)

from vigilo.common.gettext import translate, translate_narrow
_ = translate(__name__)
N_ = translate_narrow(__name__)



class BusManager(object):
    """
    Classe contenant toutes les méthodes de gestion du bus
    """

    implements(IBusHandler)


    def __init__(self):
        self.client = None

    def run(self, client, args):