예제 #1
0
 def report_file_size_status(dump_dir, file_obj, item_status):
     filename = dump_dir.filename_public_path(file_obj)
     if exists(filename):
         size = os.path.getsize(filename)
     else:
         item_status = "missing"
         size = 0
     size = FileUtils.pretty_size(size)
     if item_status == "in-progress":
         return "<li class='file'>%s %s (written) </li>" % (file_obj.filename, size)
     elif item_status == "done":
         webpath_relative = dump_dir.web_path_relative(file_obj)
         return ("<li class='file'><a href=\"%s\">%s</a> %s</li>"
                 % (webpath_relative, file_obj.filename, size))
     else:
         return "<li class='missing'>%s</li>" % file_obj.filename
예제 #2
0
 def report_file_size_status(dump_dir, dfname, item_status):
     """
     args:
         DumpDir
         DumpFilename
         status ("in-progress", "missing", ...)
     """
     filename = dump_dir.filename_public_path(dfname)
     size = None
     if exists(filename):
         size = os.path.getsize(filename)
     elif item_status == "in-progress":
         # note that because multiple files may be produced for a single dump
         # job, some may be complete while others are still in progress.
         # therefore we check the normal name first, falling back to the
         # inprogress name.
         filename = filename + DumpFilename.INPROG
         if exists(filename):
             try:
                 size = os.path.getsize(filename)
             except Exception:
                 # yes, it might be removed in that short interval of time.
                 pass
     if size is None:
         item_status = "missing"
         size = 0
     pretty_size = FileUtils.pretty_size(size)
     if item_status == "in-progress":
         txt = "<li class='file'>%s %s (written) </li>" % (dfname.filename, pretty_size)
         json_out = {'name': dfname.filename, 'size': size}
     elif item_status == "done":
         webpath_relative = dump_dir.web_path_relative(dfname)
         txt = ("<li class='file'><a href=\"%s\">%s</a> %s</li>"
                % (webpath_relative, dfname.filename, pretty_size))
         json_out = {'name': dfname.filename, 'size': size,
                     'url': webpath_relative}
     else:
         txt = "<li class='missing'>%s</li>" % dfname.filename
         json_out = {'name': dfname.filename}
     content = {'txt': txt, 'json': json_out}
     return content