Example #1
0
    def __init__(self, snapshots = None):
        self.xml = gtk.glade.XML("%s/../../glade/time-slider-delete.glade" \
                                  % (os.path.dirname(__file__)))
        self.backuptodelete = []
        self.shortcircuit = []
        maindialog = self.xml.get_widget("time-slider-delete")
        self.pulsedialog = self.xml.get_widget("pulsedialog")
        self.pulsedialog.set_transient_for(maindialog)
        self.datasets = zfs.Datasets()
        if snapshots:
            maindialog.hide()
            self.shortcircuit = snapshots
        else:
            glib.idle_add(self.__init_scan)

        self.progressdialog = self.xml.get_widget("deletingdialog")
        self.progressdialog.set_transient_for(maindialog)
        self.progressbar = self.xml.get_widget("deletingprogress")
        # signal dictionary
        dic = {"on_closebutton_clicked" : gtk.main_quit,
               "on_window_delete_event" : gtk.main_quit,
               "on_snapshotmanager_delete_event" : gtk.main_quit,
               "on_fsfilterentry_changed" : self.__on_filterentry_changed,
               "on_schedfilterentry_changed" : self.__on_filterentry_changed,
               "on_typefiltercombo_changed" : self.__on_filterentry_changed,
               "on_selectbutton_clicked" : self.__on_selectbutton_clicked,
               "on_deselectbutton_clicked" : self.__on_deselectbutton_clicked,
               "on_deletebutton_clicked" : self.__on_deletebutton_clicked,
               "on_confirmcancel_clicked" : self.__on_confirmcancel_clicked,
               "on_confirmdelete_clicked" : self.__on_confirmdelete_clicked,
               "on_errordialog_response" : self.__on_errordialog_response}
        self.xml.signal_autoconnect(dic)
Example #2
0
 def __init__(self):
     threading.Thread.__init__(self)
     self.errors = []
     self.datasets = zfs.Datasets()
     self.snapshots = []
     self.rsynced_fs = []
     self.rsynced_backups = []
Example #3
0
    def __init__(self, bus):
        # Used to wake up the run() method prematurely in the event
        # of a SIGHUP/SMF refresh
        self._conditionLock = threading.Condition(threading.RLock())
        # Used when schedules are being rebuilt or examined.
        self._refreshLock = threading.Lock()
        # Indicates that cleanup is in progress when locked
        self._cleanupLock = threading.Lock()
        self._datasets = zfs.Datasets()
        # Indicates that schedules need to be rebuilt from scratch
        self._stale = True
        self._lastCleanupCheck = 0
        self._zpools = []
        self._poolstatus = {}
        self._destroyedsnaps = []

        # This is also checked during the refresh() method but we need
        # to know it sooner for instantiation of the PluginManager
        self._smf = timeslidersmf.TimeSliderSMF()
        try:
            self.verbose = self._smf.get_verbose()
        except RuntimeError, message:
            sys.stderr.write("Error determing whether debugging is enabled\n")
            self.verbose = False