| 14 | } |
| 15 | |
| 16 | std::shared_ptr<SafeConnection> SafeConnection::Open( |
| 17 | std::string_view path, OpenMode mode, ThreadMode threadMode, |
| 18 | Error* openError) |
| 19 | { |
| 20 | auto connection = Connection::Open(path, mode, threadMode); |
| 21 | |
| 22 | if (!connection) |
| 23 | { |
| 24 | if (openError) |
| 25 | *openError = connection.GetError(); |
| 26 | |
| 27 | return {}; |
| 28 | } |
| 29 | |
| 30 | return std::make_shared<SafeConnection>(Tag {}, std::move(*connection)); |
| 31 | } |
| 32 | |
| 33 | std::shared_ptr<SafeConnection> SafeConnection::Reopen( |
| 34 | const Connection& prevConnection, OpenMode mode, ThreadMode threadMode, |