Vo Minh Thu (OpenERP) has proposed merging 
lp:~openerp-dev/openobject-server/trunk-duplicate-db into lp:openobject-server.

Requested reviews:
  OpenERP Core Team (openerp)

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-server/trunk-duplicate-db/+merge/130520
-- 
https://code.launchpad.net/~openerp-dev/openobject-server/trunk-duplicate-db/+merge/130520
Your team OpenERP R&D Team is subscribed to branch 
lp:~openerp-dev/openobject-server/trunk-duplicate-db.
=== modified file 'openerp/service/web_services.py'
--- openerp/service/web_services.py	2012-10-04 07:44:20 +0000
+++ openerp/service/web_services.py	2012-10-19 10:24:28 +0000
@@ -103,7 +103,7 @@
         if method in [ 'create', 'get_progress', 'drop', 'dump',
             'restore', 'rename',
             'change_admin_password', 'migrate_databases',
-            'create_database' ]:
+            'create_database', 'duplicate_database' ]:
             passwd = params[0]
             params = params[1:]
             security.check_super(passwd)
@@ -157,6 +157,17 @@
         _initialize_db(self, id, db_name, demo, lang, user_password)
         return True
 
+    def exp_duplicate_database(self, db_original_name, db_name):
+        _logger.info('Duplicate database %s', db_name.lower())
+        db = sql_db.db_connect('postgres')
+        cr = db.cursor()
+        try:
+            cr.autocommit(True) # avoid transaction block
+            cr.execute("""CREATE DATABASE "%s" ENCODING 'unicode' TEMPLATE "%s" """ % (db_name, db_original_name))
+        finally:
+            cr.close()
+        return True
+
     def exp_get_progress(self, id):
         if self.actions[id]['thread'].isAlive():
 #           return openerp.modules.init_progress[db_name]

_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help   : https://help.launchpad.net/ListHelp

Reply via email to