From d215aaaa55916570bb0ec149b7e0cef4381e1dad Mon Sep 17 00:00:00 2001 From: Flavio Percoco Date: Thu, 21 Nov 2013 00:10:31 +0100 Subject: [PATCH] Add `simple` example for the client library The patch adds a new package containing a simple example of how the client library is supposed to be used. It shows the usage of the high-level API. Change-Id: I6a31f4ac9bf0be5c82d71681abb0cac8b67d1d6b --- examples/simple.py | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 examples/simple.py diff --git a/examples/simple.py b/examples/simple.py new file mode 100644 index 00000000..e1216a4c --- /dev/null +++ b/examples/simple.py @@ -0,0 +1,39 @@ +# Copyright 2013 Red Hat, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. + +# NOTE(flaper87): Client should be moved to +# an upper package. It's version agnostic. +from marconiclient.queues.v1 import client + +URL = 'http://localhost:8888/v1' + + +def create_post_delete(queue_name, messages): + """Creates a queue, posts messages to it + and finally deletes it. + + :params queue_name: The name of the queue + :type queue_name: `six.text_type` + :params messages: Messages to post. + :type messages: list + """ + cli = client.Client(URL) + queue = cli.queue(queue_name) + queue.post(messages) + queue.delete() + +if __name__ == '__main__': + messages = [{'body': {'id': idx}, 'ttl': 60} + for idx in range(20)] + create_post_delete('my_queue', messages)