Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Enable setting of the logging related SQLiteModule properties via the connection flags. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
7c20d612a1dd5050993377e9d1b5f323 |
User & Date: | mistachkin 2013-07-02 07:07:50.349 |
Context
2013-07-02
| ||
07:18 | Re-organize the code region for the private static helper methods of the SQLiteModule class. check-in: 7bc24ee762 user: mistachkin tags: trunk | |
07:07 | Enable setting of the logging related SQLiteModule properties via the connection flags. check-in: 7c20d612a1 user: mistachkin tags: trunk | |
2013-07-01
| ||
18:22 | In the SQLiteFunction class, check if the database connection is open prior to attempting to call the Cancel method. Add NoFunctions connection flag to skip binding functions registered in the application domain. Fixes and adjustments to comments. Add several data-types for compatibility purposes. Fix for [fe50b8c2e8]. check-in: dff9a878dd user: mistachkin tags: trunk | |
Changes
Changes to System.Data.SQLite/SQLite3.cs.
︙ | ︙ | |||
1654 1655 1656 1657 1658 1659 1660 | /// <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> | > > > | > > > > > > | 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 | /// <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> /// <param name="flags"> /// The flags for the associated <see cref="SQLiteConnection" /> object instance. /// </param> internal override void CreateModule(SQLiteModule module, SQLiteConnectionFlags flags) { if (module == null) throw new ArgumentNullException("module"); if ((flags & SQLiteConnectionFlags.NoLogModule) != SQLiteConnectionFlags.NoLogModule) { module.LogErrors = ((flags & SQLiteConnectionFlags.LogModuleError) == SQLiteConnectionFlags.LogModuleError); module.LogExceptions = ((flags & SQLiteConnectionFlags.LogModuleException) == SQLiteConnectionFlags.LogModuleException); } if (_sql == null) throw new SQLiteException("connection has an invalid handle"); SetLoadExtension(true); LoadExtension(UnsafeNativeMethods.SQLITE_DLL, "sqlite3_vtshim_init"); |
︙ | ︙ | |||
1727 1728 1729 1730 1731 1732 1733 | /// 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> | > > > | | 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 | /// 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> /// <param name="flags"> /// The flags for the associated <see cref="SQLiteConnection" /> object instance. /// </param> internal override void DisposeModule(SQLiteModule module, SQLiteConnectionFlags flags) { if (module == null) throw new ArgumentNullException("module"); module.Dispose(); } #endif |
︙ | ︙ |
Changes to System.Data.SQLite/SQLiteBase.cs.
︙ | ︙ | |||
226 227 228 229 230 231 232 | /// <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> | > > > | > > > | | 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 | /// <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> /// <param name="flags"> /// The flags for the associated <see cref="SQLiteConnection" /> object instance. /// </param> internal abstract void CreateModule(SQLiteModule module, SQLiteConnectionFlags flags); /// <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> /// <param name="flags"> /// The flags for the associated <see cref="SQLiteConnection" /> object instance. /// </param> internal abstract void DisposeModule(SQLiteModule module, SQLiteConnectionFlags flags); /// <summary> /// Calls the native SQLite core library in order to declare a virtual table /// in response to a call into the <see cref="ISQLiteNativeModule.xCreate" /> /// or <see cref="ISQLiteNativeModule.xConnect" /> virtual table methods. /// </summary> /// <param name="module"> |
︙ | ︙ | |||
907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 | /// <summary> /// Skip adding the any functions provided by other managed assemblies /// when opening the connection. /// </summary> NoFunctions = 0x800, /// <summary> /// When binding and returning column values, always treat them as though /// they were plain text (i.e. no numeric, date/time, or other conversions /// should be attempted). /// </summary> BindAndGetAllAsText = BindAllAsText | GetAllAsText, /// <summary> /// Enable all logging. /// </summary> LogAll = LogPrepare | LogPreBind | LogBind | | > > > > > > > > > > > > > > > > > > > | > | | 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 | /// <summary> /// Skip adding the any functions provided by other managed assemblies /// when opening the connection. /// </summary> NoFunctions = 0x800, /// <summary> /// Skip setting the logging related properties of the /// <see cref="SQLiteModule" /> object instance that was passed to /// the <see cref="SQLiteConnection.CreateModule" /> method. /// </summary> NoLogModule = 0x1000, /// <summary> /// Enable logging of all virtual table module errors seen by the /// <see cref="SQLiteModule.SetTableError(IntPtr,String)" /> method. /// </summary> LogModuleError = 0x2000, /// <summary> /// Enable logging of certain virtual table module exceptions that cannot /// be easily discovered via other means. /// </summary> LogModuleException = 0x4000, /// <summary> /// When binding and returning column values, always treat them as though /// they were plain text (i.e. no numeric, date/time, or other conversions /// should be attempted). /// </summary> BindAndGetAllAsText = BindAllAsText | GetAllAsText, /// <summary> /// Enable all logging. /// </summary> LogAll = LogPrepare | LogPreBind | LogBind | LogCallbackException | LogBackup | LogModuleError | LogModuleException, /// <summary> /// The default extra flags for new connections. /// </summary> Default = LogCallbackException | LogModuleException } // These are the options to the internal sqlite3_config call. internal enum SQLiteConfigOpsEnum { SQLITE_CONFIG_NONE = 0, // nil SQLITE_CONFIG_SINGLETHREAD = 1, // nil |
︙ | ︙ |
Changes to System.Data.SQLite/SQLiteConnection.cs.
︙ | ︙ | |||
1798 1799 1800 1801 1802 1803 1804 | if (_sql == null) throw new InvalidOperationException( "Database connection not valid for creating modules."); if ((_flags & SQLiteConnectionFlags.NoCreateModule) == SQLiteConnectionFlags.NoCreateModule) throw new SQLiteException("Creating modules is disabled for this database connection."); | | | 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 | if (_sql == null) throw new InvalidOperationException( "Database connection not valid for creating modules."); if ((_flags & SQLiteConnectionFlags.NoCreateModule) == SQLiteConnectionFlags.NoCreateModule) throw new SQLiteException("Creating modules is disabled for this database connection."); _sql.CreateModule(module, _flags); } #endif /// <summary> /// Parses a string containing a sequence of zero or more hexadecimal /// encoded byte values and returns the resulting byte array. The /// "0x" prefix is not allowed on the input string. |
︙ | ︙ |