# Path: zaqarclient/errors.py
# class ZaqarError(Exception):
# class DriverLoadFailure(ZaqarError):
# class InvalidOperation(ZaqarError):
# class UnsupportedVersion(ZaqarError):
#     def __init__(self, driver, ex):
# 
# Path: zaqarclient/queues/v1/client.py
# class Client(object):
#     def __init__(self, url=None, version=1, conf=None, session=None):
#     def _get_transport(self, request):
#     def _request_and_transport(self):
#     def transport(self):
#     def queue(self, ref, **kwargs):
#     def queues(self, **params):
#     def follow(self, ref):
#     def pool(self, ref, **kwargs):
#     def pools(self, **params):
#     def flavor(self, ref, **kwargs):
#     def flavors(self, **params):
#     def health(self):
# 
# Path: zaqarclient/queues/v2/client.py
# class Client(client.Client):
#     def __init__(self, url=None, version=2, conf=None, session=None):
#     def queue(self, ref, **kwargs):
#     def queues(self, **params):
#     def subscription(self, queue_name, **kwargs):
#     def subscriptions(self, queue_name, **params):
#     def ping(self):
#     def health(self):
#     def homedoc(self):


from zaqarclient import errors
from zaqarclient.queues.v1 import client as cv1
from zaqarclient.queues.v2 import client as cv2

A simple example for accessing an existing queue through a client
instance - based on the API v2 - would look like::

    from zaqarclient.queues import client

    cli = client.Client(\'http://zaqar.example.com:8888/\', version=2)
    queue = cli.queue(\'my_queue\')

Through the queue instance will be then possible to access all the
features associated with the queue itself like posting messages,
getting message and deleting messages.

As mentioned previously in this documentation, a client instance
allows you to also access admin endpoints, for example::

    from zaqarclient.queues import client

    cli = client.Client(\'http://zaqar.example.com:8888/\', version=2)
    flavor = cli.flavor(\'tasty\',
                        pool=\'my-pool-group\',
                        auto_create=True)
    flavor.delete()

`Client` uses the lower-level API to access the server, which means
anything you can do with this client instance can be done by accessing
the underlying API, although not recommended.
"""

_CLIENTS = {1: cv1.Client,

# Path: zaqarclient/errors.py
# class ZaqarError(Exception):
# class DriverLoadFailure(ZaqarError):
# class InvalidOperation(ZaqarError):
# class UnsupportedVersion(ZaqarError):
#     def __init__(self, driver, ex):
# 
# Path: zaqarclient/queues/v1/client.py
# class Client(object):
#     def __init__(self, url=None, version=1, conf=None, session=None):
#     def _get_transport(self, request):
#     def _request_and_transport(self):
#     def transport(self):
#     def queue(self, ref, **kwargs):
#     def queues(self, **params):
#     def follow(self, ref):
#     def pool(self, ref, **kwargs):
#     def pools(self, **params):
#     def flavor(self, ref, **kwargs):
#     def flavors(self, **params):
#     def health(self):
# 
# Path: zaqarclient/queues/v2/client.py
# class Client(client.Client):
#     def __init__(self, url=None, version=2, conf=None, session=None):
#     def queue(self, ref, **kwargs):
#     def queues(self, **params):
#     def subscription(self, queue_name, **kwargs):
#     def subscriptions(self, queue_name, **params):
#     def ping(self):
#     def health(self):
#     def homedoc(self):


# Path: zaqarclient/queues/client.py
from zaqarclient import errors
from zaqarclient.queues.v1 import client as cv1
from zaqarclient.queues.v2 import client as cv2


A simple example for accessing an existing queue through a client
instance - based on the API v2 - would look like::

    from zaqarclient.queues import client

    cli = client.Client(\'http://zaqar.example.com:8888/\', version=2)
    queue = cli.queue(\'my_queue\')

Through the queue instance will be then possible to access all the
features associated with the queue itself like posting messages,
getting message and deleting messages.

As mentioned previously in this documentation, a client instance
allows you to also access admin endpoints, for example::

    from zaqarclient.queues import client

    cli = client.Client(\'http://zaqar.example.com:8888/\', version=2)
    flavor = cli.flavor(\'tasty\',
                        pool=\'my-pool-group\',
                        auto_create=True)
    flavor.delete()

`Client` uses the lower-level API to access the server, which means
anything you can do with this client instance can be done by accessing
the underlying API, although not recommended.
"""

_CLIENTS = {1: cv1.Client,

            1.1: cv1.Client,