From: Kevin W. <kev...@us...> - 2004-12-31 17:25:47
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate/Driver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16811 Modified Files: DB2Driver.cs DriverBase.cs FirebirdDriver.cs IDriver.cs MySqlDataDriver.cs NDataReader.cs Log Message: fixing xml comments and letting ReSharper do reformatting Index: DriverBase.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Driver/DriverBase.cs,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** DriverBase.cs 22 Nov 2004 03:55:58 -0000 1.9 --- DriverBase.cs 31 Dec 2004 17:25:35 -0000 1.10 *************** *** 2,6 **** using System.Data; using System.Text; - using NHibernate.SqlCommand; using NHibernate.Util; --- 2,5 ---- *************** *** 13,53 **** public abstract class DriverBase : IDriver { - #region IDriver Members ! public abstract System.Type CommandType {get; } ! public abstract System.Type ConnectionType {get; } ! public virtual IDbConnection CreateConnection() { ! return (IDbConnection) Activator.CreateInstance(ConnectionType); } public virtual IDbCommand CreateCommand() { ! return (IDbCommand) Activator.CreateInstance(CommandType); } ! public abstract bool UseNamedPrefixInSql {get;} ! public abstract bool UseNamedPrefixInParameter {get;} ! public abstract string NamedPrefix {get;} ! public string FormatNameForSql(string parameterName) { ! return UseNamedPrefixInSql ? (NamedPrefix + parameterName): StringHelper.SqlParameter; } ! public string FormatNameForSql(string tableAlias, string parameterName) { ! if(!UseNamedPrefixInSql) return StringHelper.SqlParameter; ! ! if(tableAlias!=null && tableAlias.Length > 0) { return NamedPrefix + tableAlias + parameterName; } ! else { return NamedPrefix + parameterName; --- 12,72 ---- public abstract class DriverBase : IDriver { #region IDriver Members ! /// <summary></summary> ! public abstract System.Type CommandType { get; } ! /// <summary></summary> ! public abstract System.Type ConnectionType { get; } ! /// <summary></summary> ! public virtual IDbConnection CreateConnection() { ! return ( IDbConnection ) Activator.CreateInstance( ConnectionType ); } + /// <summary></summary> public virtual IDbCommand CreateCommand() { ! return ( IDbCommand ) Activator.CreateInstance( CommandType ); } ! /// <summary></summary> ! public abstract bool UseNamedPrefixInSql { get; } ! /// <summary></summary> ! public abstract bool UseNamedPrefixInParameter { get; } ! /// <summary></summary> ! public abstract string NamedPrefix { get; } ! /// <summary> ! /// ! /// </summary> ! /// <param name="parameterName"></param> ! /// <returns></returns> ! public string FormatNameForSql( string parameterName ) { ! return UseNamedPrefixInSql ? ( NamedPrefix + parameterName ) : StringHelper.SqlParameter; } ! /// <summary> ! /// ! /// </summary> ! /// <param name="tableAlias"></param> ! /// <param name="parameterName"></param> ! /// <returns></returns> ! public string FormatNameForSql( string tableAlias, string parameterName ) { ! if( !UseNamedPrefixInSql ) ! { ! return StringHelper.SqlParameter; ! } ! ! if( tableAlias != null && tableAlias.Length > 0 ) { return NamedPrefix + tableAlias + parameterName; } ! else { return NamedPrefix + parameterName; *************** *** 55,73 **** } ! public string FormatNameForParameter(string parameterName) { ! return UseNamedPrefixInParameter ? (NamedPrefix + parameterName) : parameterName; } ! public string FormatNameForParameter(string tableAlias, string parameterName) { ! if(!UseNamedPrefixInParameter) return parameterName; ! ! if(tableAlias!=null && tableAlias.Length > 0) { return NamedPrefix + tableAlias + parameterName; } ! else { return NamedPrefix + parameterName; --- 74,106 ---- } ! /// <summary> ! /// ! /// </summary> ! /// <param name="parameterName"></param> ! /// <returns></returns> ! public string FormatNameForParameter( string parameterName ) { ! return UseNamedPrefixInParameter ? ( NamedPrefix + parameterName ) : parameterName; } ! /// <summary> ! /// ! /// </summary> ! /// <param name="tableAlias"></param> ! /// <param name="parameterName"></param> ! /// <returns></returns> ! public string FormatNameForParameter( string tableAlias, string parameterName ) { ! if( !UseNamedPrefixInParameter ) ! { ! return parameterName; ! } ! ! if( tableAlias != null && tableAlias.Length > 0 ) { return NamedPrefix + tableAlias + parameterName; } ! else { return NamedPrefix + parameterName; *************** *** 75,113 **** } ! public virtual bool SupportsMultipleOpenReaders { ! get { return true;} } ! public virtual bool SupportsPreparingCommands ! { get { return true; } } ! public virtual IDbCommand GenerateCommand(Dialect.Dialect dialect, SqlString sqlString) { int paramIndex = 0; IDbCommand cmd = this.CreateCommand(); ! StringBuilder builder = new StringBuilder(sqlString.SqlParts.Length * 15); ! for(int i = 0; i < sqlString.SqlParts.Length; i++) { ! object part = sqlString.SqlParts[i]; Parameter parameter = part as Parameter; ! ! if(parameter!=null) { string paramName = "p" + paramIndex; ! builder.Append ( this.FormatNameForSql(paramName) ); ! ! IDbDataParameter dbParam = GenerateParameter(cmd, paramName, parameter, dialect); - cmd.Parameters.Add(dbParam); - paramIndex++; } ! else { ! builder.Append((string)part); } } --- 108,154 ---- } ! /// <summary></summary> ! public virtual bool SupportsMultipleOpenReaders { ! get { return true; } } ! /// <summary></summary> ! public virtual bool SupportsPreparingCommands ! { get { return true; } } ! /// <summary> ! /// ! /// </summary> ! /// <param name="dialect"></param> ! /// <param name="sqlString"></param> ! /// <returns></returns> ! public virtual IDbCommand GenerateCommand( Dialect.Dialect dialect, SqlString sqlString ) { int paramIndex = 0; IDbCommand cmd = this.CreateCommand(); ! StringBuilder builder = new StringBuilder( sqlString.SqlParts.Length*15 ); ! for( int i = 0; i < sqlString.SqlParts.Length; i++ ) { ! object part = sqlString.SqlParts[ i ]; Parameter parameter = part as Parameter; ! ! if( parameter != null ) { string paramName = "p" + paramIndex; ! builder.Append( this.FormatNameForSql( paramName ) ); ! ! IDbDataParameter dbParam = GenerateParameter( cmd, paramName, parameter, dialect ); ! ! cmd.Parameters.Add( dbParam ); paramIndex++; } ! else { ! builder.Append( ( string ) part ); } } *************** *** 118,122 **** } ! public virtual IDbCommand GenerateCommand(Dialect.Dialect dialect, string sqlString) { IDbCommand cmd = this.CreateCommand(); --- 159,169 ---- } ! /// <summary> ! /// ! /// </summary> ! /// <param name="dialect"></param> ! /// <param name="sqlString"></param> ! /// <returns></returns> ! public virtual IDbCommand GenerateCommand( Dialect.Dialect dialect, string sqlString ) { IDbCommand cmd = this.CreateCommand(); *************** *** 140,149 **** /// those values are not set, only the DbType and ParameterName are set. /// </remarks> ! protected virtual IDbDataParameter GenerateParameter(IDbCommand command, string name, Parameter parameter, Dialect.Dialect dialect) { IDbDataParameter dbParam = command.CreateParameter(); dbParam.DbType = parameter.SqlType.DbType; ! ! dbParam.ParameterName = this.FormatNameForParameter(name); return dbParam; --- 187,196 ---- /// those values are not set, only the DbType and ParameterName are set. /// </remarks> ! protected virtual IDbDataParameter GenerateParameter( IDbCommand command, string name, Parameter parameter, Dialect.Dialect dialect ) { IDbDataParameter dbParam = command.CreateParameter(); dbParam.DbType = parameter.SqlType.DbType; ! ! dbParam.ParameterName = this.FormatNameForParameter( name ); return dbParam; *************** *** 152,154 **** #endregion } ! } --- 199,201 ---- #endregion } ! } \ No newline at end of file Index: IDriver.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Driver/IDriver.cs,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** IDriver.cs 16 Aug 2004 05:21:12 -0000 1.6 --- IDriver.cs 31 Dec 2004 17:25:35 -0000 1.7 *************** *** 1,5 **** - using System; using System.Data; - using NHibernate.SqlCommand; --- 1,3 ---- *************** *** 38,42 **** public interface IDriver { - /// <summary> /// The Type used to create an IDbConnection --- 36,39 ---- *************** *** 73,77 **** /// the <c>?</c> can be a placeholder for the parameter in the SQL statement. /// </remarks> ! bool UseNamedPrefixInSql {get;} /// <summary> --- 70,74 ---- /// the <c>?</c> can be a placeholder for the parameter in the SQL statement. /// </remarks> ! bool UseNamedPrefixInSql { get; } /// <summary> *************** *** 86,90 **** /// <code>IDbParameter param = cmd.Parameters["paramName"]</code>. /// </remarks> ! bool UseNamedPrefixInParameter {get;} /// <summary> --- 83,87 ---- /// <code>IDbParameter param = cmd.Parameters["paramName"]</code>. /// </remarks> ! bool UseNamedPrefixInParameter { get; } /// <summary> *************** *** 94,98 **** /// Sql Server uses <c>"@"</c> and Oracle uses <c>":"</c>. /// </remarks> ! string NamedPrefix {get;} /// <summary> --- 91,95 ---- /// Sql Server uses <c>"@"</c> and Oracle uses <c>":"</c>. /// </remarks> ! string NamedPrefix { get; } /// <summary> *************** *** 102,106 **** /// <param name="parameterName">The unformatted name of the parameter</param> /// <returns>A parameter formatted for an IDbCommand.CommandText</returns> ! string FormatNameForSql(string parameterName); /// <summary> --- 99,103 ---- /// <param name="parameterName">The unformatted name of the parameter</param> /// <returns>A parameter formatted for an IDbCommand.CommandText</returns> ! string FormatNameForSql( string parameterName ); /// <summary> *************** *** 111,115 **** /// <param name="parameterName">The unformatted name of the parameter</param> /// <returns>A parameter formatted for an IDbCommand.CommandText</returns> ! string FormatNameForSql(string tableAlias, string parameterName); --- 108,112 ---- /// <param name="parameterName">The unformatted name of the parameter</param> /// <returns>A parameter formatted for an IDbCommand.CommandText</returns> ! string FormatNameForSql( string tableAlias, string parameterName ); *************** *** 123,127 **** /// <param name="parameterName">The unformatted name of the parameter</param> /// <returns>A parameter formatted for an IDbParameter.</returns> ! string FormatNameForParameter(string parameterName); /// <summary> --- 120,124 ---- /// <param name="parameterName">The unformatted name of the parameter</param> /// <returns>A parameter formatted for an IDbParameter.</returns> ! string FormatNameForParameter( string parameterName ); /// <summary> *************** *** 135,140 **** /// <param name="parameterName">The unformatted name of the parameter</param> /// <returns>A parameter formatted for an IDbParameter.</returns> ! string FormatNameForParameter(string tableAlias, string parameterName); ! /// <summary> /// Does this Driver support having more than 1 open IDataReader with --- 132,137 ---- /// <param name="parameterName">The unformatted name of the parameter</param> /// <returns>A parameter formatted for an IDbParameter.</returns> ! string FormatNameForParameter( string tableAlias, string parameterName ); ! /// <summary> /// Does this Driver support having more than 1 open IDataReader with *************** *** 180,184 **** /// <param name="sqlString">The SqlString that contains the sql and parameters.</param> /// <returns>An IDbCommand with the CommandText and Parameters fully set.</returns> ! IDbCommand GenerateCommand(Dialect.Dialect dialect, SqlString sqlString); /// <summary> --- 177,181 ---- /// <param name="sqlString">The SqlString that contains the sql and parameters.</param> /// <returns>An IDbCommand with the CommandText and Parameters fully set.</returns> ! IDbCommand GenerateCommand( Dialect.Dialect dialect, SqlString sqlString ); /// <summary> *************** *** 190,198 **** /// <returns>An IDbCommand with the CommandText fully set.</returns> /// <remarks>This can not be used to build an IDbCommand that needs to contain Parameters.</remarks> ! IDbCommand GenerateCommand(Dialect.Dialect dialect, string sqlString); ! ! } ! } --- 187,193 ---- /// <returns>An IDbCommand with the CommandText fully set.</returns> /// <remarks>This can not be used to build an IDbCommand that needs to contain Parameters.</remarks> ! IDbCommand GenerateCommand( Dialect.Dialect dialect, string sqlString ); } ! } \ No newline at end of file Index: NDataReader.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Driver/NDataReader.cs,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** NDataReader.cs 8 Nov 2004 00:18:06 -0000 1.4 --- NDataReader.cs 31 Dec 2004 17:25:35 -0000 1.5 *************** *** 3,9 **** using System.Data; ! namespace NHibernate.Driver { - /// <summary> /// Some Data Providers (ie - SqlClient) do not support Multiple Active Result Sets (MARS). --- 3,8 ---- using System.Data; [...1000 lines suppressed...] ! /// ! /// </summary> ! /// <param name="rowIndex"></param> ! /// <param name="values"></param> ! /// <returns></returns> ! public int GetValues( int rowIndex, object[ ] values ) { ! Array.Copy( records[ rowIndex ], 0, values, 0, colCount ); return colCount; } ! /// <summary></summary> ! public int RowCount { ! get { return records.Length; } } ! } } ! } \ No newline at end of file Index: FirebirdDriver.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Driver/FirebirdDriver.cs,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** FirebirdDriver.cs 27 Dec 2004 02:26:13 -0000 1.4 --- FirebirdDriver.cs 31 Dec 2004 17:25:35 -0000 1.5 *************** *** 1,4 **** - using System; - namespace NHibernate.Driver { --- 1,2 ---- *************** *** 11,54 **** private System.Type commandType; public FirebirdDriver() { ! connectionType = System.Type.GetType("FirebirdSql.Data.Firebird.FbConnection, FirebirdSql.Data.Firebird"); ! commandType = System.Type.GetType("FirebirdSql.Data.Firebird.FbCommand, FirebirdSql.Data.Firebird"); ! ! if( connectionType==null || commandType==null ) { ! throw new HibernateException( ! "The IDbCommand and IDbConnection implementation in the Assembly FirebirdSql.Data could not be found. " + ! "Please ensure that the Assemblies needed to communicate with Firebird " + ! "are in the Global Assembly Cache or in a location that NHibernate " + ! "can use System.Type.GetType(string) to load the types from." ); } } public override System.Type CommandType { ! get { return commandType; } } public override System.Type ConnectionType { ! get { return connectionType; } } ! public override bool UseNamedPrefixInSql { ! get {return true;} } ! public override bool UseNamedPrefixInParameter { ! get {return true;} } ! public override string NamedPrefix { ! get {return "@";} } } ! } --- 9,58 ---- private System.Type commandType; + /// <summary></summary> public FirebirdDriver() { ! connectionType = System.Type.GetType( "FirebirdSql.Data.Firebird.FbConnection, FirebirdSql.Data.Firebird" ); ! commandType = System.Type.GetType( "FirebirdSql.Data.Firebird.FbCommand, FirebirdSql.Data.Firebird" ); ! ! if( connectionType == null || commandType == null ) { ! throw new HibernateException( ! "The IDbCommand and IDbConnection implementation in the Assembly FirebirdSql.Data could not be found. " + ! "Please ensure that the Assemblies needed to communicate with Firebird " + ! "are in the Global Assembly Cache or in a location that NHibernate " + ! "can use System.Type.GetType(string) to load the types from." ); } } + /// <summary></summary> public override System.Type CommandType { ! get { return commandType; } } + /// <summary></summary> public override System.Type ConnectionType { ! get { return connectionType; } } ! /// <summary></summary> ! public override bool UseNamedPrefixInSql { ! get { return true; } } ! /// <summary></summary> ! public override bool UseNamedPrefixInParameter { ! get { return true; } } ! /// <summary></summary> ! public override string NamedPrefix { ! get { return "@"; } } } ! } \ No newline at end of file Index: MySqlDataDriver.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Driver/MySqlDataDriver.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** MySqlDataDriver.cs 27 Dec 2004 02:26:13 -0000 1.3 --- MySqlDataDriver.cs 31 Dec 2004 17:25:35 -0000 1.4 *************** *** 1,7 **** ! using System; ! ! namespace NHibernate.Driver { - /// <summary> /// The MySqlDataDriver Driver provides a database driver for MySql. --- 1,4 ---- ! namespace NHibernate.Driver { /// <summary> /// The MySqlDataDriver Driver provides a database driver for MySql. *************** *** 24,51 **** private System.Type commandType; public MySqlDataDriver() { ! connectionType = System.Type.GetType("MySql.Data.MySqlClient.MySqlConnection, MySql.Data"); ! commandType = System.Type.GetType("MySql.Data.MySqlClient.MySqlCommand, MySql.Data"); ! if( connectionType==null || commandType==null ) { ! throw new HibernateException( ! "The IDbCommand and IDbConnection implementation in the Assembly MySql.Data could not be found. " + ! "Please ensure that the Assemblies MySql.Data.dll and ICSharpCode.SharpZipLib.dll " + ! "are in the Global Assembly Cache or in a location that NHibernate " + ! "can use System.Type.GetType(string) to load the types from." ); } } public override System.Type CommandType { ! get { return commandType; } } public override System.Type ConnectionType { ! get { return connectionType; } } --- 21,51 ---- private System.Type commandType; + /// <summary></summary> public MySqlDataDriver() { ! connectionType = System.Type.GetType( "MySql.Data.MySqlClient.MySqlConnection, MySql.Data" ); ! commandType = System.Type.GetType( "MySql.Data.MySqlClient.MySqlCommand, MySql.Data" ); ! if( connectionType == null || commandType == null ) { ! throw new HibernateException( ! "The IDbCommand and IDbConnection implementation in the Assembly MySql.Data could not be found. " + ! "Please ensure that the Assemblies MySql.Data.dll and ICSharpCode.SharpZipLib.dll " + ! "are in the Global Assembly Cache or in a location that NHibernate " + ! "can use System.Type.GetType(string) to load the types from." ); } } + /// <summary></summary> public override System.Type CommandType { ! get { return commandType; } } + /// <summary></summary> public override System.Type ConnectionType { ! get { return connectionType; } } *************** *** 54,68 **** /// </summary> /// <value><c>true</c> - MySql uses <c>?</c> in the sql.</value> ! public override bool UseNamedPrefixInSql { ! get {return true;} } ! /// <summary> ! /// ! /// </summary> ! public override bool UseNamedPrefixInParameter { ! get {return true;} } --- 54,66 ---- /// </summary> /// <value><c>true</c> - MySql uses <c>?</c> in the sql.</value> ! public override bool UseNamedPrefixInSql { ! get { return true; } } ! /// <summary></summary> ! public override bool UseNamedPrefixInParameter { ! get { return true; } } *************** *** 71,77 **** /// </summary> /// <value><c>?</c> is used to locate parameters in sql.</value> ! public override string NamedPrefix { ! get {return "?";} } --- 69,75 ---- /// </summary> /// <value><c>?</c> is used to locate parameters in sql.</value> ! public override string NamedPrefix { ! get { return "?"; } } *************** *** 83,87 **** public override bool SupportsMultipleOpenReaders { ! get { return false; } } --- 81,85 ---- public override bool SupportsMultipleOpenReaders { ! get { return false; } } *************** *** 96,98 **** } } ! } --- 94,96 ---- } } ! } \ No newline at end of file Index: DB2Driver.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Driver/DB2Driver.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** DB2Driver.cs 8 Nov 2004 00:18:06 -0000 1.1 --- DB2Driver.cs 31 Dec 2004 17:25:35 -0000 1.2 *************** *** 11,20 **** private System.Type commandType; public DB2Driver() { ! connectionType = System.Type.GetType("IBM.Data.DB2.DB2Connection, IBM.Data.DB2"); ! commandType = System.Type.GetType("IBM.Data.DB2.DB2Command, IBM.Data.DB2"); } public override System.Type CommandType { --- 11,24 ---- private System.Type commandType; + /// <summary> + /// + /// </summary> public DB2Driver() { ! connectionType = System.Type.GetType( "IBM.Data.DB2.DB2Connection, IBM.Data.DB2" ); ! commandType = System.Type.GetType( "IBM.Data.DB2.DB2Command, IBM.Data.DB2" ); } + /// <summary></summary> public override System.Type CommandType { *************** *** 22,25 **** --- 26,30 ---- } + /// <summary></summary> public override System.Type ConnectionType { *************** *** 27,49 **** } ! public override bool UseNamedPrefixInSql { get { return false; } } ! public override bool UseNamedPrefixInParameter { get { return false; } } ! public override string NamedPrefix { get { return String.Empty; } } public override bool SupportsMultipleOpenReaders { ! get { return false; } } } ! } --- 32,58 ---- } ! /// <summary></summary> ! public override bool UseNamedPrefixInSql { get { return false; } } ! /// <summary></summary> ! public override bool UseNamedPrefixInParameter { get { return false; } } ! /// <summary></summary> ! public override string NamedPrefix { get { return String.Empty; } } + /// <summary></summary> public override bool SupportsMultipleOpenReaders { ! get { return false; } } } ! } \ No newline at end of file |