Skip to content

Commit 8656d25

Browse files
committed
NH-4008 - Update Npgsql driver to matching 3.2.2 version.
NH-4008 - Update SQLite driver with StateChange.
1 parent fcb00d2 commit 8656d25

File tree

10 files changed

+48
-29
lines changed

10 files changed

+48
-29
lines changed

src/NHibernate.Driver.AdoNet/NHibernate.Driver.AdoNet.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@
5555
<Compile Include="Driver\OracleDataClientDriver.cs" />
5656
<Compile Include="Driver\OracleLiteDataClientDriver.cs" />
5757
<Compile Include="Driver\ReflectionBasedDriver.cs" />
58+
<Compile Include="Driver\ReflectionDriveConnectionCommandProvider.cs" />
5859
<Compile Include="Driver\SybaseAsaClientDriver.cs" />
5960
<Compile Include="Driver\SybaseAseClientDriver.cs" />
6061
<Compile Include="Driver\SybaseSQLAnywhereDotNet4Driver.cs" />

src/NHibernate.Driver.Npgsql/NHibernate.Driver.Npgsql.csproj

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -34,15 +34,15 @@
3434
<DocumentationFile>bin\Release\NHibernate.Driver.Npgsql.xml</DocumentationFile>
3535
</PropertyGroup>
3636
<ItemGroup>
37-
<Reference Include="Mono.Security, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
38-
<HintPath>..\packages\Npgsql.2.2.7\lib\net45\Mono.Security.dll</HintPath>
39-
</Reference>
40-
<Reference Include="Npgsql, Version=2.2.7.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7, processorArchitecture=MSIL">
41-
<HintPath>..\packages\Npgsql.2.2.7\lib\net45\Npgsql.dll</HintPath>
37+
<Reference Include="Npgsql, Version=3.2.2.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7, processorArchitecture=MSIL">
38+
<HintPath>..\packages\Npgsql.3.2.2\lib\net451\Npgsql.dll</HintPath>
4239
</Reference>
4340
<Reference Include="System" />
4441
<Reference Include="System.Core" />
4542
<Reference Include="System.Data" />
43+
<Reference Include="System.Threading.Tasks.Extensions, Version=4.1.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
44+
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.3.0\lib\portable-net45+win8+wp8+wpa81\System.Threading.Tasks.Extensions.dll</HintPath>
45+
</Reference>
4646
<Reference Include="System.Xml" />
4747
</ItemGroup>
4848
<ItemGroup>
@@ -53,14 +53,14 @@
5353
<Compile Include="Driver\NpgsqlDriver.cs" />
5454
<Compile Include="Properties\AssemblyInfo.cs" />
5555
</ItemGroup>
56-
<ItemGroup>
57-
<None Include="packages.config" />
58-
</ItemGroup>
5956
<ItemGroup>
6057
<ProjectReference Include="..\NHibernate\NHibernate.csproj">
6158
<Project>{5909BFE7-93CF-4E5F-BE22-6293368AF01D}</Project>
6259
<Name>NHibernate</Name>
6360
</ProjectReference>
6461
</ItemGroup>
62+
<ItemGroup>
63+
<None Include="packages.config" />
64+
</ItemGroup>
6565
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
6666
</Project>
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<packages>
3-
<package id="Npgsql" version="2.2.7" targetFramework="net461" />
3+
<package id="Npgsql" version="3.2.2" targetFramework="net461" />
4+
<package id="System.Threading.Tasks.Extensions" version="4.3.0" targetFramework="net461" />
45
</packages>

src/NHibernate.Driver.SQLite/Driver/SQLiteDriver.cs

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
using System.Data.Common;
1+
using System.Data;
2+
using System.Data.Common;
23

