def restoreBackup(self, zip_file: bytes, meta_data: Dict[str,
                                                             str]) -> None:
        """
        Restore a back-up from a given ZipFile.
        :param zip_file: A bytes object containing the actual back-up.
        :param meta_data: A dict containing some metadata that is needed to restore the back-up correctly.
        """

        if not meta_data.get("cura_release", None):
            # If there is no "cura_release" specified in the meta data, we don't execute a backup restore.
            Logger.log(
                "w",
                "Tried to restore a backup without specifying a Cura version number."
            )
            return

        self._disableAutoSave()

        backup = Backup(self._application,
                        zip_file=zip_file,
                        meta_data=meta_data)
        restored = backup.restore()
        if restored:
            # At this point, Cura will need to restart for the changes to take effect.
            # We don't want to store the data at this point as that would override the just-restored backup.
            self._application.windowClosed(save_data=False)
Ejemplo n.º 2
0
 def createBackup(self) -> Tuple[Optional[bytes], Optional[Dict[str, str]]]:
     self._disableAutoSave()
     backup = Backup(self._application)
     backup.makeFromCurrent()
     self._enableAutoSave()
     # We don't return a Backup here because we want plugins only to interact with our API and not full objects.
     return backup.zip_file, backup.meta_data
Ejemplo n.º 3
0
 def createBackup(self) -> Tuple[Optional[bytes], Optional[Dict[str, str]]]:
     self._disableAutoSave()
     backup = Backup(self._application)
     backup.makeFromCurrent()
     self._enableAutoSave()
     # We don't return a Backup here because we want plugins only to interact with our API and not full objects.
     return backup.zip_file, backup.meta_data
Ejemplo n.º 4
0
 def createBackup(self) -> (Optional[bytes], Optional[dict]):
     """
     Get a backup of the current configuration.
     :return: A Tuple containing a ZipFile (the actual backup) and a dict containing some meta data (like version).
     """
     self._disableAutoSave()
     backup = Backup()
     backup.makeFromCurrent()
     self._enableAutoSave()
     # We don't return a Backup here because we want plugins only to interact with our API and not full objects.
     return backup.zip_file, backup.meta_data
Ejemplo n.º 5
0
    def restoreBackup(self, zip_file: bytes, meta_data: Dict[str, str]) -> None:
        if not meta_data.get("cura_release", None):
            # If there is no "cura_release" specified in the meta data, we don't execute a backup restore.
            Logger.log("w", "Tried to restore a backup without specifying a Cura version number.")
            return

        self._disableAutoSave()

        backup = Backup(self._application, zip_file = zip_file, meta_data = meta_data)
        restored = backup.restore()
        if restored:
            # At this point, Cura will need to restart for the changes to take effect.
            # We don't want to store the data at this point as that would override the just-restored backup.
            self._application.windowClosed(save_data = False)
Ejemplo n.º 6
0
    def restoreBackup(self, zip_file: bytes, meta_data: dict) -> None:
        if not meta_data.get("cura_release", None):
            # If there is no "cura_release" specified in the meta data, we don't execute a backup restore.
            Logger.log(
                "w",
                "Tried to restore a backup without specifying a Cura version number."
            )
            return

        self._disableAutoSave()

        backup = Backup(zip_file=zip_file, meta_data=meta_data)
        restored = backup.restore()
        if restored:
            # At this point, Cura will need to restart for the changes to take effect.
            # We don't want to store the data at this point as that would override the just-restored backup.
            self._application.windowClosed(save_data=False)