IGNITE-5588 .NET: Inject resources in ScanQuery
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/d2b47591 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/d2b47591 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/d2b47591 Branch: refs/heads/ignite-2.1.2-exchange Commit: d2b47591319967264d8e0b7364494cc8208c016a Parents: f0c62ac Author: Pavel Tupitsyn <[email protected]> Authored: Mon Jun 26 17:40:41 2017 +0300 Committer: Pavel Tupitsyn <[email protected]> Committed: Mon Jun 26 17:40:41 2017 +0300 ---------------------------------------------------------------------- .../Cache/Query/CacheQueriesTest.cs | 7 +++++++ .../Impl/Cache/CacheEntryFilterHolder.cs | 13 +++++++++++++ 2 files changed, 20 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/d2b47591/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Query/CacheQueriesTest.cs ---------------------------------------------------------------------- diff --git a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Query/CacheQueriesTest.cs b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Query/CacheQueriesTest.cs index 852aa87..ee2806f 100644 --- a/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Query/CacheQueriesTest.cs +++ b/modules/platforms/dotnet/Apache.Ignite.Core.Tests/Cache/Query/CacheQueriesTest.cs @@ -30,6 +30,7 @@ namespace Apache.Ignite.Core.Tests.Cache.Query using Apache.Ignite.Core.Cache.Configuration; using Apache.Ignite.Core.Cache.Query; using Apache.Ignite.Core.Common; + using Apache.Ignite.Core.Resource; using NUnit.Framework; /// <summary> @@ -956,9 +957,15 @@ namespace Apache.Ignite.Core.Tests.Cache.Query // Error flag public bool ThrowErr { get; set; } + // Injection test + [InstanceResource] + public IIgnite Ignite { get; set; } + /** <inheritdoc /> */ public bool Invoke(ICacheEntry<int, TV> entry) { + Assert.IsNotNull(Ignite); + if (ThrowErr) throw new Exception(ErrMessage); http://git-wip-us.apache.org/repos/asf/ignite/blob/d2b47591/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheEntryFilterHolder.cs ---------------------------------------------------------------------- diff --git a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheEntryFilterHolder.cs b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheEntryFilterHolder.cs index 90db02c..779e350 100644 --- a/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheEntryFilterHolder.cs +++ b/modules/platforms/dotnet/Apache.Ignite.Core/Impl/Cache/CacheEntryFilterHolder.cs @@ -24,6 +24,7 @@ namespace Apache.Ignite.Core.Impl.Cache using Apache.Ignite.Core.Impl.Binary; using Apache.Ignite.Core.Impl.Binary.IO; using Apache.Ignite.Core.Impl.Common; + using Apache.Ignite.Core.Impl.Resource; /// <summary> /// Non-generic binary filter wrapper. @@ -60,6 +61,8 @@ namespace Apache.Ignite.Core.Impl.Cache _invoker = invoker; _marsh = marsh; _keepBinary = keepBinary; + + InjectResources(); } /// <summary> @@ -97,6 +100,16 @@ namespace Apache.Ignite.Core.Impl.Cache _marsh = reader.Marshaller; _invoker = GetInvoker(_pred); + + InjectResources(); + } + + /// <summary> + /// Injects the resources. + /// </summary> + private void InjectResources() + { + ResourceProcessor.Inject(_pred, _marsh.Ignite); } /// <summary>
