123
124
self.encrypted = bool(pr.encrypted)
124
125
self.info_set = True
127
def set_files_changed(self):
128
mf = self.get_manifest()
129
self.files_changed = mf.get_files_changed()
126
131
def set_manifest(self, remote_filename):
128
133
Add local and remote manifest filenames to backup set
272
279
return self.end_time
273
280
assert 0, "Neither self.time nor self.end_time set"
282
def get_files_changed(self):
283
return self.files_changed
275
285
def __len__(self):
277
287
Return the number of volumes in the set
1153
1163
old_sets = filter(lambda s: s.get_time() < t, chain.get_all_sets())
1154
1164
result_sets.extend(old_sets)
1155
1165
return self.sort_sets(result_sets)
1167
def get_file_changed_record(self, filepath):
1169
Returns time line of specified file changed
1171
if not self.matched_chain_pair:
1174
all_backup_set = self.matched_chain_pair[1].get_all_sets()
1175
specified_file_backup_set = []
1176
specified_file_backup_type = []
1178
for bs in all_backup_set:
1179
filelist = [fileinfo[1] for fileinfo in bs.get_files_changed()]
1180
if filepath in filelist:
1181
specified_file_backup_set.append(bs)
1182
index = filelist.index(filepath)
1183
specified_file_backup_type.append(bs.get_files_changed()[index][0])
1185
return FileChangedStatus(filepath, list(zip(specified_file_backup_type, specified_file_backup_set)))
1188
class FileChangedStatus:
1189
def __init__(self, filepath, fileinfo_list):
1190
self.filepath = filepath
1191
self.fileinfo_list = fileinfo_list
1193
def __unicode__(self):
1194
set_schema = "%20s %30s %20s"
1195
l = ["-------------------------",
1196
_("File: %s") % (self.filepath),
1197
_("Total number of backup: %d") % len(self.fileinfo_list),
1198
set_schema % (_("Type of backup set:"), _("Time:"), _("Type of file change:"))]
1200
for s in self.fileinfo_list:
1206
type = _("Incremental")
1207
l.append(set_schema % (type, dup_time.timetopretty(backup_set.get_time()), backup_type.title()))
1209
l.append("-------------------------")