From 3ad963c726e377cf812b8298df2ad1d5f68d672d Mon Sep 17 00:00:00 2001 From: Tim Van Steenburgh Date: Fri, 7 Oct 2016 12:11:06 -0400 Subject: [PATCH] Fix livemodel example --- examples/livemodel.py | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/examples/livemodel.py b/examples/livemodel.py index 2330a58..7f184c3 100644 --- a/examples/livemodel.py +++ b/examples/livemodel.py @@ -1,22 +1,30 @@ -import asyncio +""" +This example: -from juju.model import Model -from juju.client.connection import Connection +1. Connects to the current model +2. Watches the model and prints all changes +3. Runs forever (kill with Ctrl-C) +""" +import asyncio -loop = asyncio.get_event_loop() -conn = loop.run_until_complete(Connection.connect_current()) +from juju.model import Model -def on_model_change(delta, old, new, model): +async def on_model_change(delta, old, new, model): print(delta.entity, delta.type, delta.data) print(old) print(new) print(model) + async def watch_model(): - model = Model(conn) + model = Model() + await model.connect_current() + model.add_observer(on_model_change) - await model.watch() -loop.run_until_complete(watch_model()) + +loop = asyncio.get_event_loop() +loop.create_task(watch_model()) +loop.run_forever() -- 2.25.1