diff options
| author | Luke <luke.pulverenti@gmail.com> | 2016-12-13 13:42:05 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-12-13 13:42:05 -0500 |
| commit | 96e6b519b9997af1a0199142909d674c4e05dfd0 (patch) | |
| tree | 7487e85d8a425dced9ba3110ca875b5dd6a2c875 /Emby.Server.Implementations/Data/ManagedConnection.cs | |
| parent | 7faf8ca1ec04aa42477fb8dac719fb5c7c8a16c6 (diff) | |
| parent | dcd06597a7cc1d4a7829ed75e0a6b1e52fd5c10e (diff) | |
Merge pull request #2341 from MediaBrowser/dev
add missing files
Diffstat (limited to 'Emby.Server.Implementations/Data/ManagedConnection.cs')
| -rw-r--r-- | Emby.Server.Implementations/Data/ManagedConnection.cs | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/Emby.Server.Implementations/Data/ManagedConnection.cs b/Emby.Server.Implementations/Data/ManagedConnection.cs new file mode 100644 index 000000000..91a2dfdf6 --- /dev/null +++ b/Emby.Server.Implementations/Data/ManagedConnection.cs @@ -0,0 +1,82 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using SQLitePCL.pretty; + +namespace Emby.Server.Implementations.Data +{ + public class ManagedConnection : IDisposable + { + private SQLiteDatabaseConnection db; + private readonly bool _closeOnDispose; + + public ManagedConnection(SQLiteDatabaseConnection db, bool closeOnDispose) + { + this.db = db; + _closeOnDispose = closeOnDispose; + } + + public IStatement PrepareStatement(string sql) + { + return db.PrepareStatement(sql); + } + + public IEnumerable<IStatement> PrepareAll(string sql) + { + return db.PrepareAll(sql); + } + + public void ExecuteAll(string sql) + { + db.ExecuteAll(sql); + } + + public void Execute(string sql, params object[] values) + { + db.Execute(sql, values); + } + + public void RunQueries(string[] sql) + { + db.RunQueries(sql); + } + + public void RunInTransaction(Action<IDatabaseConnection> action, TransactionMode mode) + { + db.RunInTransaction(action, mode); + } + + public T RunInTransaction<T>(Func<IDatabaseConnection, T> action, TransactionMode mode) + { + return db.RunInTransaction<T>(action, mode); + } + + public IEnumerable<IReadOnlyList<IResultSetValue>> Query(string sql) + { + return db.Query(sql); + } + + public IEnumerable<IReadOnlyList<IResultSetValue>> Query(string sql, params object[] values) + { + return db.Query(sql, values); + } + + public void Close() + { + using (db) + { + + } + } + + public void Dispose() + { + if (_closeOnDispose) + { + Close(); + } + } + } +} |
