// Copyright 2012 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef STORAGE_BROWSER_FILE_SYSTEM_ISOLATED_CONTEXT_H_ #define STORAGE_BROWSER_FILE_SYSTEM_ISOLATED_CONTEXT_H_ #include <map> #include <set> #include <string> #include <vector> #include "base/component_export.h" #include "base/files/file_path.h" #include "base/lazy_instance.h" #include "base/synchronization/lock.h" #include "storage/browser/file_system/mount_points.h" #include "storage/common/file_system/file_system_types.h" class GURL; namespace blink { class StorageKey; } // namespace blink namespace storage { class FileSystemURL; // Manages isolated filesystem mount points which have no well-known names // and are identified by a string 'filesystem ID', which usually just looks // like random value. // This type of filesystem can be created on the fly and may go away when it has // no references from renderers. // Files in an isolated filesystem are registered with corresponding names and // identified by a filesystem URL like: // // filesystem:<origin>/isolated/<filesystem_id>/<name>/relative/path // // Some methods of this class are virtual just for mocking. // class COMPONENT_EXPORT(STORAGE_BROWSER) IsolatedContext : public MountPoints { … }; } // namespace storage #endif // STORAGE_BROWSER_FILE_SYSTEM_ISOLATED_CONTEXT_H_