Modified:
trunk/CHANGES
trunk/mysqlclient/CompressedStream.cs
trunk/mysqlclient/MySql.Data.2005.csproj
trunk/mysqlclient/NativeDriver.cs
trunk/mysqlclient/Types/MySqlBinary.cs
trunk/mysqlclient/Types/MySqlByte.cs
trunk/mysqlclient/Types/MySqlDecimal.cs
trunk/mysqlclient/Types/MySqlDouble.cs
trunk/mysqlclient/Types/MySqlInt16.cs
trunk/mysqlclient/Types/MySqlInt32.cs
trunk/mysqlclient/Types/MySqlInt64.cs
trunk/mysqlclient/Types/MySqlSingle.cs
trunk/mysqlclient/Types/MySqlString.cs
trunk/mysqlclient/Types/MySqlTime.cs
trunk/mysqlclient/Types/MySqlUByte.cs
trunk/mysqlclient/Types/MySqlUInt16.cs
trunk/mysqlclient/Types/MySqlUInt32.cs
trunk/mysqlclient/Types/MySqlUInt64.cs
trunk/mysqlclient/Types/MySqlValue.cs
Log:
CHANGES
updated
CompressedStream
replaced use of ICSharpCode with the .NET DeflateStream class
NativeDriver
removed reference to ICSharpCode
Rest of files
removed old commented out code
Modified: trunk/CHANGES
===================================================================
--- trunk/CHANGES 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/CHANGES 2006-07-30 17:00:41 UTC (rev 287)
@@ -1,4 +1,4 @@
-- Version 5.0
+Version 5.0.0.0 (Alpha)
Bugs fixed
----------
@@ -6,19 +6,21 @@
Other changes
-------------
- Implemented intial usage advisor
- Added Async methods
- Reimplemented PacketReader/PacketWriter support into MySqlStream* classes
+ Implemented Usage Advisor
+ Added Async query methods
+ Reimplemented PacketReader/PacketWriter support into MySqlStream class
Added internal implemention of SHA1 so we don't have to distribute the OpenNetCF on mobile devices
Added usage advisor warnings for requesting column values by the wrong type
Reworked connection string classes to be simpler and faster
- Added cache for stored procedure definitions
+ Added procedure metadata caching
Added perfmon hooks for stored procedure cache hits and misses
Implemented MySqlConnectionBuilder class
Implemented MySqlClientFactory class
- Implemented necessary classes and interfaces for ADO.Net 2.0 support
+ Implemented classes and interfaces for ADO.Net 2.0 support
+ Replaced use of ICSharpCode with .NET 2.0 internal deflate support
+ Refactored test suite to test all protocols in a single pass
-x-xx-06 - Version 1.0.8
+<unreleased> - Version 1.0.8
Other changes
-------------
@@ -47,7 +49,7 @@
Bug #17106 MySql.Data.MySqlClient.CharSetMap.GetEncoding thread synchronization issue [fixed]
Bug #17736 Selecting a row with with empty date '0000-00-00' results in Read() hanging. [fixed]
-x-xx-05 - Version 1.0.7
+Version 1.0.7
Bugs fixed or addressed
-------------------------
@@ -69,7 +71,7 @@
Failure to provide parameters for out and inout values is now detected
Changed pooling code to remove issue of skipping Ping() on bogus connnections
-9-27-05 - Version 1.0.6
+Version 1.0.6
Bugs fixed or addressed
-------------------------
@@ -85,7 +87,7 @@
Added options to not reset and reconfigure connections pulled from the pool
Connections pulled from the pool that are not reset are also not pinged
-8-24-05 - Version 1.0.5
+Version 1.0.5
Bugs fixed or addressed
-------------------------
@@ -141,7 +143,7 @@
Implemented new BIT data type
Implemented Convert Zero DateTime connection option.
-1-20-05 - Version 1.0.4
+Version 1.0.4
Bug #7243 calling prepare causing exception [fixed]
Fixed another small problem with prepared statements
@@ -157,7 +159,7 @@
Bug #7436 Problem with Multiple resultsets... [fixed]
Added or filled out several more topics in the API reference documentation
-12-10-04 - Version 1.0.3-gamma
+Version 1.0.3-gamma
- Made MySQL the default named pipe name
- Now SHOW COLLATION is used upon connection to retrieve the full list of charset ids
@@ -181,7 +183,7 @@
- Added Ping method to MySqlConnection
- Changed the name of the test suite to MySql.Data.Tests.dll
-11-15-04 - Version 1.0.2-gamma
+Version 1.0.2-gamma
- Fixed problem with MySqlBinary where string values could not be used to update extended text columns
- Fixed Installation directory ignored using custom installation (Bug #6329)
@@ -198,7 +200,7 @@
- Fixed Objects not being disposed (Bug #6649)
- Provider is now using character set specified by server as default
-10-27-04 - Version 1.0.1-beta 2
+Version 1.0.1-beta 2
- Fixed BUG #5602 Possible bug in MySqlParameter(string, object) constructor
- Fixed BUG #5458 Calling GetChars on a longtext column throws an exception
@@ -239,7 +241,7 @@
- Fixed IndexOutOfBounds when reading BLOB with DataReader with GetString(index) (Bug #6230)
-09-01-04 - Version 1.0.0-beta [released]
+Version 1.0.0-beta [released]
- Fixed BUG# 3889 Thai encoding not correctly supported
- Updated many of the test cases
- Fixed problem with using compression
@@ -248,7 +250,7 @@
- Removed all of the XML comment warnings (I'll clean them up better later)
- Removed some last references to ByteFX
-08-30-04 - Version 0.9.0
+Version 0.9.0
- Added test fixture for prepared statements
- All type classes now implement a SerializeBinary method for sending their data to a PacketWriter
Modified: trunk/mysqlclient/CompressedStream.cs
===================================================================
--- trunk/mysqlclient/CompressedStream.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/CompressedStream.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -20,8 +20,12 @@
using System;
using System.IO;
+#if NET20
+using System.IO.Compression;
+#else
using ICSharpCode.SharpZipLib.Zip.Compression;
using ICSharpCode.SharpZipLib.Zip.Compression.Streams;
+#endif
using MySql.Data.Common;
namespace MySql.Data.MySqlClient
@@ -82,6 +86,7 @@
get { return baseStream.Position; }
set { baseStream.Position = value; }
}
+
#endregion
public override void Close()
@@ -121,25 +126,24 @@
private byte[] CompressData( byte[] buff, int offset, int count )
{
- MemoryStream ms = new MemoryStream();
- DeflaterOutputStream deflater;
- deflater = new DeflaterOutputStream( ms );
+ MemoryStream ms = new MemoryStream();
+ DeflateStream deflater = new DeflateStream(ms, CompressionMode.Compress);
byte[] cacheBuff = cache.GetBuffer();
byte seq = cacheBuff[3];
cacheBuff[3] = 0;
- deflater.Write( cacheBuff, 0, (int)cache.Length );
+ deflater.Write(cacheBuff, 0, (int)cache.Length);
if ( count > 0 )
- deflater.Write( buff, offset, count );
- deflater.Finish();
+ deflater.Write(buff, offset, count);
+ deflater.Flush();
cacheBuff[3] = seq;
long unCompLen = cache.Length + count;
- if ( ms.Length >= unCompLen )
+ if (ms.Length >= unCompLen)
return null;
return ms.ToArray();
}
@@ -234,13 +238,10 @@
}
}
- private void ReadCompressedBuffer( byte[] buf, int index, int compLen, int unCompLen )
+ private void ReadCompressedBuffer(byte[] buf, int index, int compLen, int unCompLen)
{
- byte[] compBuf = new byte[ compLen ];
- ReadBuffer( baseStream, compBuf, 0, compLen );
- Inflater i = new Inflater();
- i.SetInput( compBuf, 0, compLen );
- i.Inflate( buf, index, unCompLen );
+ DeflateStream stream = new DeflateStream(baseStream, CompressionMode.Decompress, true);
+ stream.Read(buf, index, unCompLen);
}
private void ReadNextPacket()
Modified: trunk/mysqlclient/MySql.Data.2005.csproj
===================================================================
--- trunk/mysqlclient/MySql.Data.2005.csproj 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/MySql.Data.2005.csproj 2006-07-30 17:00:41 UTC (rev 287)
@@ -69,10 +69,6 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
- <Reference Include="ICSharpCode.SharpZipLib, Version=0.81.0.1407, Culture=neutral, PublicKeyToken=1b03e6acf1164f73">
- <SpecificVersion>False</SpecificVersion>
- <HintPath>..\ICSharpCode.SharpZipLib.dll</HintPath>
- </Reference>
<Reference Include="System">
<Name>System</Name>
</Reference>
@@ -85,7 +81,6 @@
<Reference Include="System.Drawing">
<Name>System.Drawing</Name>
</Reference>
- <Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
Modified: trunk/mysqlclient/NativeDriver.cs
===================================================================
--- trunk/mysqlclient/NativeDriver.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/NativeDriver.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -22,8 +22,6 @@
using System.Net;
using System.Net.Sockets;
using System.IO;
-using ICSharpCode.SharpZipLib.Zip.Compression;
-using ICSharpCode.SharpZipLib.Zip.Compression.Streams;
using System.Security.Cryptography;
using MySql.Data.Common;
using System.Collections;
Modified: trunk/mysqlclient/Types/MySqlBinary.cs
===================================================================
--- trunk/mysqlclient/Types/MySqlBinary.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/Types/MySqlBinary.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -217,145 +217,5 @@
dsTable.Rows.Add(row);
}
}
-
}
-/*
- /// <summary>
- /// Summary description for MySqlBinary
- /// </summary>
- internal class MySqlBinary : MySqlValue
- {
- private byte[] mValue;
- private bool isBinary;
-
- public MySqlBinary(byte[] val, MySqlDbType type)
- {
- Value = val;
- mySqlDbType = type;
- }
-
- internal string ToString( System.Text.Encoding encoding )
- {
- return encoding.GetString( (byte[])mValue );
- }
-
- internal override void Serialize(PacketWriter writer, bool binary, object ourValue, int length)
- {
- byte[] buffToWrite = null;
-
- if (ourValue is System.Byte[])
- buffToWrite = (byte[])ourValue;
- else if (ourValue is String)
- {
- string s = (ourValue as string).Substring(0, length);
- buffToWrite = stream.Encoding.GetBytes(s);
- length = buffToWrite.Length;
- }
- else if (ourValue is Char[])
- {
- buffToWrite = stream.Encoding.GetBytes( (ourValue as char[]) );
- length = buffToWrite.Length;
- }
-
- if ( buffToWrite == null )
- throw new MySqlException( "Only byte arrays and strings can be serialized by MySqlBinary" );
-
- if (binary)
- {
- stream.WriteLength( length );
- stream.Write( buffToWrite, 0, length );
- }
- else
- {
- if ( stream.Version.isAtLeast(4,1,0))
- stream.WriteStringNoNull( "_binary " );
-
- stream.WriteByte( (byte)'\'');
- EscapeByteArray( buffToWrite, length, writer );
- stream.WriteByte((byte)'\'');
- }
- }
-
- public bool IsBinary
- {
- get { return isBinary; }
- set { isBinary = value; }
- }
-
- public byte[] Value
- {
- get { return mValue; }
- set { mValue = value; objectValue = value; }
- }
-
- private void EscapeByteArray( byte[] bytes, int length, PacketWriter writer )
- {
- System.IO.MemoryStream ms = (System.IO.MemoryStream)stream.Stream;
- ms.Capacity += (length * 2);
-
- for (int x=0; x < length; x++)
- {
- byte b = bytes[x];
- if (b == '\0')
- {
- stream.WriteByte( (byte)'\\' );
- stream.WriteByte( (byte)'0' );
- }
-
- else if (b == '\\' || b == '\'' || b == '\"')
- {
- stream.WriteByte( (byte)'\\' );
- stream.WriteByte( b );
- }
- else
- stream.WriteByte( b );
- }
- }
-
-
- internal override DbType DbType
- {
- get
- {
- if (isBinary) return DbType.Binary;
- return DbType.String;
- }
- }
-
-
- internal override Type SystemType
- {
- get { return typeof(byte[]); }
- }
-
- internal override string GetMySqlTypeName()
- {
- switch (mySqlDbType)
- {
- case MySqlDbType.TinyBlob: return "TINY_BLOB";
- case MySqlDbType.MediumBlob: return "MEDIUM_BLOB";
- case MySqlDbType.LongBlob: return "LONG_BLOB";
- case MySqlDbType.Blob:
- default:
- return "BLOB";
- }
- }
-
- internal override MySqlValue ReadValue(PacketReader reader, long length)
- {
- if (length == -1)
- length = (long)stream.GetFieldLength();
-
- byte[] newBuff = new byte[length];
- stream.Read( ref newBuff, 0, length );
- return new MySqlBinary( newBuff, mySqlDbType );
- }
-
- internal override void Skip(PacketReader reader)
- {
- long len = stream.GetFieldLength();
- stream.Skip( len );
- }
-
- }*/
}
Modified: trunk/mysqlclient/Types/MySqlByte.cs
===================================================================
--- trunk/mysqlclient/Types/MySqlByte.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/Types/MySqlByte.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -141,60 +141,4 @@
dsTable.Rows.Add(row);
}
}
-/*
- /// <summary>
- /// Summary description for MySqlByte.
- /// </summary>
- internal class MySqlByte : MySqlValue
- {
- private sbyte mValue;
-
- public MySqlByte() : base()
- {
- dbType = DbType.SByte;
- mySqlDbType = MySqlDbType.Byte;
- }
-
- internal override void Serialize(PacketWriter writer, bool binary, object value, int length)
- {
- sbyte v = Convert.ToSByte( value );
- if (binary)
- stream.WriteByte( (byte)v );
- else
- stream.WriteStringNoNull( v.ToString() );
- }
-
-
- public sbyte Value
- {
- get { return mValue; }
- set { mValue = value; objectValue = value; }
- }
-
- internal override Type SystemType
- {
- get { return typeof(SByte); }
- }
-
- internal override string GetMySqlTypeName()
- {
- return "TINYINT";
- }
-
- internal override MySqlValue ReadValue(PacketReader reader, long length)
- {
- if (length == -1)
- Value = (sbyte)stream.ReadByte();
- else
- Value = SByte.Parse( stream.ReadString( length ) );
- return this;
- }
-
- internal override void Skip(PacketReader reader)
- {
- stream.ReadByte();
- }
-*/
-
- //}
}
Modified: trunk/mysqlclient/Types/MySqlDecimal.cs
===================================================================
--- trunk/mysqlclient/Types/MySqlDecimal.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/Types/MySqlDecimal.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -166,84 +166,4 @@
dsTable.Rows.Add(row);
}
}
-/*
- /// <summary>
- /// Summary description for MySqlDecimal.
- /// </summary>
- internal class MySqlDecimal : MySqlValue
- {
- private byte precision;
- private byte scale;
- private Decimal mValue;
-
- public MySqlDecimal() : base()
- {
- dbType = DbType.Decimal;
- mySqlDbType = MySqlDbType.Decimal;
- }
-
- public byte Precision
- {
- get { return precision; }
- set { precision = value; }
- }
-
- public byte Scale
- {
- get { return scale; }
- set { scale = value; }
- }
-
- internal override void Serialize(PacketWriter writer, bool binary, object value, int length)
- {
- Decimal v = Convert.ToDecimal( value );
- if (binary)
- {
- stream.WriteLenString( v.ToString(numberFormat) );
- }
- else
- {
- stream.WriteStringNoNull(v.ToString(numberFormat));
- }
- }
-
-
- public Decimal Value
- {
- get { return mValue; }
- set { mValue = value; objectValue = value; }
- }
-
- internal override Type SystemType
- {
- get { return typeof(Decimal); }
- }
-
- internal override string GetMySqlTypeName()
- {
- return "DECIMAL";
- }
-
- internal override MySqlValue ReadValue(PacketReader reader, long length)
- {
- if (length == -1)
- {
- string value = stream.ReadLenString();
- Value = Decimal.Parse( value, numberFormat );
- }
- else
- {
- string value = stream.ReadString( length );
- Value = Decimal.Parse( value, numberFormat );
- }
- return this;
- }
-
- internal override void Skip(PacketReader reader)
- {
- long len = stream.GetFieldLength();
- stream.Skip( len );
- }
-
- }*/
}
Modified: trunk/mysqlclient/Types/MySqlDouble.cs
===================================================================
--- trunk/mysqlclient/Types/MySqlDouble.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/Types/MySqlDouble.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -144,89 +144,5 @@
row["NativeDataType"] = null;
dsTable.Rows.Add(row);
}
-
}
-/*
- /// <summary>
- /// Summary description for MySqlDouble.
- /// </summary>
- internal class MySqlDouble : MySqlValue
- {
- private double mValue;
-
- public MySqlDouble() : base()
- {
- dbType = DbType.Double;
- mySqlDbType = MySqlDbType.Double;
- }
-
- internal override void Serialize(PacketWriter writer, bool binary, object value, int length)
- {
- double v = Convert.ToDouble(value);
- if (binary)
- stream.Write( BitConverter.GetBytes( v ) );
- else
- stream.WriteStringNoNull( v.ToString("R", numberFormat) );
- }
-
- public static double MaxValue
- {
- get { return double.Parse(double.MaxValue.ToString("R")); }
- }
-
- public static double MinValue
- {
- get { return double.Parse(double.MinValue.ToString("R")); }
- }
-
- public double Value
- {
- get { return mValue; }
- set { mValue = value; objectValue = value; }
- }
-
- internal override Type SystemType
- {
- get { return typeof(Double); }
- }
-
- internal override string GetMySqlTypeName()
- {
- return "DOUBLE";
- }
-
- internal override MySqlValue ReadValue(PacketReader reader, long length)
- {
- if (length == -1)
- {
- byte[] b = new byte[8];
- stream.Read( ref b, 0, 8 );
- Value = BitConverter.ToDouble( b, 0 );
- }
- else
- {
- string value = stream.ReadString( length );
- Value = Parse(value);
- }
- return this;
- }
-
- private double Parse(string s)
- {
- double result = 0;
- if (Double.TryParse(s, NumberStyles.Float|NumberStyles.AllowThousands, numberFormat, out result))
- return result;
- s = s.ToLower();
- bool isNeg = s.StartsWith(numberFormat.NegativeSign);
-
- if (s.IndexOf("e+") != -1)
- return isNeg ? MinValue : MaxValue;
- return 0;
- }
-
- internal override void Skip(PacketReader reader)
- {
- stream.Skip( 8 );
- }
- }*/
}
Modified: trunk/mysqlclient/Types/MySqlInt16.cs
===================================================================
--- trunk/mysqlclient/Types/MySqlInt16.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/Types/MySqlInt16.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -139,63 +139,4 @@
dsTable.Rows.Add(row);
}
}
-/*
- /// <summary>
- /// Summary description for MySqlInt16.
- /// </summary>
- internal class MySqlInt16 : MySqlValue
- {
- private short mValue;
-
- public MySqlInt16() : base()
- {
- dbType = DbType.Int16;
- mySqlDbType = MySqlDbType.Int16;
- }
-
- internal override void Serialize(PacketWriter writer, bool binary, object value, int length)
- {
- short v = Convert.ToInt16(value);
- if (binary)
- stream.Write(BitConverter.GetBytes(v));
- else
- stream.WriteStringNoNull(v.ToString(numberFormat));
- }
-
-
- public short Value
- {
- get { return mValue; }
- set { mValue = value; objectValue = value; }
- }
-
- internal override Type SystemType
- {
- get { return typeof(Int16); }
- }
-
- internal override string GetMySqlTypeName()
- {
- return "SMALLINT";
- }
-
- internal override MySqlValue ReadValue(PacketReader reader, long length)
- {
- if (length == -1)
- {
- Value = (short)stream.ReadInteger(2);
- }
- else
- {
- string value = stream.ReadString(length);
- Value = Int16.Parse(value, numberFormat);
- }
- return this;
- }
-
- internal override void Skip(PacketReader reader)
- {
- stream.Skip( 2 );
- }
- }*/
}
Modified: trunk/mysqlclient/Types/MySqlInt32.cs
===================================================================
--- trunk/mysqlclient/Types/MySqlInt32.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/Types/MySqlInt32.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -152,69 +152,4 @@
}
}
}
-
-/*
-
- /// <summary>
- /// Summary description for MySqlInt32.
- /// </summary>
- public class MySqlInt32Old : MySqlValue
- {
- private int mValue;
-
- public MySqlInt32Old(MySqlDbType type) : base()
- {
- dbType = DbType.Int32;
- mySqlDbType = type;
- }
-
- internal override void Serialize(PacketWriter writer, bool binary, object value, int length)
- {
- int v = Convert.ToInt32(value);
- if (binary)
- stream.Write(BitConverter.GetBytes(v));
- else
- stream.WriteStringNoNull(v.ToString(numberFormat));
- }
-
- public int Value
- {
- get { return mValue; }
- set { mValue = value; objectValue = value; }
- }
-
- internal override Type SystemType
- {
- get { return typeof(Int32); }
- }
-
- internal override string GetMySqlTypeName()
- {
- if (mySqlDbType == MySqlDbType.Int24)
- return "MEDIUMINT";
- return "INT";
- }
-
- internal override MySqlValue ReadValue(PacketReader reader, long length)
- {
- if (length == -1)
- {
- if (mySqlDbType == MySqlDbType.Int24)
- Value = stream.ReadInteger(3);
- else
- Value = (int)stream.ReadLong(4);
- }
- else
- {
- string value = stream.ReadString(length);
- Value = Int32.Parse(value, numberFormat);
- }
- return this;
- }
-
- internal override void Skip(PacketReader reader)
- {
- stream.Skip( 4 );
- }
- }*/
}
Modified: trunk/mysqlclient/Types/MySqlInt64.cs
===================================================================
--- trunk/mysqlclient/Types/MySqlInt64.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/Types/MySqlInt64.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -138,64 +138,4 @@
dsTable.Rows.Add(row);
}
}
-/*
- /// <summary>
- /// Summary description for MySqlInt64.
- /// </summary>
- internal class MySqlInt64 : MySqlValue
- {
- private long mValue;
-
- public MySqlInt64() : base()
- {
- dbType = DbType.Int64;
- mySqlDbType = MySqlDbType.Int64;
- }
-
- internal override void Serialize(PacketWriter writer, bool binary, object value, int length)
- {
- long v = Convert.ToInt64(value);
- if (binary)
- stream.Write(BitConverter.GetBytes(v));
- else
- stream.WriteStringNoNull(v.ToString(numberFormat));
- }
-
-
- public long Value
- {
- get { return mValue; }
- set { mValue = value; objectValue = value; }
- }
-
- internal override Type SystemType
- {
- get { return typeof(Int64); }
- }
-
- internal override string GetMySqlTypeName()
- {
- return "BIGINT";
- }
-
- internal override MySqlValue ReadValue(PacketReader reader, long length)
- {
- if (length == -1)
- {
- Value = (long)stream.ReadLong(8);
- }
- else
- {
- string value = stream.ReadString(length);
- Value = Int64.Parse(value, numberFormat);
- }
- return this;
- }
-
- internal override void Skip(PacketReader reader)
- {
- stream.Skip(8);
- }
-
- }*/
}
Modified: trunk/mysqlclient/Types/MySqlSingle.cs
===================================================================
--- trunk/mysqlclient/Types/MySqlSingle.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/Types/MySqlSingle.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -144,76 +144,4 @@
dsTable.Rows.Add(row);
}
}
-/*
- /// <summary>
- /// Summary description for MySqlFloat.
- /// </summary>
- internal class MySqlFloat : MySqlValue
- {
- private Single mValue;
-
- public MySqlFloat() : base()
- {
- dbType = DbType.Single;
- mySqlDbType = MySqlDbType.Float;
- }
-
- internal override void Serialize(PacketWriter writer, bool binary, object value, int length)
- {
- Single v = Convert.ToSingle( value );
- if (binary)
- stream.Write( BitConverter.GetBytes( v ) );
- else
- stream.WriteStringNoNull( v.ToString(numberFormat) );
- }
-
- public Single Value
- {
- get { return mValue; }
- set { mValue = value; objectValue = value; }
- }
-
- public static float MaxValue
- {
- get { return float.Parse(float.MaxValue.ToString("R")); }
- }
-
- public static float MinValue
- {
- get { return float.Parse(float.MinValue.ToString("R")); }
- }
-
- internal override Type SystemType
- {
- get { return typeof(Single); }
- }
-
- internal override string GetMySqlTypeName()
- {
- return "FLOAT";
- }
-
- internal override MySqlValue ReadValue(PacketReader reader, long length)
- {
- if (length == -1)
- {
- byte[] b = new byte[4];
- stream.Read( ref b, 0, 4 );
- Value = BitConverter.ToSingle( b, 0 );
- }
- else
- {
- string value = stream.ReadString( length );
- Value = Parse(value);
- }
- return this;
- }
-
- internal override void Skip(PacketReader reader)
- {
- stream.Skip(4);
- }
-
-<<<<<<< .working
- }*/
}
Modified: trunk/mysqlclient/Types/MySqlString.cs
===================================================================
--- trunk/mysqlclient/Types/MySqlString.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/Types/MySqlString.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -167,94 +167,5 @@
dsTable.Rows.Add(row);
}
}
-
}
-/*
- /// <summary>
- /// Summary description for MySqlString.
- /// </summary>
- internal class MySqlString : MySqlValue
- {
- public MySqlString(string val, MySqlDbType type)
- {
- Value = val;
- mySqlDbType = type;
- }
-
- private string EscapeString( string s )
- {
- s = s.Replace("\\", "\\\\");
- s = s.Replace("\'", "\\\'");
- s = s.Replace("\"", "\\\"");
- s = s.Replace("`", "\\`");
- s = s.Replace("- s = s.Replace("- s = s.Replace("- return s;
- }
-
-
- internal override void Serialize(PacketWriter writer, bool binary, object value, int length)
- {
- string v = value.ToString();
- if (length > 0)
- v = v.Substring(0, length);
-
- if (binary)
- stream.WriteLenString( v );
- else
- stream.WriteStringNoNull( "'" + EscapeString(v) + "'" );
- }
-
- public byte[] ToBytes( System.Text.Encoding encoding )
- {
- PacketWriter p = new PacketWriter();
- p.Encoding = encoding;
- p.WriteLenString( Value );
-
- MemoryStream ms = (p.Stream as MemoryStream);
-
- byte[] buff = new byte[ ms.Length ];
- Array.Copy( ms.GetBuffer(), 0, buff, 0, (int)ms.Length );
- return buff;
- }
-
- public string Value
- {
- get { return objectValue as string; }
- set { objectValue = value; }
- }
-
- internal override Type SystemType
- {
- get { return typeof(String); }
- }
-
- internal override string GetMySqlTypeName()
- {
- switch (mySqlDbType)
- {
- case MySqlDbType.Set: return "SET";
- case MySqlDbType.Enum: return "ENUM";
- }
- return "VARCHAR";
- }
-
- internal override MySqlValue ReadValue(PacketReader reader, long length)
- {
- string s = String.Empty;
- if (length == -1)
- s = stream.ReadLenString();
- else
- s = stream.ReadString( length );
- return new MySqlString( s, mySqlDbType );
- }
-
- internal override void Skip(PacketReader reader)
- {
- long len = stream.GetFieldLength();
- stream.Skip( len );
- }
-
- }*/
}
Modified: trunk/mysqlclient/Types/MySqlTime.cs
===================================================================
--- trunk/mysqlclient/Types/MySqlTime.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/Types/MySqlTime.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -194,124 +194,4 @@
isNull = false;
}
}
-/*
-
- /// <summary>
- /// Summary description for MySqlDateTime.
- /// </summary>
- internal class MySqlTimeSpan : MySqlValue
- {
- private TimeSpan mValue;
-
- public MySqlTimeSpan()
- {
- dbType = DbType.Time;
- mySqlDbType = MySqlDbType.Time;
- }
-
- public MySqlTimeSpan(TimeSpan val) : this()
- {
- mValue = val;
- }
-
- internal override void Serialize(PacketWriter writer, bool binary, object value, int length)
- {
- if (! (value is TimeSpan))
- throw new MySqlException("Only TimeSpan objects can be serialized by MySqlTimeSpan");
-
- TimeSpan ts = (TimeSpan)value;
- if (binary)
- {
- stream.WriteByte( 8 );
- stream.WriteByte( (byte)(ts.TotalSeconds < 0 ? 1 : 0 ));
- stream.WriteInteger( ts.Days, 4 );
- stream.WriteByte( (byte)ts.Hours );
- stream.WriteByte( (byte)ts.Minutes );
- stream.WriteByte( (byte)ts.Seconds );
- }
- else
- {
- stream.WriteStringNoNull( String.Format("'{0} {1:00}:{2:00}:{3:00}.{4}'",
- ts.Days, ts.Hours, ts.Minutes, ts.Seconds, ts.Milliseconds ) );
- }
- }
-
-
- public override string ToString()
- {
- return String.Format("{0} {1:00}:{2:00}:{3:00}.{4}",
- mValue.Days, mValue.Hours, mValue.Minutes, mValue.Seconds, mValue.Milliseconds );
- }
-
-
- internal override string GetMySqlTypeName()
- {
- return "TIME";
- }
-
- public TimeSpan Value
- {
- get { return mValue; }
- set { mValue = value; objectValue = value;}
- }
-
- private void ParseMySql( string s, bool is41 )
- {
- string[] parts = s.Split(':');
- int hours = Int32.Parse( parts[0] );
- int mins = Int32.Parse( parts[1] );
- int secs = Int32.Parse( parts[2] );
- int days = hours / 24;
- hours = hours - (days * 24);
- Value = new TimeSpan( days, hours, mins, secs, 0 );
- }
-
- internal override Type SystemType
- {
- get { return typeof(TimeSpan); }
- }
-
- internal override MySqlValue ReadValue(PacketReader reader, long length)
- {
- if (length >= 0)
- {
- string value = stream.ReadString( length );
- ParseMySql( value, stream.Version.isAtLeast(4,1,0));
- return this;
- }
-
- long bufLength = stream.ReadByte();
- int negate = 0;
- if (bufLength > 0)
- negate = stream.ReadByte();
-
- if (bufLength == 0)
- IsNull = true;
- else if (bufLength == 5)
- Value = new TimeSpan( stream.ReadInteger( 4 ), 0, 0, 0 );
- else if (bufLength == 8)
- Value = new TimeSpan( stream.ReadInteger(4),
- stream.ReadByte(), stream.ReadByte(), stream.ReadByte() );
- else
- Value = new TimeSpan( stream.ReadInteger(4),
- stream.ReadByte(), stream.ReadByte(), stream.ReadByte(),
- stream.ReadInteger(4) / 1000000 );
-
- if (negate == 1)
- Value = mValue.Negate();
- return this;
- }
-
- public string ToMySqlString(bool is41)
- {
- return mValue.ToString();
- }
-
- internal override void Skip(PacketReader reader)
- {
- long len = (long)stream.ReadByte();
- stream.Skip( len );
- }
-
- }*/
}
Modified: trunk/mysqlclient/Types/MySqlUByte.cs
===================================================================
--- trunk/mysqlclient/Types/MySqlUByte.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/Types/MySqlUByte.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -138,59 +138,4 @@
dsTable.Rows.Add(row);
}
}
-/*
- /// <summary>
- /// Summary description for MySqlByte.
- /// </summary>
- internal class MySqlUByte : MySqlValue
- {
- private byte mValue;
-
- public MySqlUByte() : base()
- {
- dbType = DbType.Byte;
- mySqlDbType = MySqlDbType.Byte;
- }
-
- internal override void Serialize(PacketWriter writer, bool binary, object value, int length)
- {
- byte v = Convert.ToByte( value );
- if (binary)
- stream.WriteByte( v );
- else
- stream.WriteStringNoNull( v.ToString() );
- }
-
- public byte Value
- {
- get { return mValue; }
- set { mValue = value; objectValue = value; }
- }
-
- internal override Type SystemType
- {
- get { return typeof(Byte); }
- }
-
- internal override string GetMySqlTypeName()
- {
- if (mySqlDbType == MySqlDbType.Year)
- return "YEAR";
- return "TINYINT";
- }
-
- internal override MySqlValue ReadValue(PacketReader reader, long length)
- {
- if (length == -1)
- Value = (byte)stream.ReadByte();
- else
- Value = Byte.Parse( stream.ReadString(length));
- return this;
- }
-
- internal override void Skip(PacketReader reader)
- {
- stream.ReadByte();
- }
- }*/
}
Modified: trunk/mysqlclient/Types/MySqlUInt16.cs
===================================================================
--- trunk/mysqlclient/Types/MySqlUInt16.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/Types/MySqlUInt16.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -138,68 +138,4 @@
dsTable.Rows.Add(row);
}
}
-/*
- /// <summary>
- /// Summary description for MySqlInt16.
- /// </summary>
- internal class MySqlUInt16 : MySqlValue
- {
- private ushort mValue;
-
- public MySqlUInt16() : base()
- {
- dbType = DbType.UInt16;
- mySqlDbType = MySqlDbType.Int16;
- }
-
- public MySqlUInt16(MySqlDbType type) : this()
- {
- mySqlDbType = type;
- }
-
- internal override void Serialize(PacketWriter writer, bool binary, object value, int length)
- {
- ushort v = Convert.ToUInt16( value );
- if (binary)
- stream.Write( BitConverter.GetBytes( v ) );
- else
- stream.WriteStringNoNull( v.ToString() );
- }
-
- public ushort Value
- {
- get { return mValue; }
- set { mValue = value; objectValue = value; }
- }
-
- internal override Type SystemType
- {
- get { return typeof(UInt16); }
- }
-
- internal override string GetMySqlTypeName()
- {
- return "SMALLINT";
- }
-
- internal override MySqlValue ReadValue(PacketReader reader, long length)
- {
- if (length == -1)
- {
- Value = (ushort)stream.ReadInteger(2);
- }
- else
- {
- string value = stream.ReadString( length );
- Value = UInt16.Parse( value );
- }
- return this;
- }
-
- internal override void Skip(PacketReader reader)
- {
- stream.Skip(2);
- }
-
- }*/
}
Modified: trunk/mysqlclient/Types/MySqlUInt32.cs
===================================================================
--- trunk/mysqlclient/Types/MySqlUInt32.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/Types/MySqlUInt32.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -152,62 +152,4 @@
}
}
}
-
-
-/* internal class MySqlUInt32Old : MySqlValue
- {
- private uint mValue;
-
- public MySqlUInt32Old(MySqlDbType type) : base()
- {
- mySqlDbType = type;
- }
-
- internal override void Serialize(PacketWriter writer, bool binary, object value, int length)
- {
- uint v = Convert.ToUInt32( value );
- if (binary)
- stream.Write( BitConverter.GetBytes( v ) );
- else
- stream.WriteStringNoNull( v.ToString() );
- }
-
- public uint Value
- {
- get { return mValue; }
- set { mValue = value; objectValue = value; }
- }
-
- internal override Type SystemType
- {
- get { return typeof(UInt32); }
- }
-
- internal override string GetMySqlTypeName()
- {
- return "INT";
- }
-
- internal override MySqlValue ReadValue( PacketReader reader, long length )
- {
- if (length == -1)
- {
- if (mySqlDbType == MySqlDbType.Int24)
- Value = (uint)stream.ReadInteger( 3 );
- else
- Value = (uint)stream.ReadLong( 4 );
- }
- else
- {
- string value = stream.ReadString( length );
- Value = UInt32.Parse( value );
- }
- return this;
- }
-
- internal override void Skip(PacketReader reader)
- {
- stream.Skip(4);
- }
- }*/
}
Modified: trunk/mysqlclient/Types/MySqlUInt64.cs
===================================================================
--- trunk/mysqlclient/Types/MySqlUInt64.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/Types/MySqlUInt64.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -138,62 +138,4 @@
dsTable.Rows.Add(row);
}
}
-/*
- /// <summary>
- /// Summary description for MySqlUInt64.
- /// </summary>
- internal class MySqlUInt64 : MySqlValue
- {
- private ulong mValue;
-
- public MySqlUInt64() : base()
- {
- dbType = DbType.UInt64;
- mySqlDbType = MySqlDbType.Int64;
- }
-
- internal override void Serialize(PacketWriter writer, bool binary, object value, int length)
- {
- ulong v = Convert.ToUInt64( value );
- if (binary)
- stream.Write( BitConverter.GetBytes( v ) );
- else
- stream.WriteStringNoNull( v.ToString() );
- }
-
- public ulong Value
- {
- get { return mValue; }
- set { mValue = value; objectValue = value; }
- }
-
- internal override Type SystemType
- {
- get { return typeof(UInt64); }
- }
-
- internal override string GetMySqlTypeName()
- {
- return "BIGINT";
- }
-
- internal override MySqlValue ReadValue( PacketReader reader, long length )
- {
- if (length == -1)
- {
- Value = stream.ReadLong( 8 );
- }
- else
- {
- string value = stream.ReadString( length );
- Value = UInt64.Parse( value );
- }
- return this;
- }
-
- internal override void Skip(PacketReader reader)
- {
- stream.Skip(8);
- }
- }*/
}
Modified: trunk/mysqlclient/Types/MySqlValue.cs
===================================================================
--- trunk/mysqlclient/Types/MySqlValue.cs 2006-07-30 16:36:21 UTC (rev 286)
+++ trunk/mysqlclient/Types/MySqlValue.cs 2006-07-30 17:00:41 UTC (rev 287)
@@ -38,155 +38,4 @@
IMySqlValue ReadValue(MySqlStream stream, long length, bool isNull);
void SkipValue(MySqlStream stream);
}
-
-
-/*
- /// <summary>
- ///
- /// </summary>
- public abstract class MySqlValue
- {
- /// <summary></summary>
- protected static NumberFormatInfo numberFormat = null;
-
- /// <summary></summary>
- protected object objectValue;
-
- /// <summary>The generic dbtype of this value</summary>
- protected DbType dbType;
-
- /// <summary>The specific MySQL db type</summary>
- protected MySqlDbType mySqlDbType;
-
- /// <summary>The MySQL specific typename of this value</summary>
- protected string mySqlTypeName;
-
- /// <summary>The system type represented by this value</summary>
- protected Type classType;
-
- /// <summary>Is this value null</summary>
- protected bool isNull;
-
- /// <summary>
- ///
- /// </summary>
- public MySqlValue()
- {
- isNull = false;
-
- if (numberFormat == null)
- {
- numberFormat = (NumberFormatInfo)NumberFormatInfo.InvariantInfo.Clone();
- numberFormat.NumberDecimalSeparator = ".";
- }
- }
-
- /// <summary>Returns the value of this field as an object</summary>
- public object ValueAsObject
- {
- get { return objectValue; }
- }
-
- // abstract methods
- internal abstract void Serialize( PacketWriter writer, bool binary, object value, int length );
-
- /// <summary></summary>
- internal abstract string GetMySqlTypeName();
- internal abstract MySqlValue ReadValue( PacketReader reader, long length );
- internal abstract void Skip( PacketReader reader );
-
- internal abstract Type SystemType
- {
- get;
- }
-
- /// <summary>
- ///
- /// </summary>
- public bool IsNull
- {
- get { return isNull; }
- set { isNull = value; if (isNull) objectValue = null; }
- }
-
- internal virtual DbType DbType
- {
- get { return dbType; }
- }
-
- internal MySqlDbType MySqlDbType
- {
- get { return mySqlDbType; }
- }
-
- /// <summary>Returns a string representation of this value</summary>
- public override string ToString()
- {
- return ValueAsObject.ToString();
- }
-
- internal static MySqlValue GetMySqlValue( MySqlDbType type, bool binary )
- {
- switch (type)
- {
- case MySqlDbType.UByte:
- return new MySqlUByte();
- case MySqlDbType.Byte:
- return new MySqlByte();
-
- case MySqlDbType.UInt16:
- return new MySqlUInt16();
- case MySqlDbType.Int16:
- return new MySqlInt16();
-
- case MySqlDbType.UInt24:
- case MySqlDbType.UInt32:
- return new MySqlUInt32(type);
-
- case MySqlDbType.Int24:
- case MySqlDbType.Int32:
- case MySqlDbType.Year:
- return new MySqlInt32(type);
-
- case MySqlDbType.Bit:
- return new MySqlBit();
-
- case MySqlDbType.UInt64:
- return new MySqlUInt64();
-
- case MySqlDbType.Int64:
- return new MySqlInt64();
-
- case MySqlDbType.Time:
- return new MySqlTimeSpan();
-
- case MySqlDbType.Date:
- case MySqlDbType.Datetime:
- case MySqlDbType.Newdate:
- case MySqlDbType.Timestamp: return new MySqlDateTime(type);
-
- case MySqlDbType.Decimal: return new MySqlDecimal();
-
- case MySqlDbType.Float: return new MySqlFloat();
-
- case MySqlDbType.Double: return new MySqlDouble();
-
- case MySqlDbType.Set:
- case MySqlDbType.Enum:
- case MySqlDbType.Char:
- case MySqlDbType.VarChar:
- return new MySqlString(null, type);
-
- case MySqlDbType.Blob:
- case MySqlDbType.MediumBlob:
- case MySqlDbType.LongBlob:
- default:
- if (binary) return new MySqlBinary( null, type );
- return new MySqlString( null, type );
- }
- }
-
-
- }
-*/
}
| Thread |
|---|
| • Connector/NET commit: r287 - in trunk: . mysqlclient mysqlclient/Types | rburnett | 30 Jul |