From: <fab...@us...> - 2011-06-18 23:03:25
|
Revision: 5959 http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5959&view=rev Author: fabiomaulo Date: 2011-06-18 23:03:18 +0000 (Sat, 18 Jun 2011) Log Message: ----------- Removed no more needed code Modified Paths: -------------- trunk/nhibernate/src/NHibernate/Hql/Ast/ANTLR/QueryTranslatorImpl.cs trunk/nhibernate/src/NHibernate/Loader/Custom/CustomLoader.cs trunk/nhibernate/src/NHibernate/Loader/Custom/ICustomQuery.cs trunk/nhibernate/src/NHibernate/Loader/Custom/Sql/SQLCustomQuery.cs trunk/nhibernate/src/NHibernate/Loader/Custom/Sql/SQLQueryParser.cs trunk/nhibernate/src/NHibernate/NHibernate.csproj Removed Paths: ------------- trunk/nhibernate/src/NHibernate/Hql/IParameterTranslations.cs trunk/nhibernate/src/NHibernate/Param/ParameterTranslationsImpl.cs Modified: trunk/nhibernate/src/NHibernate/Hql/Ast/ANTLR/QueryTranslatorImpl.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Hql/Ast/ANTLR/QueryTranslatorImpl.cs 2011-06-18 20:05:26 UTC (rev 5958) +++ trunk/nhibernate/src/NHibernate/Hql/Ast/ANTLR/QueryTranslatorImpl.cs 2011-06-18 23:03:18 UTC (rev 5959) @@ -37,7 +37,6 @@ private QueryLoader _queryLoader; private IStatementExecutor _statementExecutor; private IStatement _sqlAst; - private ParameterTranslationsImpl _paramTranslations; private IDictionary<string, string> _tokenReplacements; private HqlSqlGenerator _generator; Deleted: trunk/nhibernate/src/NHibernate/Hql/IParameterTranslations.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Hql/IParameterTranslations.cs 2011-06-18 20:05:26 UTC (rev 5958) +++ trunk/nhibernate/src/NHibernate/Hql/IParameterTranslations.cs 2011-06-18 23:03:18 UTC (rev 5959) @@ -1,20 +0,0 @@ -using System.Collections.Generic; -using NHibernate.Type; - -namespace NHibernate.Hql -{ - public interface IParameterTranslations - { - bool SupportsOrdinalParameterMetadata { get; } - - int OrdinalParameterCount { get; } - - int GetOrdinalParameterSqlLocation(int ordinalPosition); - - IType GetOrdinalParameterExpectedType(int ordinalPosition); - - IEnumerable<string> GetNamedParameterNames(); - - IType GetNamedParameterExpectedType(string name); - } -} \ No newline at end of file Modified: trunk/nhibernate/src/NHibernate/Loader/Custom/CustomLoader.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Loader/Custom/CustomLoader.cs 2011-06-18 20:05:26 UTC (rev 5958) +++ trunk/nhibernate/src/NHibernate/Loader/Custom/CustomLoader.cs 2011-06-18 23:03:18 UTC (rev 5959) @@ -26,7 +26,6 @@ private readonly SqlString sql; private readonly ISet<string> querySpaces = new HashedSet<string>(); - private readonly IDictionary<string, object> namedParameterBindPoints; private List<IParameterSpecification> parametersSpecifications; private readonly IQueryable[] entityPersisters; @@ -47,8 +46,7 @@ { sql = customQuery.SQL; querySpaces.AddAll(customQuery.QuerySpaces); - namedParameterBindPoints = customQuery.NamedParameterBindPoints; - this.parametersSpecifications = customQuery.CollectedParametersSpecifications.ToList(); + parametersSpecifications = customQuery.CollectedParametersSpecifications.ToList(); List<IQueryable> entitypersisters = new List<IQueryable>(); List<int> entityowners = new List<int>(); @@ -347,7 +345,7 @@ public IEnumerable<string> NamedParameters { - get { return namedParameterBindPoints.Keys; } + get { return parametersSpecifications.OfType<NamedParameterSpecification>().Select(np=> np.Name ); } } public class ResultRowProcessor Modified: trunk/nhibernate/src/NHibernate/Loader/Custom/ICustomQuery.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Loader/Custom/ICustomQuery.cs 2011-06-18 20:05:26 UTC (rev 5958) +++ trunk/nhibernate/src/NHibernate/Loader/Custom/ICustomQuery.cs 2011-06-18 23:03:18 UTC (rev 5959) @@ -22,22 +22,6 @@ /// </summary> ISet<string> QuerySpaces { get; } - /// <summary> - /// A map representing positions within the supplied <see cref="SQL"/> query to - /// which we need to bind named parameters. - /// </summary> - /// <remarks> - /// Optional, may return null if no named parameters. - /// The structure of the returned map (if one) as follows: - /// <ol> - /// <li>The keys into the map are the named parameter names</li> - /// <li>The corresponding value is either an if the - /// parameter occurs only once in the query; or a List of int if the - /// parameter occurs more than once</li> - /// </ol> - /// </remarks> - IDictionary<string, object> NamedParameterBindPoints { get; } - /// <summary> /// A collection of <see cref="IReturn"/> descriptors describing the /// ADO result set to be expected and how to map this result set. Modified: trunk/nhibernate/src/NHibernate/Loader/Custom/Sql/SQLCustomQuery.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Loader/Custom/Sql/SQLCustomQuery.cs 2011-06-18 20:05:26 UTC (rev 5958) +++ trunk/nhibernate/src/NHibernate/Loader/Custom/Sql/SQLCustomQuery.cs 2011-06-18 23:03:18 UTC (rev 5959) @@ -19,7 +19,6 @@ private static readonly IInternalLogger log = LoggerProvider.LoggerFor(typeof (SQLCustomQuery)); private readonly List<IReturn> customQueryReturns = new List<IReturn>(); - private readonly Dictionary<string, object> namedParameterBindPoints = new Dictionary<string, object>(); private readonly ISet<string> querySpaces = new HashedSet<string>(); private readonly SqlString sql; private List<IParameterSpecification> parametersSpecifications; @@ -33,7 +32,6 @@ SQLQueryParser parser = new SQLQueryParser(factory, sqlQuery, new ParserContext(aliasContext)); sql = parser.Process(); - ArrayHelper.AddAll(namedParameterBindPoints, parser.NamedParameters); ArrayHelper.AddAll(customQueryReturns, processor.GenerateCustomReturns(parser.QueryHasAliases)); parametersSpecifications = parser.CollectedParametersSpecifications.ToList(); @@ -55,11 +53,6 @@ get { return sql; } } - public IDictionary<string, object> NamedParameterBindPoints - { - get { return namedParameterBindPoints; } - } - public ISet<string> QuerySpaces { get { return querySpaces; } Modified: trunk/nhibernate/src/NHibernate/Loader/Custom/Sql/SQLQueryParser.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Loader/Custom/Sql/SQLQueryParser.cs 2011-06-18 20:05:26 UTC (rev 5958) +++ trunk/nhibernate/src/NHibernate/Loader/Custom/Sql/SQLQueryParser.cs 2011-06-18 23:03:18 UTC (rev 5959) @@ -28,8 +28,6 @@ private readonly string originalQueryString; private readonly IParserContext context; - private readonly Dictionary<string, object> namedParameters = new Dictionary<string, object>(); - private long aliasesFound; private IEnumerable<IParameterSpecification> parametersSpecifications; @@ -40,11 +38,6 @@ this.context = context; } - public IDictionary<string, object> NamedParameters - { - get { return namedParameters; } - } - public bool QueryHasAliases { get { return aliasesFound > 0; } @@ -253,11 +246,6 @@ var recognizer = new ParameterSubstitutionRecognizer(factory); ParameterParser.Parse(sqlString, recognizer); parametersSpecifications = recognizer.ParametersSpecifications.ToList(); - namedParameters.Clear(); - foreach (KeyValuePair<string, object> de in recognizer.namedParameterBindPoints) - { - namedParameters.Add(de.Key, de.Value); - } return recognizer.result.ToSqlString(); } @@ -266,7 +254,6 @@ { private readonly ISessionFactoryImplementor factory; internal SqlStringBuilder result = new SqlStringBuilder(); - internal Dictionary<string, object> namedParameterBindPoints = new Dictionary<string, object>(); internal int parameterCount = 0; private readonly List<IParameterSpecification> parametersSpecifications = new List<IParameterSpecification>(); private int positionalParameterCount; @@ -301,7 +288,6 @@ public void NamedParameter(string name, int position) { - AddNamedParameter(name); var paramSpec = new NamedParameterSpecification(1, position, name); var parameter = Parameter.Placeholder; parameter.BackTrack = paramSpec.GetIdsForBackTrack(factory).First(); @@ -323,27 +309,6 @@ { result.Add(sqlPart); } - - private void AddNamedParameter(string name) - { - int loc = parameterCount++; - object o; - if (!namedParameterBindPoints.TryGetValue(name, out o)) - { - namedParameterBindPoints[name] = loc; - } - else if (o is int) - { - List<int> list = new List<int>(4); - list.Add((int) o); - list.Add(loc); - namedParameterBindPoints[name] = list; - } - else - { - ((IList) o).Add(loc); - } - } } } } Modified: trunk/nhibernate/src/NHibernate/NHibernate.csproj =================================================================== --- trunk/nhibernate/src/NHibernate/NHibernate.csproj 2011-06-18 20:05:26 UTC (rev 5958) +++ trunk/nhibernate/src/NHibernate/NHibernate.csproj 2011-06-18 23:03:18 UTC (rev 5959) @@ -1007,7 +1007,6 @@ <Compile Include="Param\IExplicitParameterSpecification.cs" /> <Compile Include="Param\IParameterSpecification.cs" /> <Compile Include="Param\NamedParameterSpecification.cs" /> - <Compile Include="Param\ParameterTranslationsImpl.cs" /> <Compile Include="Param\PositionalParameterSpecification.cs" /> <Compile Include="Hql\Ast\ANTLR\QuerySyntaxException.cs" /> <Compile Include="Hql\Ast\ANTLR\QueryTranslatorImpl.cs" /> @@ -1520,7 +1519,6 @@ <Compile Include="Criterion\IsNotEmptyExpression.cs" /> <Compile Include="Hql\HolderInstantiator.cs" /> <Compile Include="Hql\IFilterTranslator.cs" /> - <Compile Include="Hql\IParameterTranslations.cs" /> <Compile Include="Hql\IQueryTranslator.cs" /> <Compile Include="Hql\IQueryTranslatorFactory.cs" /> <Compile Include="Hql\NameGenerator.cs" /> Deleted: trunk/nhibernate/src/NHibernate/Param/ParameterTranslationsImpl.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Param/ParameterTranslationsImpl.cs 2011-06-18 20:05:26 UTC (rev 5958) +++ trunk/nhibernate/src/NHibernate/Param/ParameterTranslationsImpl.cs 2011-06-18 23:03:18 UTC (rev 5959) @@ -1,143 +0,0 @@ -using System; -using System.Collections.Generic; -using NHibernate.Engine; -using NHibernate.Hql; -using NHibernate.Type; -using NHibernate.Util; - -namespace NHibernate.Param -{ - /// <summary> - /// Defines the information available for parameters encountered during - /// query translation through the antlr-based parser. - /// Author: Steve Ebersole - /// Ported by: Steve Strong - /// </summary> - public class ParameterTranslationsImpl : IParameterTranslations - { - private readonly Dictionary<string, ParameterInfo> _namedParameters; - private readonly ParameterInfo[] _ordinalParameters; - - public ParameterTranslationsImpl(IEnumerable<IParameterSpecification> parameterSpecifications) - { - List<ParameterInfo> ordinalParameterList = new List<ParameterInfo>(); - NullableDictionary<string, NamedParamTempHolder> namedParameterMap = new NullableDictionary<string, NamedParamTempHolder>(); - - int i = 0; - foreach (IParameterSpecification spec in parameterSpecifications) - { - if ( spec is PositionalParameterSpecification) - { - PositionalParameterSpecification ordinalSpec = ( PositionalParameterSpecification ) spec; - ordinalParameterList.Add( new ParameterInfo( i, ordinalSpec.ExpectedType) ); - } - else if ( spec is NamedParameterSpecification ) - { - NamedParameterSpecification namedSpec = ( NamedParameterSpecification ) spec; - NamedParamTempHolder paramHolder = namedParameterMap[namedSpec.Name]; - if ( paramHolder == null ) { - paramHolder = new NamedParamTempHolder(); - paramHolder.name = namedSpec.Name; - paramHolder.type = namedSpec.ExpectedType; - namedParameterMap.Add( namedSpec.Name, paramHolder ); - } - paramHolder.positions.Add( i ); - } - else { - // don't care about other param types here, just those explicitly user-defined... - - // Steve Strong Note: The original Java does not do this decrement; it increments i for - // every parameter type. However, within the Loader.GetParameterTypes() method, this introduces - // nulls into the paramTypeList array, which in turn causes Loader.ConvertITypesToSqlTypes() to crash - // with a null dereference. An alternative fix is to change the Loader to handle the null. I'm - // not sure which fix is the most appropriate. - // Legacy.FumTest.CompositeIDQuery() shows the bug if you remove the decrement below... - i--; - } - - i++; - } - - _ordinalParameters = ordinalParameterList.ToArray(); - _namedParameters = new Dictionary<string, ParameterInfo>(); - - foreach (NamedParamTempHolder holder in namedParameterMap.Values) - { - _namedParameters.Add(holder.name, new ParameterInfo( ArrayHelper.ToIntArray( holder.positions ), holder.type )); - } - } - - public int GetOrdinalParameterSqlLocation(int ordinalPosition) - { - return GetOrdinalParameterInfo(ordinalPosition).SqlLocations[0]; - } - - public IType GetOrdinalParameterExpectedType(int ordinalPosition) - { - return GetOrdinalParameterInfo(ordinalPosition).ExpectedType; - } - - public IEnumerable<string> GetNamedParameterNames() - { - return _namedParameters.Keys; - } - - public IType GetNamedParameterExpectedType(string name) - { - return GetNamedParameterInfo(name).ExpectedType; - } - - public bool SupportsOrdinalParameterMetadata - { - get { return true; } - } - - public int OrdinalParameterCount - { - get { return _ordinalParameters.Length; } - } - - private ParameterInfo GetOrdinalParameterInfo(int ordinalPosition) - { - // remember that ordinal parameters numbers are 1-based!!! - return _ordinalParameters[ordinalPosition - 1]; - } - - private ParameterInfo GetNamedParameterInfo(String name) - { - return _namedParameters[name]; - } - - class NamedParamTempHolder - { - internal String name; - internal IType type; - internal readonly List<int> positions = new List<int>(); - } - } - - [Serializable] - public class ParameterInfo - { - private readonly int[] sqlLocations; - - public ParameterInfo(int[] sqlPositions, IType expectedType) - { - sqlLocations = sqlPositions; - ExpectedType = expectedType; - } - - public ParameterInfo(int sqlPosition, IType expectedType) - { - sqlLocations = new[] { sqlPosition }; - ExpectedType = expectedType; - } - - public int[] SqlLocations - { - get { return sqlLocations; } - } - - public IType ExpectedType { get; private set; } - } -} \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |