Esempio n. 1
0
def get_bus():
    uow = unit_of_work.SqlAlchemyUnitOfWork()
    bus = messagebus.MessageBus(
        uow=uow,
        notifications=notifications.EmailNotifications(),
        publish=publish)
    uow.set_bus(bus)
    return bus
Esempio n. 2
0
def bus(sqlite_session_factory):
    return messagebus.MessageBus(
        uow=unit_of_work.SqlAlchemyUnitOfWork(sqlite_session_factory),
        notifications=notifications.EmailNotifications(
            smtp_host=cfg['host'],
            port=cfg['port'],
        ),
        publish=lambda *_, **__: None)
Esempio n. 3
0
def sqlite_bus(sqlite_session_factory):
    uow = unit_of_work.SqlAlchemyUnitOfWork(sqlite_session_factory)
    bus = messagebus.MessageBus(
        uow=uow,
        notifications=mock.Mock(),
        publish=mock.Mock(),
    )
    uow.set_bus(bus)
    return bus
Esempio n. 4
0
from flask import Flask, jsonify, request
from allocation import (
    commands,
    exceptions,
    messagebus,
    notifications,
    orm,
    redis_pubsub,
    unit_of_work,
    views,
)

app = Flask(__name__)
orm.start_mappers()
bus = messagebus.MessageBus(uow=unit_of_work.SqlAlchemyUnitOfWork(),
                            notifications=notifications.EmailNotifications(),
                            publish=redis_pubsub.publish)


@app.route("/add_batch", methods=['POST'])
def add_batch():
    eta = request.json['eta']
    if eta is not None:
        eta = datetime.fromisoformat(eta).date()
    command = commands.CreateBatch(
        request.json['ref'],
        request.json['sku'],
        request.json['qty'],
        eta,
    )
    bus.handle([command])
Esempio n. 5
0
def get_bus():
    return messagebus.MessageBus(uow=unit_of_work.SqlAlchemyUnitOfWork(),
                                 send_mail=email.send,
                                 publish=publish)
Esempio n. 6
0
def get_bus():
    return messagebus.MessageBus(
        uow=unit_of_work.SqlAlchemyUnitOfWork(),
        notifications=notifications.EmailNotifications(),
        publish=publish)
Esempio n. 7
0
from allocation import (
    commands,
    exceptions,
    messagebus,
    notifications,
    orm,
    redis_pubsub,
    unit_of_work,
    views,
)

app = Flask(__name__)
orm.start_mappers()
uow = unit_of_work.SqlAlchemyUnitOfWork()
bus = messagebus.MessageBus(uow=uow,
                            notifications=notifications.EmailNotifications(),
                            publish=redis_pubsub.publish)
uow.bus = bus


@app.route("/add_batch", methods=['POST'])
def add_batch():
    eta = request.json['eta']
    if eta is not None:
        eta = datetime.fromisoformat(eta).date()
    cmd = commands.CreateBatch(
        request.json['ref'],
        request.json['sku'],
        request.json['qty'],
        eta,
    )
Esempio n. 8
0
def sqlite_bus(sqlite_session_factory):
    return messagebus.MessageBus(
        uow=unit_of_work.SqlAlchemyUnitOfWork(sqlite_session_factory),
        send_mail=mock.Mock(),
        publish=mock.Mock(),
    )
Esempio n. 9
0
from flask import Flask, jsonify, request
from allocation import (
    commands,
    email,
    exceptions,
    messagebus,
    orm,
    redis_pubsub,
    unit_of_work,
    views,
)

app = Flask(__name__)
orm.start_mappers()
bus = messagebus.MessageBus(uow=unit_of_work.SqlAlchemyUnitOfWork(),
                            send_mail=email.send,
                            publish=redis_pubsub.publish)


@app.route("/add_batch", methods=['POST'])
def add_batch():
    eta = request.json['eta']
    if eta is not None:
        eta = datetime.fromisoformat(eta).date()
    command = commands.CreateBatch(
        request.json['ref'],
        request.json['sku'],
        request.json['qty'],
        eta,
    )
    bus.handle([command])