Exemplo n.º 1
0
 def show(self, req, database_id, schema, body=None):
     body = body or {}
     database_id = int(database_id)
     kwargs = dict(req=req)
     kwargs.update(body)
     dbmanager = _impl(database_id)
     dbresult = dbmanager.show_schema(database_id, schema, **kwargs)
     return resultutils.results(result='show schema success',
                                data=[
                                    dbresult,
                                ])
Exemplo n.º 2
0
 def slaves_address(databases):
     dbmanager = None
     databases = set(databases)
     for database_id in databases:
         _dbmanager = _impl(database_id)
         if dbmanager is None:
             dbmanager = _dbmanager
             continue
         if dbmanager.__class__ is not _dbmanager.__class__:
             raise InvalidArgument('Database impl not the same')
     return dbmanager.slaves_address(databases)
Exemplo n.º 3
0
 def status(self, req, database_id, body=None):
     body = body or {}
     database_id = int(database_id)
     kwargs = dict(req=req)
     kwargs.update(body)
     dbmanager = _impl(database_id)
     dbresult = dbmanager.status_database(database_id, **kwargs)
     return resultutils.results(result='status database success',
                                data=[
                                    dbresult,
                                ])
Exemplo n.º 4
0
 def delete(self, req, database_id, schema, body=None):
     body = body or {}
     database_id = int(database_id)
     kwargs = dict(req=req)
     kwargs.update(body)
     dbmanager = _impl(database_id)
     LOG.info('Try delete schema %s from %d' % (schema, database_id))
     dbresult = dbmanager.delete_schema(database_id, schema, **kwargs)
     return resultutils.results(result='delete schema success',
                                data=[
                                    dbresult,
                                ])
Exemplo n.º 5
0
 def ready(self, req, database_id, body=None):
     body = body or {}
     jsonutils.schema_validate(body, self.SLAVEREADY)
     database_id = int(database_id)
     kwargs = dict(req=req)
     kwargs.update(body)
     dbmanager = _impl(database_id)
     dbresult = dbmanager.ready_relation(database_id, **kwargs)
     return resultutils.results(result='Set relation to ready success',
                                data=[
                                    dbresult,
                                ])
Exemplo n.º 6
0
 def delete(self, req, database_id, body=None):
     body = body or {}
     master = body.pop('master', False)
     database_id = int(database_id)
     kwargs = dict(req=req)
     kwargs.update(body)
     dbmanager = _impl(database_id)
     dbresult = dbmanager.delete_database(database_id, master, **kwargs)
     return resultutils.results(result='delete database success',
                                data=[
                                    dbresult,
                                ])
Exemplo n.º 7
0
 def slave(self, req, database_id, body=None):
     """master slave(bond) a slave database"""
     body = body or {}
     jsonutils.schema_validate(body, self.BONDSLAVE)
     database_id = int(database_id)
     kwargs = dict(req=req)
     kwargs.update(body)
     dbmanager = _impl(database_id)
     dbresult = dbmanager.slave_database(database_id, **kwargs)
     return resultutils.results(result='master bond slave database success',
                                data=[
                                    dbresult,
                                ])
Exemplo n.º 8
0
 def unbond(self, req, database_id, body=None):
     """slave unbond master"""
     body = body or {}
     jsonutils.schema_validate(body, self.UNBONDMASTER)
     database_id = int(database_id)
     kwargs = dict(req=req)
     kwargs.update(body)
     dbmanager = _impl(database_id)
     dbresult = dbmanager.unbond_database(database_id, **kwargs)
     return resultutils.results(result='unbond slave database success',
                                data=[
                                    dbresult,
                                ])
Exemplo n.º 9
0
 def copy(self, req, database_id, schema, body=None):
     body = body or {}
     database_id = int(database_id)
     target_database_id = body.pop('target.database_id')
     target_schema = body.pop('target.schema')
     auth = body.pop('auth')
     kwargs = dict(req=req)
     kwargs.update(body)
     dbmanager = _impl(database_id)
     dbresult = dbmanager.copy_schema(database_id, schema,
                                      target_database_id, target_schema,
                                      auth, **kwargs)
     return resultutils.results(result='copy schema from %d.%s success' %
                                (database_id, schema),
                                data=[
                                    dbresult,
                                ])
Exemplo n.º 10
0
 def create(self, req, database_id, body=None):
     """create schema in database with database_id
     """
     body = body or {}
     database_id = int(database_id)
     jsonutils.schema_validate(body, self.CREATESCHEMA)
     auth = body.pop('auth', None)
     options = body.pop('options', None)
     schema = body.pop('schema', None)
     self._validate_schema(schema)
     kwargs = dict(req=req)
     kwargs.update(body)
     dbmanager = _impl(database_id)
     dbresult = dbmanager.create_schema(database_id, schema, auth, options,
                                        **kwargs)
     return resultutils.results(result='create empty schema success',
                                data=[
                                    dbresult,
                                ])