// Copyright 2019 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef CONTENT_BROWSER_CACHE_STORAGE_SCOPED_WRITABLE_ENTRY_H_ #define CONTENT_BROWSER_CACHE_STORAGE_SCOPED_WRITABLE_ENTRY_H_ #include <memory> #include "net/disk_cache/disk_cache.h" namespace content { // A custom deleter that closes the entry. But if WritingCompleted() hasn't been // called, it will doom the entry before closing it. class ScopedWritableDeleter { … }; // Use this to manage disk_cache::Entry*'s that should be doomed before closing // unless told otherwise (via calling WritingCompleted on the deleter). // // Example: // ScopedWritableEntry entry(my_entry); // .. write some stuff .. // entry.get_deleter().WritingCompleted(); ScopedWritableEntry; } // namespace content #endif // CONTENT_BROWSER_CACHE_STORAGE_SCOPED_WRITABLE_ENTRY_H_