Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Rename the SQLiteModuleBase class to SQLiteModule. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | virtualTables |
Files: | files | file ages | folders |
SHA1: |
f0ccb3cd6471384aeec6263e941ce40e |
User & Date: | mistachkin 2013-06-21 07:21:06.004 |
Context
2013-06-21
| ||
07:23 | Remove unused GetNativeModule method. check-in: e550e1282e user: mistachkin tags: virtualTables | |
07:21 | Rename the SQLiteModuleBase class to SQLiteModule. check-in: f0ccb3cd64 user: mistachkin tags: virtualTables | |
07:15 | Move string related marshalling methods to the new SQLiteString static class. check-in: 0d7f2bfcca user: mistachkin tags: virtualTables | |
Changes
Changes to System.Data.SQLite/SQLite3.cs.
︙ | ︙ | |||
82 83 84 85 86 87 88 | /// The user-defined functions registered on this connection /// </summary> protected SQLiteFunction[] _functionsArray; /// <summary> /// The modules created using this connection. /// </summary> | | | 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 | /// The user-defined functions registered on this connection /// </summary> protected SQLiteFunction[] _functionsArray; /// <summary> /// The modules created using this connection. /// </summary> protected Dictionary<string, SQLiteModule> _modules; /////////////////////////////////////////////////////////////////////////////////////////////// internal SQLite3( SQLiteDateFormats fmt, DateTimeKind kind, string fmtString, |
︙ | ︙ | |||
137 138 139 140 141 142 143 | ////////////////////////////////////// // release unmanaged resources here... ////////////////////////////////////// if (_modules != null) { | | | | 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 | ////////////////////////////////////// // release unmanaged resources here... ////////////////////////////////////// if (_modules != null) { foreach (KeyValuePair<string, SQLiteModule> pair in _modules) { SQLiteModule module = pair.Value; if (module == null) continue; module.Dispose(); } } |
︙ | ︙ | |||
1574 1575 1576 1577 1578 1579 1580 | /// <summary> /// Calls the native SQLite core library in order to create a disposable /// module containing the implementation of a virtual table. /// </summary> /// <param name="module"> /// The module object to be used when creating the native disposable module. /// </param> | | | 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 | /// <summary> /// Calls the native SQLite core library in order to create a disposable /// module containing the implementation of a virtual table. /// </summary> /// <param name="module"> /// The module object to be used when creating the native disposable module. /// </param> internal override void CreateModule(SQLiteModule module) { if (module == null) throw new ArgumentNullException("module"); if (_sql == null) throw new SQLiteException("connection has an invalid handle"); |
︙ | ︙ | |||
1599 1600 1601 1602 1603 1604 1605 | module.CreateNativeModule(); if (UnsafeNativeMethods.sqlite3_create_disposable_module( _sql, pName, ref nativeModule, IntPtr.Zero, null) != IntPtr.Zero) { if (_modules == null) | | | 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 | module.CreateNativeModule(); if (UnsafeNativeMethods.sqlite3_create_disposable_module( _sql, pName, ref nativeModule, IntPtr.Zero, null) != IntPtr.Zero) { if (_modules == null) _modules = new Dictionary<string, SQLiteModule>(); _modules.Add(module.Name, module); } else { throw new SQLiteException(SQLiteErrorCode.Error, GetLastError()); } |
︙ | ︙ | |||
1626 1627 1628 1629 1630 1631 1632 | /// Calls the native SQLite core library in order to cleanup the resources /// associated with a module containing the implementation of a virtual table. /// </summary> /// <param name="module"> /// The module object previously passed to the <see cref="CreateModule" /> /// method. /// </param> | | | 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 | /// Calls the native SQLite core library in order to cleanup the resources /// associated with a module containing the implementation of a virtual table. /// </summary> /// <param name="module"> /// The module object previously passed to the <see cref="CreateModule" /> /// method. /// </param> internal override void DisposeModule(SQLiteModule module) { if (module == null) throw new ArgumentNullException("module"); module.Dispose(); } |
︙ | ︙ | |||
1659 1660 1661 1662 1663 1664 1665 | /// Upon success, the contents of this parameter are undefined. Upon failure, /// it should contain an appropriate error message. /// </param> /// <returns> /// A standard SQLite return code. /// </returns> internal override SQLiteErrorCode DeclareVirtualTable( | | | 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 | /// Upon success, the contents of this parameter are undefined. Upon failure, /// it should contain an appropriate error message. /// </param> /// <returns> /// A standard SQLite return code. /// </returns> internal override SQLiteErrorCode DeclareVirtualTable( SQLiteModule module, string strSql, ref string error ) { if (_sql == null) { error = "connection has an invalid handle"; |
︙ | ︙ |
Changes to System.Data.SQLite/SQLiteBase.cs.
︙ | ︙ | |||
214 215 216 217 218 219 220 | /// <summary> /// Calls the native SQLite core library in order to create a disposable /// module containing the implementation of a virtual table. /// </summary> /// <param name="module"> /// The module object to be used when creating the native disposable module. /// </param> | | | | | 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 | /// <summary> /// Calls the native SQLite core library in order to create a disposable /// module containing the implementation of a virtual table. /// </summary> /// <param name="module"> /// The module object to be used when creating the native disposable module. /// </param> internal abstract void CreateModule(SQLiteModule module); /// <summary> /// Calls the native SQLite core library in order to cleanup the resources /// associated with a module containing the implementation of a virtual table. /// </summary> /// <param name="module"> /// The module object previously passed to the <see cref="CreateModule" /> /// method. /// </param> internal abstract void DisposeModule(SQLiteModule module); /// <summary> /// Calls the native SQLite core library in order to declare a virtual table /// in response to a call into the xCreate or xConnect virtual table methods. /// </summary> /// <param name="module"> /// The virtual table module that is to be responsible for the virtual table /// being declared. /// </param> /// <param name="strSql"> /// The string containing the SQL statement describing the virtual table to /// be declared. /// </param> /// <param name="error"> /// Upon success, the contents of this parameter are undefined. Upon failure, /// it should contain an appropriate error message. /// </param> /// <returns> /// A standard SQLite return code. /// </returns> internal abstract SQLiteErrorCode DeclareVirtualTable(SQLiteModule module, string strSql, ref string error); /// <summary> /// Enables or disabled extension loading by SQLite. /// </summary> /// <param name="bOnOff"> /// True to enable loading of extensions, false to disable. /// </param> |
︙ | ︙ |
Changes to System.Data.SQLite/SQLiteConnection.cs.
︙ | ︙ | |||
1729 1730 1731 1732 1733 1734 1735 | /// Creates a disposable module containing the implementation of a virtual /// table. /// </summary> /// <param name="module"> /// The module object to be used when creating the disposable module. /// </param> public void CreateModule( | | | 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 | /// Creates a disposable module containing the implementation of a virtual /// table. /// </summary> /// <param name="module"> /// The module object to be used when creating the disposable module. /// </param> public void CreateModule( SQLiteModule module ) { CheckDisposed(); if (_sql == null) throw new InvalidOperationException( "Database connection not valid for creating modules."); |
︙ | ︙ |
Name change from System.Data.SQLite/SQLiteModuleBase.cs to System.Data.SQLite/SQLiteModule.cs.
︙ | ︙ | |||
1998 1999 2000 2001 2002 2003 2004 | } #endregion /////////////////////////////////////////////////////////////////////////// #region SQLiteModule Base Class /* NOT SEALED */ | | | 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 | } #endregion /////////////////////////////////////////////////////////////////////////// #region SQLiteModule Base Class /* NOT SEALED */ public abstract class SQLiteModule : ISQLiteManagedModule, /*ISQLiteNativeModule,*/ IDisposable { #region Private Constants private const double DefaultCost = double.MaxValue; #endregion /////////////////////////////////////////////////////////////////////// |
︙ | ︙ | |||
2032 2033 2034 2035 2036 2037 2038 | return CreateNativeModule(CreateNativeModuleImpl()); } #endregion /////////////////////////////////////////////////////////////////////// #region Public Constructors | | | 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 | return CreateNativeModule(CreateNativeModuleImpl()); } #endregion /////////////////////////////////////////////////////////////////////// #region Public Constructors public SQLiteModule(string name) { if (name == null) throw new ArgumentNullException("name"); this.name = name; this.tables = new Dictionary<IntPtr, SQLiteVirtualTable>(); this.cursors = new Dictionary<IntPtr, SQLiteVirtualTableCursor>(); |
︙ | ︙ | |||
3482 3483 3484 3485 3486 3487 3488 | private bool disposed; private void CheckDisposed() /* throw */ { #if THROW_ON_DISPOSED if (disposed) { throw new ObjectDisposedException( | | | 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 | private bool disposed; private void CheckDisposed() /* throw */ { #if THROW_ON_DISPOSED if (disposed) { throw new ObjectDisposedException( typeof(SQLiteModule).Name); } #endif } /////////////////////////////////////////////////////////////////////// protected virtual void Dispose(bool disposing) |
︙ | ︙ | |||
3535 3536 3537 3538 3539 3540 3541 | } } #endregion /////////////////////////////////////////////////////////////////////// #region Destructor | | | 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 | } } #endregion /////////////////////////////////////////////////////////////////////// #region Destructor ~SQLiteModule() { Dispose(false); } #endregion } #endregion } |
Changes to System.Data.SQLite/SQLiteModuleNoop.cs.
1 2 3 4 5 6 7 8 9 | /******************************************************** * ADO.NET 2.0 Data Provider for SQLite Version 3.X * Written by Joe Mistachkin (joe@mistachkin.com) * * Released to the public domain, use at your own risk! ********************************************************/ namespace System.Data.SQLite { | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | /******************************************************** * ADO.NET 2.0 Data Provider for SQLite Version 3.X * Written by Joe Mistachkin (joe@mistachkin.com) * * Released to the public domain, use at your own risk! ********************************************************/ namespace System.Data.SQLite { public class SQLiteModuleNoop : SQLiteModule { #region Public Constructors public SQLiteModuleNoop( string name ) : base(name) { |
︙ | ︙ |
Changes to System.Data.SQLite/System.Data.SQLite.Files.targets.
︙ | ︙ | |||
39 40 41 42 43 44 45 | <Compile Include="SQLiteException.cs" /> <Compile Include="SQLiteFactory.cs" /> <Compile Include="SQLiteFunction.cs" /> <Compile Include="SQLiteFunctionAttribute.cs" /> <Compile Include="SQLiteKeyReader.cs" /> <Compile Include="SQLiteLog.cs" /> <Compile Include="SQLiteMetaDataCollectionNames.cs" /> | | | 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | <Compile Include="SQLiteException.cs" /> <Compile Include="SQLiteFactory.cs" /> <Compile Include="SQLiteFunction.cs" /> <Compile Include="SQLiteFunctionAttribute.cs" /> <Compile Include="SQLiteKeyReader.cs" /> <Compile Include="SQLiteLog.cs" /> <Compile Include="SQLiteMetaDataCollectionNames.cs" /> <Compile Include="SQLiteModule.cs" /> <Compile Include="SQLiteModuleEnumerable.cs" /> <Compile Include="SQLiteModuleNoop.cs" /> <Compile Include="SQLiteParameter.cs" /> <Compile Include="SQLiteParameterCollection.cs" /> <Compile Include="SQLiteStatement.cs" /> <Compile Include="SQLiteTransaction.cs" /> <Compile Include="SR.Designer.cs"> |
︙ | ︙ |