regenerate database migrations
[vfc/gvnfm/vnflcm.git] / lcm / lcm / pub / redisco / __init__.py
1 #  Copyright (c) 2010 Tim Medina
2 #
3 #  Permission is hereby granted, free of charge, to any person
4 #  obtaining a copy of this software and associated documentation
5 #  files (the "Software"), to deal in the Software without
6 #  restriction, including without limitation the rights to use,
7 #  copy, modify, merge, publish, distribute, sublicense, and/or sell
8 #  copies of the Software, and to permit persons to whom the
9 #  Software is furnished to do so, subject to the following
10 #  conditions:
11 #
12 #  The above copyright notice and this permission notice shall be
13 #  included in all copies or substantial portions of the Software.
14 #
15 #  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16 #  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
17 #  OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18 #  NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
19 #  HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
20 #  WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21 #  FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
22 #  OTHER DEALINGS IN THE SOFTWARE.
23 #
24 #  The original code link is https://github.com/iamteem/redisco/tree/master/redisco/__init__.py
25 import redis
26
27
28 class Client(object):
29     def __init__(self, **kwargs):
30         self.connection_settings = kwargs or {'host': 'localhost', 'port': 6379, 'db': 0}
31
32     def redis(self):
33         return redis.Redis(**self.connection_settings)
34
35     def update(self, d):
36         self.connection_settings.update(d)
37
38
39 def connection_setup(**kwargs):
40     global connection, client
41     if client:
42         client.update(kwargs)
43     else:
44         client = Client(**kwargs)
45     connection = client.redis()
46
47
48 def get_client():
49     global connection
50     return connection
51
52
53 client = Client()
54 connection = client.redis()
55
56 __all__ = ['connection_setup', 'get_client']