def page_activated(self, advancing): if advancing and self.main.plan.state.dataBulkTransferParams[ "tableList"]: options = self.main.plan.state.dataBulkTransferParams copy_script = options.get("GenerateCopyScript", None) bulk_copy_script = options.get("GenerateBulkCopyScript", None) self.add_task(self._prepare_copy, "Prepare information for data copy", "Prepare Information for Data Copy") if copy_script != None: self._copy_script_task = self.add_task( self._create_copy_script, "Create shell script for data copy", "Create Shell Script for Data Copy") if bulk_copy_script != None: self._bulk_copy_script_task = self.add_task( self._create_bulk_copy_script, "Create shell script for bulk data copy", "Create Shell Script for Bulk Data Copy") if options.get("LiveDataCopy", False) or options.get( "GenerateDumpScript", False): self._migrate_task1 = self.add_threaded_task( self._count_rows, "Determine number of rows to copy", "Determine number of rows to copy") self._migrate_task2 = self.add_threaded_task( self._migrate_data, "Copy data to target RDBMS", "Copy data to target RDBMS") self._migrating_data = False self._progress_per_table = {} if options.get("LiveDataCopy", False): source_password = self.main.plan.migrationSource.password if source_password is None: source_password = request_password( self.main.plan.migrationSource.connection) target_password = self.main.plan.migrationTarget.password if target_password is None: if self.main.plan.migrationTarget.connection.hostIdentifier == self.main.plan.migrationSource.connection.hostIdentifier: if self.main.plan.migrationTarget.connection.parameterValues[ 'userName'] == self.main.plan.migrationSource.connection.parameterValues[ 'userName']: target_password = source_password if target_password is None: target_password = request_password( self.main.plan.migrationTarget.connection) else: source_password = None target_password = None self._transferer = DataMigrator( self, self.main.plan.state.dataBulkTransferParams, self.main.plan.migrationSource.connection, source_password, self.main.plan.migrationTarget.connection, target_password) self._transferer.copytable_path = self.main.plan.wbcopytables_path_bin WizardProgressPage.page_activated(self, advancing)
def __init__(self, owner): WizardProgressPage.__init__(self, owner, "Import Data") self.add_task(self.prepare_import, "Prepare import") self.add_threaded_task(self.start_import, "Import data file") self.importer_time = None self.importer = None
def __init__(self, main): WizardProgressPage.__init__(self, main, "Create Schemas", description="""The SQL scripts generated for the migrated schema objects will now be executed in the target database. You can monitor execution in the logs. If there are errors you may correct them in the next step. Table data will be migrated at a later step.""") self._autostart = True main.add_wizard_page(self, "ObjectMigration", "Create Schemas")
def __init__(self, owner): WizardProgressPage.__init__(self, owner, "Export Data") self.add_task(self.prepare_export, "Prepare Export") self.add_threaded_task(self.start_export, "Export data to file") self.module = None self.stop = None self.export_time = None
def __init__(self, main): WizardProgressPage.__init__(self, main, "Fetch Schema List", description=PAGE_DESCRIPTION) self.add_task(self.task_connect, "Connect to source DBMS") self.add_task(self.task_test_target, "Check target DBMS connection") self.add_threaded_task(self.task_fetch_schemata, "Retrieve schema list from source") self.main.add_wizard_page(self, "SourceTarget", "Fetch Schemata List")
def __init__(self, main): WizardProgressPage.__init__(self, main, "Reverse Engineer Source", description="""Selected schema metadata will now be fetched from the source RDBMS and reverse engineered so that its structure can be determined.""") self.add_task(self.task_connect, "Connect to source DBMS") self.add_threaded_task(self.task_reveng, "Reverse engineer selected schemata") self.add_task(self.task_post_processing, "Post-processing of reverse engineered schemata") self.main.add_wizard_page(self, "SourceTarget", "Reverse Engineer Source")
def __init__(self, main): WizardProgressPage.__init__(self, main, "Fetch Schema List", description=PAGE_DESCRIPTION) self._autostart = True self.add_task(self.task_connect, "Connect to source DBMS") self.add_task(self.task_test_target, "Check target DBMS connection") self.add_threaded_task(self.task_fetch_schemata, "Retrieve schema list from source") self.main.add_wizard_page(self, "SourceTarget", "Fetch Schemas List")
def __init__(self, main): WizardProgressPage.__init__(self, main, "Bulk Data Transfer", use_private_message_handling=True) self.main.add_wizard_page(self, "DataMigration", "Bulk Data Transfer") self.add_task(self._prepare_copy, "Prepare information for data copy") self._copy_script_task = self.add_task(self._create_copy_script, "Create shell script for data copy") self._migrate_task1 = self.add_threaded_task(self._count_rows, "Determine number of rows to copy") self._migrate_task2 = self.add_threaded_task(self._migrate_data, "Copy data to target RDBMS")
def __init__(self, main): WizardProgressPage.__init__(self, main, "Migration", description="""Reverse engineered objects from the source RDBMS will now be automatically converted into MySQL compatible objects. Default datatype and default column value mappings will be used. You will be able to review and edit generated objects and column definitions in the Manual Editing step.""") self.add_threaded_task(self.task_migrate, "Migrate Selected Objects") self.add_threaded_task(self.task_generate_sql, "Generate SQL CREATE Statements") self.main.add_wizard_page(self, "ObjectMigration", "Migration")
def __init__(self, main): WizardProgressPage.__init__(self, main, "Migration", description="""Reverse engineered objects from the source RDBMS will now be automatically converted into MySQL compatible objects. Default datatype and default column value mappings will be used. You will be able to review and edit generated objects and column definitions in the Manual Editing step.""") self._autostart = True self.add_threaded_task(self.task_migrate, "Migrate Selected Objects", "Migrate Selected Objects") self.add_threaded_task(self.task_generate_sql, "Generate SQL CREATE Statements", "Generate SQL CREATE Statements") self.main.add_wizard_page(self, "ObjectMigration", "Migration")
def page_activated(self, advancing): if advancing: options = self.main.plan.state.dataBulkTransferParams copy_script = options.get("GenerateCopyScript", None) bulk_copy_script = options.get("GenerateBulkCopyScript", None) self.add_task(self._prepare_copy, "Prepare information for data copy") if copy_script != None: self._copy_script_task = self.add_task(self._create_copy_script, "Create shell script for data copy") if bulk_copy_script != None: self._bulk_copy_script_task = self.add_task( self._create_bulk_copy_script, "Create shell script for bulk data copy" ) if options.get("LiveDataCopy", False) or options.get("GenerateDumpScript", False): self._migrate_task1 = self.add_threaded_task(self._count_rows, "Determine number of rows to copy") self._migrate_task2 = self.add_threaded_task(self._migrate_data, "Copy data to target RDBMS") self._migrating_data = False self._progress_per_table = {} if options.get("LiveDataCopy", False): source_password = self.main.plan.migrationSource.password if source_password is None: source_password = request_password(self.main.plan.migrationSource.connection) target_password = self.main.plan.migrationTarget.password if target_password is None: if ( self.main.plan.migrationTarget.connection.hostIdentifier == self.main.plan.migrationSource.connection.hostIdentifier ): if ( self.main.plan.migrationTarget.connection.parameterValues["userName"] == self.main.plan.migrationSource.connection.parameterValues["userName"] ): target_password = source_password if target_password is None: target_password = request_password(self.main.plan.migrationTarget.connection) else: source_password = None target_password = None self._transferer = DataMigrator( self, self.main.plan.state.dataBulkTransferParams, self.main.plan.migrationSource.connection, source_password, self.main.plan.migrationTarget.connection, target_password, ) self._transferer.copytable_path = self.main.plan.wbcopytables_path WizardProgressPage.page_activated(self, advancing)
def __init__(self, main): WizardProgressPage.__init__( self, main, "Create Schemas", description= """The SQL scripts generated for the migrated schema objects will now be executed in the target database. You can monitor execution in the logs. If there are errors you may correct them in the next step. Table data will be migrated at a later step.""" ) self._autostart = True main.add_wizard_page(self, "ObjectMigration", "Create Schemas")
def __init__(self, main): WizardProgressPage.__init__(self, main, "Bulk Data Transfer", use_private_message_handling=True) self.main.add_wizard_page(self, "DataMigration", "Bulk Data Transfer") self.add_task(self._prepare_copy, "Prepare information for data copy") self._copy_script_task = self.add_task( self._create_copy_script, "Create shell script for data copy") self._migrate_task1 = self.add_threaded_task( self._count_rows, "Determine number of rows to copy") self._migrate_task2 = self.add_threaded_task( self._migrate_data, "Copy data to target RDBMS")
def page_activated(self, advancing): WizardProgressPage.page_activated(self, advancing) if advancing: if self.main.plan.state.objectCreationParams.get("CreateSQLFile", ""): self._script_task.set_enabled(True) else: self._script_task.set_enabled(False) if self.main.plan.state.objectCreationParams.get("CreateInDB", True): self._db_task1.set_enabled(True) self._db_task2.set_enabled(True) self._db_task3.set_enabled(True) else: self._db_task1.set_enabled(False) self._db_task2.set_enabled(False) self._db_task3.set_enabled(False)
def __init__(self, main): WizardProgressPage.__init__(self, main, "Bulk Data Transfer", use_private_message_handling=True) self._autostart = True self._resume = False self.retry_button = mforms.newButton() self.retry_button.set_text("Retry") self.retry_button.add_clicked_callback(self.go_retry) self.retry_box = mforms.newBox(True) self.content.remove(self._detail_label) self.retry_box.add(self._detail_label, True, True) self.retry_box.add(self.retry_button, False, True) self.content.add(self.retry_box, False, False) self.retry_button.show(False) self.main.add_wizard_page(self, "DataMigration", "Bulk Data Transfer") self._tables_to_exclude = list()
def __init__(self, main): WizardProgressPage.__init__(self, main, "Bulk Data Transfer", use_private_message_handling=True) self._autostart = True self._resume = False self.retry_button = mforms.newButton() self.retry_button.set_text('Retry') self.retry_button.add_clicked_callback(self.go_retry) self.retry_box = mforms.newBox(True) self.content.remove(self._detail_label) self.retry_box.add(self._detail_label, False, True) self.retry_box.add(self.retry_button, False, True) self.content.add(self.retry_box, False, True) self.retry_button.show(False) self.main.add_wizard_page(self, "DataMigration", "Bulk Data Transfer") self._tables_to_exclude = list()
def page_activated(self, advancing): if advancing: options = self.main.plan.state.dataBulkTransferParams copy_script = options.get("GenerateCopyScript", None) self._copy_script_task.set_enabled(copy_script != None) if options.get("LiveDataCopy", False) or options.get( "GenerateDumpScript", False): self._migrate_task1.set_enabled(True) self._migrate_task2.set_enabled(True) else: self._migrate_task1.set_enabled(False) self._migrate_task2.set_enabled(False) self._migrating_data = False self._progress_per_table = {} if options.get("LiveDataCopy", False): source_password = self.main.plan.migrationSource.password if source_password is None: source_password = request_password( self.main.plan.migrationSource.connection) target_password = self.main.plan.migrationTarget.password if target_password is None: if self.main.plan.migrationTarget.connection.hostIdentifier == self.main.plan.migrationSource.connection.hostIdentifier: if self.main.plan.migrationTarget.connection.parameterValues[ 'userName'] == self.main.plan.migrationSource.connection.parameterValues[ 'userName']: target_password = source_password if target_password is None: target_password = request_password( self.main.plan.migrationTarget.connection) else: source_password = None target_password = None self._transferer = DataMigrator( self, self.main.plan.state.dataBulkTransferParams, self.main.plan.migrationSource.connection, source_password, self.main.plan.migrationTarget.connection, target_password) self._transferer.copytable_path = self.main.plan.wbcopytables_path WizardProgressPage.page_activated(self, advancing)
def page_activated(self, advancing): if advancing: options = self.main.plan.state.dataBulkTransferParams copy_script = options.get("GenerateCopyScript", None) self._copy_script_task.set_enabled(copy_script != None) if options.get("LiveDataCopy", False) or options.get("GenerateDumpScript", False): self._migrate_task1.set_enabled(True) self._migrate_task2.set_enabled(True) else: self._migrate_task1.set_enabled(False) self._migrate_task2.set_enabled(False) self._migrating_data = False self._progress_per_table = {} if options.get("LiveDataCopy", False): source_password = self.main.plan.migrationSource.password if source_password is None: source_password = request_password(self.main.plan.migrationSource.connection) target_password = self.main.plan.migrationTarget.password if target_password is None: if self.main.plan.migrationTarget.connection.hostIdentifier == self.main.plan.migrationSource.connection.hostIdentifier: if self.main.plan.migrationTarget.connection.parameterValues['userName'] == self.main.plan.migrationSource.connection.parameterValues['userName']: target_password = source_password if target_password is None: target_password = request_password(self.main.plan.migrationTarget.connection) else: source_password = None target_password = None self._transferer = DataMigrator(self, self.main.plan.state.dataBulkTransferParams, self.main.plan.migrationSource.connection, source_password, self.main.plan.migrationTarget.connection, target_password) self._transferer.copytable_path = self.main.plan.wbcopytables_path WizardProgressPage.page_activated(self, advancing)
def go_back(self): self.reset() WizardProgressPage.go_back(self)
def go_back(self): self.main.plan.migrationSource.resetProgressFlags() self.reset(True) WizardProgressPage.go_back(self)
def go_back(self): self.clear_tasks() self.reset(True) WizardProgressPage.go_back(self)
def __init__(self, main): WizardProgressPage.__init__(self, main, "Create Schemata", description="""The SQL scripts generated for the migrated schema objects will now be executed in the target database. You can monitor execution in the logs and if there are errors you may correct them in the next step. Table data will be migrated at a later step.""") main.add_wizard_page(self, "OBJECT MIGRATION", "Create Schemata")
def update_status(self): return WizardProgressPage.update_status(self)