#include "storage/browser/blob/view_blob_internals_job.h"
#include <stddef.h>
#include <stdint.h>
#include <sstream>
#include "base/compiler_specific.h"
#include "base/format_macros.h"
#include "base/functional/bind.h"
#include "base/i18n/number_formatting.h"
#include "base/i18n/time_formatting.h"
#include "base/location.h"
#include "base/notreached.h"
#include "base/strings/escape.h"
#include "base/strings/string_number_conversions.h"
#include "base/strings/string_util.h"
#include "base/strings/utf_string_conversions.h"
#include "base/task/single_thread_task_runner.h"
#include "net/base/net_errors.h"
#include "storage/browser/blob/blob_data_item.h"
#include "storage/browser/blob/blob_entry.h"
#include "storage/browser/blob/blob_storage_constants.h"
#include "storage/browser/blob/blob_storage_context.h"
#include "storage/browser/blob/blob_storage_registry.h"
#include "storage/browser/blob/shareable_blob_data_item.h"
namespace storage {
namespace {
const char kEmptyBlobStorageMessage[] = …;
const char kContentType[] = …;
const char kContentDisposition[] = …;
const char kCount[] = …;
const char kIndex[] = …;
const char kType[] = …;
const char kPath[] = …;
const char kURL[] = …;
const char kModificationTime[] = …;
const char kOffset[] = …;
const char kLength[] = …;
const char kRefcount[] = …;
const char kStatus[] = …;
void StartHTML(std::string* out) { … }
std::string StatusToString(BlobStatus status) { … }
void EndHTML(std::string* out) { … }
void AddHTMLBoldText(const std::string& text, std::string* out) { … }
void StartHTMLList(std::string* out) { … }
void EndHTMLList(std::string* out) { … }
void AddHTMLListItem(const std::string& element_title,
const std::string& element_data,
std::string* out) { … }
}
std::string ViewBlobInternalsJob::GenerateHTML(
BlobStorageContext* blob_storage_context) { … }
void ViewBlobInternalsJob::GenerateHTMLForBlobData(
const BlobEntry& blob_data,
const std::string& content_type,
const std::string& content_disposition,
size_t refcount,
std::string* out) { … }
}