@@ -23,6 +23,7 @@ class StorageExtension;
2323class DatabaseManager ;
2424
2525struct AttachInfo ;
26+ struct StoredDatabasePath ;
2627
2728enum class AttachedDatabaseType {
2829 READ_WRITE_DATABASE,
@@ -31,11 +32,13 @@ enum class AttachedDatabaseType {
3132 TEMP_DATABASE,
3233};
3334
35+ class DatabaseFilePathManager ;
36+
3437struct StoredDatabasePath {
35- StoredDatabasePath (DatabaseManager &manager, string path, const string &name);
38+ StoredDatabasePath (DatabaseFilePathManager &manager, string path, const string &name);
3639 ~StoredDatabasePath ();
3740
38- DatabaseManager &manager;
41+ DatabaseFilePathManager &manager;
3942 string path;
4043};
4144
@@ -55,6 +58,8 @@ struct AttachOptions {
5558 unordered_map<string, Value> options;
5659 // ! (optionally) a catalog can be provided with a default table
5760 QualifiedName default_table;
61+ // ! The stored database path (in the path manager)
62+ unique_ptr<StoredDatabasePath> stored_database_path;
5863};
5964
6065// ! The AttachedDatabase represents an attached database instance.
@@ -105,9 +110,6 @@ class AttachedDatabase : public CatalogEntry, public enable_shared_from_this<Att
105110 static bool NameIsReserved (const string &name);
106111 static string ExtractDatabaseName (const string &dbpath, FileSystem &fs);
107112
108- private:
109- void InsertDatabasePath (const string &path);
110-
111113private:
112114 DatabaseInstance &db;
113115 unique_ptr<StoredDatabasePath> stored_database_path;
0 commit comments