34
namespace NHibernate.Driver
45
{
@@ -16,7 +17,24 @@ public class SQLiteDriver : DriverBase
1617

1718
public override DbConnection CreateConnection()
1819
{
19-
return new System.Data.SQLite.SQLiteConnection();
20+
var connection = new System.Data.SQLite.SQLiteConnection();
21+
connection.StateChange += Connection_StateChange;
22+
return connection;
23+
}
24+
25+
private static void Connection_StateChange(object sender, StateChangeEventArgs e)
26+
{
27+
if ((e.OriginalState == ConnectionState.Broken || e.OriginalState == ConnectionState.Closed || e.OriginalState == ConnectionState.Connecting) &&
28+
e.CurrentState == ConnectionState.Open)
29+
{
30+
var connection = (DbConnection)sender;
31+
using (var command = connection.CreateCommand())
32+
{
33+
// Activated foreign keys if supported by SQLite. Unknown pragmas are ignored.
34+
command.CommandText = "PRAGMA foreign_keys = ON";
35+
command.ExecuteNonQuery();
36+
}
37+
}
2038
}
2139

2240
public override DbCommand CreateCommand()

src/NHibernate.Driver.SQLite/NHibernate.Driver.SQLite.csproj

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,10 @@
3838
<ItemGroup>
3939
<Reference Include="System" />
4040
<Reference Include="System.Core" />
41+
<Reference Include="System.Data" />
4142
<Reference Include="System.Data.SQLite, Version=1.0.105.1, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
4243
<HintPath>..\packages\System.Data.SQLite.Core.1.0.105.1\lib\net46\System.Data.SQLite.dll</HintPath>
4344
</Reference>
44-
<Reference Include="System.Data" />
4545
<Reference Include="System.Xml" />
4646
</ItemGroup>
4747
<ItemGroup>
@@ -61,7 +61,6 @@
6161
<ItemGroup>
6262
<None Include="packages.config" />
6363
</ItemGroup>
64-
<ItemGroup />
6564
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
6665
<Import Project="..\packages\System.Data.SQLite.Core.1.0.105.1\build\net46\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.105.1\build\net46\System.Data.SQLite.Core.targets')" />
6766
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">

src/NHibernate.Test/NHibernate.Test.csproj

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3944,25 +3944,25 @@
39443944
<ItemGroup>
39453945
</ItemGroup>
39463946
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
3947-
<Import Project="..\packages\System.Data.SQLite.Core.1.0.105.1\build\net46\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.105.1\build\net46\System.Data.SQLite.Core.targets')" />
3948-
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
3949-
<PropertyGroup>
3950-
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
3951-
</PropertyGroup>
3952-
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.105.1\build\net46\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.105.1\build\net46\System.Data.SQLite.Core.targets'))" />
3953-
</Target>
39543947
<PropertyGroup>
39553948
<PostBuildEvent>
39563949
if not exist "$(TargetDir)x86" md "$(TargetDir)x86"
39573950
xcopy /s /y "$(SolutionDir)packages\Microsoft.SqlServer.Compact.4.0.8876.1\NativeBinaries\x86\*.*" "$(TargetDir)x86"
39583951
if not exist "$(TargetDir)amd64" md "$(TargetDir)amd64"
39593952
xcopy /s /y "$(SolutionDir)packages\Microsoft.SqlServer.Compact.4.0.8876.1\NativeBinaries\amd64\*.*" "$(TargetDir)amd64"</PostBuildEvent>
39603953
</PropertyGroup>
3954+
<Import Project="..\packages\System.Data.SQLite.Core.1.0.105.1\build\net46\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.105.1\build\net46\System.Data.SQLite.Core.targets')" />
3955+
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
3956+
<PropertyGroup>
3957+
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
3958+
</PropertyGroup>
3959+
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.105.1\build\net46\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.105.1\build\net46\System.Data.SQLite.Core.targets'))" />
3960+
</Target>
39613961
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
39623962
Other similar extension points exist, see Microsoft.Common.targets.
39633963
<Target Name="BeforeBuild">
39643964
</Target>
39653965
<Target Name="AfterBuild">
39663966
</Target>
39673967
-->
3968-
</Project>
3968+
</Project>

src/NHibernate.TestDatabaseSetup/NHibernate.TestDatabaseSetup.csproj

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -63,11 +63,8 @@
6363
<Reference Include="FirebirdSql.Data.FirebirdClient, Version=5.9.0.0, Culture=neutral, PublicKeyToken=3750abcc3150b00c, processorArchitecture=MSIL">
6464
<HintPath>..\packages\FirebirdSql.Data.FirebirdClient.5.9.0.1\lib\net452\FirebirdSql.Data.FirebirdClient.dll</HintPath>
6565
</Reference>
66-
<Reference Include="Mono.Security, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
67-
<HintPath>..\packages\Npgsql.2.2.7\lib\net45\Mono.Security.dll</HintPath>
68-
</Reference>
69-
<Reference Include="Npgsql, Version=2.2.7.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7, processorArchitecture=MSIL">
70-
<HintPath>..\packages\Npgsql.2.2.7\lib\net45\Npgsql.dll</HintPath>
66+
<Reference Include="Npgsql, Version=3.2.2.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7, processorArchitecture=MSIL">
67+
<HintPath>..\packages\Npgsql.3.2.2\lib\net451\Npgsql.dll</HintPath>
7168
</Reference>
7269
<Reference Include="nunit.framework, Version=3.6.0.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
7370
<HintPath>..\packages\NUnit.3.6.0\lib\net45\nunit.framework.dll</HintPath>
@@ -81,6 +78,9 @@
8178
<HintPath>..\packages\Microsoft.SqlServer.Compact.4.0.8876.1\lib\net40\System.Data.SqlServerCe.dll</HintPath>
8279
<Private>True</Private>
8380
</Reference>
81+
<Reference Include="System.Threading.Tasks.Extensions, Version=4.1.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
82+
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.3.0\lib\portable-net45+win8+wp8+wpa81\System.Threading.Tasks.Extensions.dll</HintPath>
83+
</Reference>
8484
</ItemGroup>
8585
<ItemGroup>
8686
<Compile Include="..\SharedAssemblyInfo.cs">

src/NHibernate.TestDatabaseSetup/packages.config

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
<packages>
33
<package id="FirebirdSql.Data.FirebirdClient" version="5.9.0.1" targetFramework="net461" />
44
<package id="Microsoft.SqlServer.Compact" version="4.0.8876.1" targetFramework="net461" />
5-
<package id="Npgsql" version="2.2.7" targetFramework="net461" />
5+
<package id="Npgsql" version="3.2.2" targetFramework="net461" />
66
<package id="NUnit" version="3.6.0" targetFramework="net461" />
7+
<package id="System.Threading.Tasks.Extensions" version="4.3.0" targetFramework="net461" />
78
</packages>

src/NHibernate/NHibernate.csproj

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -914,7 +914,6 @@
914914
<Compile Include="Dialect\SybaseASA9Dialect.cs" />
915915
<Compile Include="Driver\DbProviderFactoryDriveConnectionCommandProvider.cs" />
916916
<Compile Include="Driver\IDriveConnectionCommandProvider.cs" />
917-
<Compile Include="Driver\ReflectionDriveConnectionCommandProvider.cs" />
918917
<Compile Include="Engine\Query\CallableParser.cs" />
919918
<Compile Include="Engine\Query\QueryExpressionPlan.cs" />
920919
<Compile Include="Event\AbstractPostDatabaseOperationEvent.cs" />
@@ -1816,4 +1815,4 @@
18161815
<Error Condition="!Exists('..\packages\Antlr3.3.5.1\build\Antlr3.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Antlr3.3.5.1\build\Antlr3.targets'))" />
18171816
</Target>
18181817
<Import Project="..\packages\Antlr3.3.5.1\build\Antlr3.targets" Condition="Exists('..\packages\Antlr3.3.5.1\build\Antlr3.targets')" />
1819-
</Project>
1818+
</Project>

0 commit comments

Comments
 (0)