From 02b12027741e08d08003f755491acdacaaad80f9 Mon Sep 17 00:00:00 2001 From: Alex Zaytsev Date: Wed, 16 Aug 2023 01:37:24 +1000 Subject: [PATCH 1/2] Remove ISessionFactoryImplementor parameter from TableGroupJoinHelper --- src/NHibernate/Engine/JoinSequence.cs | 2 +- src/NHibernate/Engine/TableGroupJoinHelper.cs | 2 +- src/NHibernate/Loader/JoinWalker.cs | 5 ++--- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/NHibernate/Engine/JoinSequence.cs b/src/NHibernate/Engine/JoinSequence.cs index 83c8baf0aaa..12e5f84b439 100644 --- a/src/NHibernate/Engine/JoinSequence.cs +++ b/src/NHibernate/Engine/JoinSequence.cs @@ -191,7 +191,7 @@ internal virtual JoinFragment ToJoinFragment( last = join.Joinable; } - if (rootJoinable == null && !IsThetaStyle && TableGroupJoinHelper.ProcessAsTableGroupJoin(joins, withClauses, includeAllSubclassJoins, joinFragment, alias => IsIncluded(alias), factory)) + if (rootJoinable == null && !IsThetaStyle && TableGroupJoinHelper.ProcessAsTableGroupJoin(joins, withClauses, includeAllSubclassJoins, joinFragment, alias => IsIncluded(alias))) { return joinFragment; } diff --git a/src/NHibernate/Engine/TableGroupJoinHelper.cs b/src/NHibernate/Engine/TableGroupJoinHelper.cs index 132a677fee3..c47e74cfac3 100644 --- a/src/NHibernate/Engine/TableGroupJoinHelper.cs +++ b/src/NHibernate/Engine/TableGroupJoinHelper.cs @@ -17,7 +17,7 @@ namespace NHibernate.Engine // ) ON person0_.Id = individual1_.PersonID AND individual1_1_.Deleted = @p0 internal class TableGroupJoinHelper { - internal static bool ProcessAsTableGroupJoin(IReadOnlyList tableGroupJoinables, SqlString[] withClauseFragments, bool includeAllSubclassJoins, JoinFragment joinFragment, Func isSubclassIncluded, ISessionFactoryImplementor sessionFactoryImplementor) + internal static bool ProcessAsTableGroupJoin(IReadOnlyList tableGroupJoinables, SqlString[] withClauseFragments, bool includeAllSubclassJoins, JoinFragment joinFragment, Func isSubclassIncluded) { if (!NeedsTableGroupJoin(tableGroupJoinables, withClauseFragments, includeAllSubclassJoins, isSubclassIncluded)) return false; diff --git a/src/NHibernate/Loader/JoinWalker.cs b/src/NHibernate/Loader/JoinWalker.cs index 9d28bd9d61c..bbe9d93a1bb 100644 --- a/src/NHibernate/Loader/JoinWalker.cs +++ b/src/NHibernate/Loader/JoinWalker.cs @@ -898,8 +898,7 @@ protected JoinFragment MergeOuterJoins(IList associati new[] {oj.On, entityAssociation.On, string.IsNullOrEmpty(f) ? SqlString.Empty : new SqlString(f)}, true, outerjoin, - alias => true, - factory)) + _ => true)) { index++; continue; @@ -921,7 +920,7 @@ protected JoinFragment MergeOuterJoins(IList associati } } - if (TableGroupJoinHelper.ProcessAsTableGroupJoin(new[] {oj}, new[] {oj.On, filter}, true, outerjoin, alias => true, factory)) + if (TableGroupJoinHelper.ProcessAsTableGroupJoin(new[] {oj}, new[] {oj.On, filter}, true, outerjoin, _ => true)) continue; oj.AddJoins(outerjoin); From ab7139a9f6dd40f5c9da4ec5bf647acac3faa973 Mon Sep 17 00:00:00 2001 From: Alex Zaytsev Date: Wed, 16 Aug 2023 01:46:21 +1000 Subject: [PATCH 2/2] Make DeepSource happy --- src/NHibernate/Engine/JoinSequence.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/NHibernate/Engine/JoinSequence.cs b/src/NHibernate/Engine/JoinSequence.cs index 12e5f84b439..7fcfc9eb86b 100644 --- a/src/NHibernate/Engine/JoinSequence.cs +++ b/src/NHibernate/Engine/JoinSequence.cs @@ -187,7 +187,7 @@ internal virtual JoinFragment ToJoinFragment( { Join join = joins[i]; - withClauses[i] = GetWithClause(enabledFilters, ref withClauseFragment, join, last); + withClauses[i] = GetWithClause(enabledFilters, join, last, ref withClauseFragment); last = join.Joinable; } @@ -223,7 +223,7 @@ internal virtual JoinFragment ToJoinFragment( return joinFragment; } - private SqlString GetWithClause(IDictionary enabledFilters, ref SqlString withClauseFragment, Join join, IJoinable last) + private SqlString GetWithClause(IDictionary enabledFilters, Join join, IJoinable last, ref SqlString withClauseFragment) { string on = join.AssociationType.GetOnCondition(join.Alias, factory, enabledFilters); var withConditions = new List();