App Engine Python SDK version 1.9.2
[gae.git] / python / google / appengine / api / rdbms.py
blob5402d7710b901700cd6fa461f92dfe9e58c0b387
1 #!/usr/bin/env python
3 # Copyright 2007 Google Inc.
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
9 # http://www.apache.org/licenses/LICENSE-2.0
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
21 """Relational database API for production.
23 Note that rdbms_mysqldb is the module used in dev_appserver.
24 """
32 import logging
34 from google.storage.speckle.python.api import rdbms_apiproxy
37 from google.storage.speckle.python.api.rdbms_apiproxy import *
40 _instance = None
42 def set_instance(instance):
43 global _instance
44 _instance = instance
46 def connect(instance=None, database=None, **kwargs):
47 global _instance
48 if not instance and _instance:
49 instance = _instance
51 if 'db' in kwargs and not database:
52 database = kwargs.pop('db')
54 user = None
55 if 'user' in kwargs:
56 user = kwargs.pop('user')
58 password = None
59 if 'password' in kwargs:
60 password = kwargs.pop('password')
62 if kwargs:
63 logging.info('Ignoring extra kwargs to connect(): %r', kwargs)
65 return rdbms_apiproxy.connect('unused_address',
66 instance,
67 database=database,
68 user=user,
69 password=password)