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, "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, 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")
Beispiel #7
0
    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")
Beispiel #11
0
    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)
Beispiel #13
0
    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 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()
Beispiel #18
0
    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)
Beispiel #21
0
 def go_back(self):
     self.reset()
     WizardProgressPage.go_back(self)
Beispiel #22
0
 def go_back(self):
     self.main.plan.migrationSource.resetProgressFlags()
     self.reset(True)
     WizardProgressPage.go_back(self)
 def go_back(self):
     self.reset()
     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 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 update_status(self):
     return WizardProgressPage.update_status(self)
 def update_status(self):
     return WizardProgressPage.update_status(self)