|
From: <fab...@us...> - 2011-04-08 05:49:01
|
Revision: 5640
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5640&view=rev
Author: fabiomaulo
Date: 2011-04-08 05:48:54 +0000 (Fri, 08 Apr 2011)
Log Message:
-----------
Minor relax
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate/Linq/DefaultQueryProvider.cs
trunk/nhibernate/src/NHibernate/Linq/LinqExtensionMethods.cs
Modified: trunk/nhibernate/src/NHibernate/Linq/DefaultQueryProvider.cs
===================================================================
--- trunk/nhibernate/src/NHibernate/Linq/DefaultQueryProvider.cs 2011-04-08 05:38:39 UTC (rev 5639)
+++ trunk/nhibernate/src/NHibernate/Linq/DefaultQueryProvider.cs 2011-04-08 05:48:54 UTC (rev 5640)
@@ -9,8 +9,14 @@
namespace NHibernate.Linq
{
- public class DefaultQueryProvider : IQueryProvider
+ public interface INhQueryProvider : IQueryProvider
{
+ object ExecuteFuture(Expression expression);
+ void SetResultTransformerAndAdditionalCriteria(IQuery query, NhLinqExpression nhExpression, IDictionary<string, Tuple<object, IType>> parameters);
+ }
+
+ public class DefaultQueryProvider : INhQueryProvider
+ {
public DefaultQueryProvider(ISessionImplementor session)
{
Session = session;
@@ -34,14 +40,14 @@
return (TResult) Execute(expression);
}
- public IQueryable CreateQuery(Expression expression)
+ public virtual IQueryable CreateQuery(Expression expression)
{
MethodInfo m = ReflectionHelper.GetMethodDefinition((DefaultQueryProvider p) => p.CreateQuery<object>(null)).MakeGenericMethod(expression.Type.GetGenericArguments()[0]);
return (IQueryable) m.Invoke(this, new[] {expression});
}
- public IQueryable<T> CreateQuery<T>(Expression expression)
+ public virtual IQueryable<T> CreateQuery<T>(Expression expression)
{
return new NhQueryable<T>(this, expression);
}
Modified: trunk/nhibernate/src/NHibernate/Linq/LinqExtensionMethods.cs
===================================================================
--- trunk/nhibernate/src/NHibernate/Linq/LinqExtensionMethods.cs 2011-04-08 05:38:39 UTC (rev 5639)
+++ trunk/nhibernate/src/NHibernate/Linq/LinqExtensionMethods.cs 2011-04-08 05:48:54 UTC (rev 5640)
@@ -53,7 +53,7 @@
throw new NotSupportedException("You can also use the AsFuture() method on NhQueryable");
- var future = ((DefaultQueryProvider)nhQueryable.Provider).ExecuteFuture(nhQueryable.Expression);
+ var future = ((INhQueryProvider)nhQueryable.Provider).ExecuteFuture(nhQueryable.Expression);
return (IEnumerable<T>)future;
}
@@ -63,7 +63,7 @@
if (nhQueryable == null)
throw new NotSupportedException("You can also use the AsFuture() method on NhQueryable");
- var future = ((DefaultQueryProvider)nhQueryable.Provider).ExecuteFuture(nhQueryable.Expression);
+ var future = ((INhQueryProvider)nhQueryable.Provider).ExecuteFuture(nhQueryable.Expression);
if(future is DelayedEnumerator<T>)
{
return new FutureValue<T>(() => ((IEnumerable<T>) future));
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|