You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(120) |
Aug
(95) |
Sep
(95) |
Oct
(213) |
Nov
(114) |
Dec
(64) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(6) |
Feb
(134) |
Mar
(88) |
Apr
(28) |
May
(22) |
Jun
(15) |
Jul
(23) |
Aug
(2) |
Sep
(15) |
Oct
(2) |
Nov
(6) |
Dec
|
2005 |
Jan
(8) |
Feb
(6) |
Mar
|
Apr
(42) |
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
(84) |
Oct
|
Nov
|
Dec
|
2006 |
Jan
|
Feb
|
Mar
(84) |
Apr
(46) |
May
(40) |
Jun
(8) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Carlos G. Á. <car...@us...> - 2005-09-11 13:29:27
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26088/Data/Protocol Modified Files: PgCharSet.cs PgCharSetCollection.cs PgClientMessageEventArgs.cs PgClientNotificationEventArgs.cs PgDbClient.cs PgOutputPacket.cs PgParameter.cs PgResponsePacket.cs PgStatement.cs PgType.cs Log Message: Updated sources Index: PgResponsePacket.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgResponsePacket.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** PgResponsePacket.cs 11 Sep 2005 12:12:31 -0000 1.3 --- PgResponsePacket.cs 11 Sep 2005 13:29:16 -0000 1.4 *************** *** 283,287 **** // Read array element type ! PgType elementType = PgDbClient.Types[this.ReadInt32()]; // Read array lengths and lower bounds --- 283,287 ---- // Read array element type ! PgType elementType = PgDbClient.DataTypes[this.ReadInt32()]; // Read array lengths and lower bounds *************** *** 306,310 **** public Array ReadVector(PgType type, int length) { ! PgType elementType = PgDbClient.Types[type.ElementType]; Array data = null; --- 306,310 ---- public Array ReadVector(PgType type, int length) { ! PgType elementType = PgDbClient.DataTypes[type.ElementType]; Array data = null; *************** *** 592,596 **** private Array ReadStringArray(PgType type, int length) { ! PgType elementType = PgDbClient.Types[type.ElementType]; Array data = null; --- 592,596 ---- private Array ReadStringArray(PgType type, int length) { ! PgType elementType = PgDbClient.DataTypes[type.ElementType]; Array data = null; Index: PgType.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgType.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgType.cs 11 Sep 2005 12:12:31 -0000 1.2 --- PgType.cs 11 Sep 2005 13:29:16 -0000 1.3 *************** *** 63,69 **** int type = elementType; ! while (PgDbClient.Types[type].DataType == PgDataType.Array) { ! type = PgDbClient.Types[type].ElementType; } --- 63,69 ---- int type = elementType; ! while (PgDbClient.DataTypes[type].DataType == PgDataType.Array) { ! type = PgDbClient.DataTypes[type].ElementType; } Index: PgDbClient.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgDbClient.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** PgDbClient.cs 11 Sep 2005 12:12:31 -0000 1.3 --- PgDbClient.cs 11 Sep 2005 13:29:16 -0000 1.4 *************** *** 29,52 **** internal class PgDbClient { - #region · Static Fields · - - private static PgTypeCollection types; - private static PgCharSetCollection charSets; - - #endregion - #region · Static Properties · ! public static PgTypeCollection Types ! { ! get { return types; } ! set { types = value; } ! } ! ! public static PgCharSetCollection CharSets ! { ! get { return charSets; } ! set { charSets = value; } ! } #endregion --- 29,36 ---- internal class PgDbClient { #region · Static Properties · ! public static readonly PgTypeCollection DataTypes = new PgTypeCollection(); ! public static readonly PgCharactersetCollection Charactersets = new PgCharactersetCollection(); #endregion *************** *** 56,167 **** public static void InitializeTypes() { ! if (types != null) ! { ! return; ! } ! ! types = new PgTypeCollection(); ! ! types.Add(16 , "bool" , PgDataType.Boolean , 0, PgTypeFormat.Binary, 1); ! types.Add(17 , "bytea" , PgDataType.Binary , 0, PgTypeFormat.Binary, 0); ! types.Add(18 , "char" , PgDataType.Char , 0, PgTypeFormat.Text, 0); ! types.Add(19 , "name" , PgDataType.VarChar , 0, PgTypeFormat.Text, 0); ! types.Add(20 , "int8" , PgDataType.Int8 , 0, PgTypeFormat.Binary, 8); ! types.Add(21 , "int2" , PgDataType.Int2 , 0, PgTypeFormat.Binary, 2); ! types.Add(22 , "int2vector" , PgDataType.Vector , 21, PgTypeFormat.Binary, 2); ! types.Add(23 , "int4" , PgDataType.Int4 , 0, PgTypeFormat.Binary, 4); ! types.Add(24 , "regproc" , PgDataType.VarChar , 0, PgTypeFormat.Text, 0); ! types.Add(25 , "text" , PgDataType.VarChar , 0, PgTypeFormat.Text, 0); ! types.Add(26 , "oid" , PgDataType.Int4 , 0, PgTypeFormat.Binary, 4); ! types.Add(30 , "oidvector" , PgDataType.Vector , 26, PgTypeFormat.Binary, 4); ! types.Add(600 , "point" , PgDataType.Point , 701, PgTypeFormat.Binary, 16); ! types.Add(601 , "lseg" , PgDataType.LSeg , 600, PgTypeFormat.Binary, 32); ! types.Add(602 , "path" , PgDataType.Path , 0, PgTypeFormat.Binary, 16); ! types.Add(603 , "box" , PgDataType.Box , 600, PgTypeFormat.Binary, 32); ! types.Add(604 , "polygon" , PgDataType.Polygon , 0, PgTypeFormat.Binary, 16); ! types.Add(628 , "line" , PgDataType.Line , 701, PgTypeFormat.Binary, 32); ! types.Add(629 , "_line" , PgDataType.Array , 628, PgTypeFormat.Binary, 32); ! types.Add(718 , "circle" , PgDataType.Circle , 0, PgTypeFormat.Binary, 24); ! types.Add(719 , "_circle" , PgDataType.Array , 718, PgTypeFormat.Binary, 24); ! types.Add(700 , "float4" , PgDataType.Float , 0, PgTypeFormat.Binary, 4); ! types.Add(701 , "float8" , PgDataType.Double , 0, PgTypeFormat.Binary, 8); ! types.Add(705 , "unknown" , PgDataType.Binary , 0, PgTypeFormat.Binary, 0); ! types.Add(790 , "money" , PgDataType.Currency , 0, PgTypeFormat.Binary, 4); ! types.Add(829 , "macaddr" , PgDataType.VarChar , 0, PgTypeFormat.Text, 6); ! types.Add(869 , "inet" , PgDataType.VarChar , 0, PgTypeFormat.Text, 0); ! types.Add(1000 , "_bool" , PgDataType.Array , 16, PgTypeFormat.Binary, 1); ! types.Add(1005 , "_int2" , PgDataType.Array , 21, PgTypeFormat.Binary, 2); ! types.Add(1007 , "_int4" , PgDataType.Array , 23, PgTypeFormat.Binary, 4); ! types.Add(1009 , "_text" , PgDataType.Array , 25, PgTypeFormat.Binary, 0); ! types.Add(1016 , "_int8" , PgDataType.Array , 20, PgTypeFormat.Binary, 8); ! types.Add(1017 , "_point" , PgDataType.Array , 600, PgTypeFormat.Binary, 16); ! types.Add(1018 , "_lseg" , PgDataType.Array , 601, PgTypeFormat.Binary, 32); ! types.Add(1019 , "_path" , PgDataType.Array , 602, PgTypeFormat.Binary, -1); ! types.Add(1020 , "_box" , PgDataType.Array , 603, PgTypeFormat.Binary, 32); ! types.Add(1021 , "_float4" , PgDataType.Array , 700, PgTypeFormat.Binary, 4); ! types.Add(1027 , "_polygon" , PgDataType.Array , 604, PgTypeFormat.Binary, 16); ! types.Add(1033 , "aclitem" , PgDataType.VarChar , 0, PgTypeFormat.Text, 12); ! types.Add(1034 , "_aclitem" , PgDataType.Array , 1033, PgTypeFormat.Text, 0); ! types.Add(1042 , "bpchar" , PgDataType.VarChar , 0, PgTypeFormat.Text, 0); ! types.Add(1043 , "varchar" , PgDataType.VarChar , 0, PgTypeFormat.Text, 0); ! types.Add(1082 , "date" , PgDataType.Date , 0, PgTypeFormat.Binary, 4); ! types.Add(1083 , "time" , PgDataType.Time , 0, PgTypeFormat.Text, 8); ! types.Add(1114 , "timestamp" , PgDataType.Timestamp , 0, PgTypeFormat.Text, 8); ! types.Add(1184 , "timestamptz" , PgDataType.TimestampWithTZ, 0, PgTypeFormat.Binary, 8); ! types.Add(1186 , "interval" , PgDataType.Interval , 0, PgTypeFormat.Binary, 12); ! types.Add(1266 , "timetz" , PgDataType.TimeWithTZ , 0, PgTypeFormat.Binary, 12); ! types.Add(1560 , "bit" , PgDataType.Byte , 0, PgTypeFormat.Text, 1); ! types.Add(1562 , "varbit" , PgDataType.Byte , 0, PgTypeFormat.Binary, 0); ! types.Add(1700 , "numeric" , PgDataType.Decimal , 0, PgTypeFormat.Text, 8); ! types.Add(1790 , "refcursor" , PgDataType.VarChar , 0, PgTypeFormat.Text, 0); ! types.Add(2277 , "anyarray" , PgDataType.Array , 0, PgTypeFormat.Binary, 8); } public static void InitializeCharSets() { ! if (charSets != null) ! { ! return; ! } ! ! charSets = new PgCharSetCollection(); ! ! PgDbClient.addCharset("SQL_ASCII" , "ascii"); // ASCII ! PgDbClient.addCharset("EUC_JP" , "euc-jp"); // Japanese EUC ! PgDbClient.addCharset("EUC_CN" , "euc-cn"); // Chinese EUC ! PgDbClient.addCharset("UNICODE" , "UTF-8"); // Unicode (UTF-8) ! PgDbClient.addCharset("LATIN1" , "iso-8859-1"); // ISO 8859-1/ECMA 94 (Latin alphabet no.1) ! PgDbClient.addCharset("LATIN2" , "iso-8859-2"); // ISO 8859-2/ECMA 94 (Latin alphabet no.2) ! PgDbClient.addCharset("LATIN4" , 1257); // ISO 8859-4/ECMA 94 (Latin alphabet no.4) ! PgDbClient.addCharset("ISO_8859_7" , 1253); // ISO 8859-7/ECMA 118 (Latin/Greek) ! PgDbClient.addCharset("LATIN9" , "iso-8859-15"); // ISO 8859-15 (Latin alphabet no.9) ! PgDbClient.addCharset("KOI8" , "koi8-r"); // KOI8-R(U) ! PgDbClient.addCharset("WIN" , "windows-1251"); // Windows CP1251 ! PgDbClient.addCharset("WIN1256" , "windows-1256"); // Windows CP1256 (Arabic) ! PgDbClient.addCharset("WIN1256" , "windows-1256"); // Windows CP1256 (Arabic) ! PgDbClient.addCharset("WIN1256" , "windows-1258"); // TCVN-5712/Windows CP1258 (Vietnamese) ! PgDbClient.addCharset("WIN1256" , "windows-874"); // Windows CP874 (Thai) ! } ! ! private static void addCharset(string charset, string systemCharset) ! { ! try ! { ! charSets.Add(charset, systemCharset); ! } ! catch (Exception) ! { ! } ! } ! ! private static void addCharset(string charset, int cp) ! { ! try ! { ! charSets.Add(charset, cp); ! } ! catch (Exception) ! { ! } } --- 40,115 ---- public static void InitializeTypes() { ! DataTypes.Add(16 , "bool" , PgDataType.Boolean , 0, PgTypeFormat.Binary, 1); ! DataTypes.Add(17 , "bytea" , PgDataType.Binary , 0, PgTypeFormat.Binary, 0); ! DataTypes.Add(18 , "char" , PgDataType.Char , 0, PgTypeFormat.Text, 0); ! DataTypes.Add(19 , "name" , PgDataType.VarChar , 0, PgTypeFormat.Text, 0); ! DataTypes.Add(20 , "int8" , PgDataType.Int8 , 0, PgTypeFormat.Binary, 8); ! DataTypes.Add(21 , "int2" , PgDataType.Int2 , 0, PgTypeFormat.Binary, 2); ! DataTypes.Add(22 , "int2vector" , PgDataType.Vector , 21, PgTypeFormat.Binary, 2); ! DataTypes.Add(23 , "int4" , PgDataType.Int4 , 0, PgTypeFormat.Binary, 4); ! DataTypes.Add(24 , "regproc" , PgDataType.VarChar , 0, PgTypeFormat.Text, 0); ! DataTypes.Add(25 , "text" , PgDataType.VarChar , 0, PgTypeFormat.Text, 0); ! DataTypes.Add(26 , "oid" , PgDataType.Int4 , 0, PgTypeFormat.Binary, 4); ! DataTypes.Add(30 , "oidvector" , PgDataType.Vector , 26, PgTypeFormat.Binary, 4); ! DataTypes.Add(600 , "point" , PgDataType.Point , 701, PgTypeFormat.Binary, 16); ! DataTypes.Add(601 , "lseg" , PgDataType.LSeg , 600, PgTypeFormat.Binary, 32); ! DataTypes.Add(602 , "path" , PgDataType.Path , 0, PgTypeFormat.Binary, 16); ! DataTypes.Add(603 , "box" , PgDataType.Box , 600, PgTypeFormat.Binary, 32); ! DataTypes.Add(604 , "polygon" , PgDataType.Polygon , 0, PgTypeFormat.Binary, 16); ! DataTypes.Add(628 , "line" , PgDataType.Line , 701, PgTypeFormat.Binary, 32); ! DataTypes.Add(629 , "_line" , PgDataType.Array , 628, PgTypeFormat.Binary, 32); ! DataTypes.Add(718 , "circle" , PgDataType.Circle , 0, PgTypeFormat.Binary, 24); ! DataTypes.Add(719 , "_circle" , PgDataType.Array , 718, PgTypeFormat.Binary, 24); ! DataTypes.Add(700 , "float4" , PgDataType.Float , 0, PgTypeFormat.Binary, 4); ! DataTypes.Add(701 , "float8" , PgDataType.Double , 0, PgTypeFormat.Binary, 8); ! DataTypes.Add(705 , "unknown" , PgDataType.Binary , 0, PgTypeFormat.Binary, 0); ! DataTypes.Add(790 , "money" , PgDataType.Currency , 0, PgTypeFormat.Binary, 4); ! DataTypes.Add(829 , "macaddr" , PgDataType.VarChar , 0, PgTypeFormat.Text, 6); ! DataTypes.Add(869 , "inet" , PgDataType.VarChar , 0, PgTypeFormat.Text, 0); ! DataTypes.Add(1000 , "_bool" , PgDataType.Array , 16, PgTypeFormat.Binary, 1); ! DataTypes.Add(1005 , "_int2" , PgDataType.Array , 21, PgTypeFormat.Binary, 2); ! DataTypes.Add(1007 , "_int4" , PgDataType.Array , 23, PgTypeFormat.Binary, 4); ! DataTypes.Add(1009 , "_text" , PgDataType.Array , 25, PgTypeFormat.Binary, 0); ! DataTypes.Add(1016 , "_int8" , PgDataType.Array , 20, PgTypeFormat.Binary, 8); ! DataTypes.Add(1017 , "_point" , PgDataType.Array , 600, PgTypeFormat.Binary, 16); ! DataTypes.Add(1018 , "_lseg" , PgDataType.Array , 601, PgTypeFormat.Binary, 32); ! DataTypes.Add(1019 , "_path" , PgDataType.Array , 602, PgTypeFormat.Binary, -1); ! DataTypes.Add(1020 , "_box" , PgDataType.Array , 603, PgTypeFormat.Binary, 32); ! DataTypes.Add(1021 , "_float4" , PgDataType.Array , 700, PgTypeFormat.Binary, 4); ! DataTypes.Add(1027 , "_polygon" , PgDataType.Array , 604, PgTypeFormat.Binary, 16); ! DataTypes.Add(1033 , "aclitem" , PgDataType.VarChar , 0, PgTypeFormat.Text, 12); ! DataTypes.Add(1034 , "_aclitem" , PgDataType.Array , 1033, PgTypeFormat.Text, 0); ! DataTypes.Add(1042 , "bpchar" , PgDataType.VarChar , 0, PgTypeFormat.Text, 0); ! DataTypes.Add(1043 , "varchar" , PgDataType.VarChar , 0, PgTypeFormat.Text, 0); ! DataTypes.Add(1082 , "date" , PgDataType.Date , 0, PgTypeFormat.Binary, 4); ! DataTypes.Add(1083 , "time" , PgDataType.Time , 0, PgTypeFormat.Text, 8); ! DataTypes.Add(1114 , "timestamp" , PgDataType.Timestamp , 0, PgTypeFormat.Text, 8); ! DataTypes.Add(1184 , "timestamptz" , PgDataType.TimestampWithTZ, 0, PgTypeFormat.Binary, 8); ! DataTypes.Add(1186 , "interval" , PgDataType.Interval , 0, PgTypeFormat.Binary, 12); ! DataTypes.Add(1266 , "timetz" , PgDataType.TimeWithTZ , 0, PgTypeFormat.Binary, 12); ! DataTypes.Add(1560 , "bit" , PgDataType.Byte , 0, PgTypeFormat.Text, 1); ! DataTypes.Add(1562 , "varbit" , PgDataType.Byte , 0, PgTypeFormat.Binary, 0); ! DataTypes.Add(1700 , "numeric" , PgDataType.Decimal , 0, PgTypeFormat.Text, 8); ! DataTypes.Add(1790 , "refcursor" , PgDataType.VarChar , 0, PgTypeFormat.Text, 0); ! DataTypes.Add(2277 , "anyarray" , PgDataType.Array , 0, PgTypeFormat.Binary, 8); } public static void InitializeCharSets() { ! Charactersets.Add("SQL_ASCII" , "ascii"); // ASCII ! Charactersets.Add("EUC_JP" , "euc-jp"); // Japanese EUC ! Charactersets.Add("EUC_CN" , "euc-cn"); // Chinese EUC ! Charactersets.Add("UNICODE" , "UTF-8"); // Unicode (UTF-8) ! Charactersets.Add("LATIN1" , "iso-8859-1"); // ISO 8859-1/ECMA 94 (Latin alphabet no.1) ! Charactersets.Add("LATIN2" , "iso-8859-2"); // ISO 8859-2/ECMA 94 (Latin alphabet no.2) ! Charactersets.Add("LATIN4" , 1257); // ISO 8859-4/ECMA 94 (Latin alphabet no.4) ! Charactersets.Add("ISO_8859_7" , 1253); // ISO 8859-7/ECMA 118 (Latin/Greek) ! Charactersets.Add("LATIN9" , "iso-8859-15"); // ISO 8859-15 (Latin alphabet no.9) ! Charactersets.Add("KOI8" , "koi8-r"); // KOI8-R(U) ! Charactersets.Add("WIN" , "windows-1251"); // Windows CP1251 ! Charactersets.Add("WIN1256" , "windows-1256"); // Windows CP1256 (Arabic) ! Charactersets.Add("WIN1256" , "windows-1256"); // Windows CP1256 (Arabic) ! Charactersets.Add("WIN1256" , "windows-1258"); // TCVN-5712/Windows CP1258 (Vietnamese) ! Charactersets.Add("WIN1256" , "windows-874"); // Windows CP874 (Thai) } *************** *** 170,179 **** #region · Callbacks · - public SslConnectionCallback SslConnection - { - get { return this.sslCallback; } - set { this.sslCallback = value; } - } - public NotificationCallback Notification { --- 118,121 ---- *************** *** 192,196 **** #region · Fields · - private SslConnectionCallback sslCallback; private NotificationCallback notification; private InfoMessageCallback infoMessage; --- 134,137 ---- *************** *** 204,208 **** private BinaryReader receive; private BinaryWriter send; ! private PgConnectionParams settings; private char transactionStatus; --- 145,149 ---- private BinaryReader receive; private BinaryWriter send; ! private PgConnectionOptions options; private char transactionStatus; *************** *** 229,236 **** } ! public PgConnectionParams Settings { ! get { return this.settings; } ! set { this.settings = value; } } --- 170,177 ---- } ! public PgConnectionOptions Options { ! get { return this.options; } ! set { this.options = value; } } *************** *** 263,270 **** } ! public PgDbClient(PgConnectionParams settings) { this.parameterStatus = new Hashtable(); ! this.settings = settings; GC.SuppressFinalize(this); --- 204,211 ---- } ! public PgDbClient(PgConnectionOptions settings) { this.parameterStatus = new Hashtable(); ! this.options = settings; GC.SuppressFinalize(this); *************** *** 286,321 **** lock (this) { ! if (this.settings.SSL) { // Send SSL request message this.SSLRequest(); ! if (this.settings.SSL) { this.secureStream = new SslStream(this.networkStream, false); ! this.SecureStream.AuthenticateAsClient(this.settings.ServerName); this.receive = new BinaryReader(this.SecureStream); this.send = new BinaryWriter(this.SecureStream); - - if (this.SslConnection != null) - { - this.SslConnection(); - } } } // Send Startup message ! PgOutputPacket packet = new PgOutputPacket(this.settings.Encoding); packet.Write(PgCodes.PROTOCOL_VERSION3); packet.WriteNullString("user"); ! packet.WriteNullString(this.settings.UserName); ! if (settings.Database != null && this.settings.Database.Length > 0) { packet.WriteNullString("database"); ! packet.WriteNullString(this.settings.Database); } --- 227,257 ---- lock (this) { ! if (this.options.SSL) { // Send SSL request message this.SSLRequest(); ! if (this.options.SSL) { this.secureStream = new SslStream(this.networkStream, false); ! this.SecureStream.AuthenticateAsClient(this.options.ServerName); this.receive = new BinaryReader(this.SecureStream); this.send = new BinaryWriter(this.SecureStream); } } // Send Startup message ! PgOutputPacket packet = new PgOutputPacket(this.options.Encoding); packet.Write(PgCodes.PROTOCOL_VERSION3); packet.WriteNullString("user"); ! packet.WriteNullString(this.options.UserName); ! if (this.options.Database != null && this.options.Database.Length > 0) { packet.WriteNullString("database"); ! packet.WriteNullString(this.options.Database); } *************** *** 457,461 **** } ! responsePacket = new PgResponsePacket(type, Settings.Encoding, buffer); } catch (IOException) --- 393,397 ---- } ! responsePacket = new PgResponsePacket(type, this.options.Encoding, buffer); } catch (IOException) *************** *** 501,505 **** { case "client_encoding": ! settings.Encoding = charSets[parameterValue].Encoding; break; } --- 437,441 ---- { case "client_encoding": ! this.options.Encoding = Charactersets[parameterValue].Encoding; break; } *************** *** 511,515 **** int authType = packet.ReadInt32(); ! PgOutputPacket outPacket = new PgOutputPacket(settings.Encoding); switch (authType) --- 447,451 ---- int authType = packet.ReadInt32(); ! PgOutputPacket outPacket = new PgOutputPacket(this.options.Encoding); switch (authType) *************** *** 529,533 **** case PgCodes.AUTH_CLEARTEXT_PASSWORD: // Cleartext password is required ! outPacket.WriteNullString(settings.UserPassword); break; --- 465,469 ---- case PgCodes.AUTH_CLEARTEXT_PASSWORD: // Cleartext password is required ! outPacket.WriteNullString(this.options.UserPassword); break; *************** *** 544,548 **** // Second calculate md5 of password + user string userHash = MD5Authentication.GetMD5Hash( ! settings.Encoding.GetBytes(settings.UserName), settings.UserPassword); // Third calculate real MD5 hash --- 480,484 ---- // Second calculate md5 of password + user string userHash = MD5Authentication.GetMD5Hash( ! this.options.Encoding.GetBytes(this.options.UserName), this.options.UserPassword); // Third calculate real MD5 hash *************** *** 705,709 **** try { ! PgOutputPacket packet = new PgOutputPacket(Settings.Encoding); // Send packet to the server --- 641,645 ---- try { ! PgOutputPacket packet = new PgOutputPacket(this.options.Encoding); // Send packet to the server *************** *** 723,727 **** try { ! PgOutputPacket packet = new PgOutputPacket(Settings.Encoding); // Send packet to the server --- 659,663 ---- try { ! PgOutputPacket packet = new PgOutputPacket(this.options.Encoding); // Send packet to the server *************** *** 781,785 **** lock (this) { ! this.settings.SSL = false; try --- 717,721 ---- lock (this) { ! this.options.SSL = false; try *************** *** 798,806 **** { case 'S': ! this.settings.SSL = true; break; default: ! this.settings.SSL = false; break; } --- 734,742 ---- { case 'S': ! this.options.SSL = true; break; default: ! this.options.SSL = false; break; } *************** *** 851,863 **** private void InitializeSocket() { ! IPAddress hostadd = Dns.GetHostEntry(settings.ServerName).AddressList[0]; this.socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); // Set Receive Buffer size. ! this.socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReceiveBuffer, settings.PacketSize); // Set Send Buffer size. ! this.socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.SendBuffer, settings.PacketSize); // Disables the Nagle algorithm for send coalescing. --- 787,799 ---- private void InitializeSocket() { ! IPAddress hostadd = Dns.GetHostEntry(this.options.ServerName).AddressList[0]; this.socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); // Set Receive Buffer size. ! this.socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReceiveBuffer, this.options.PacketSize); // Set Send Buffer size. ! this.socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.SendBuffer, this.options.PacketSize); // Disables the Nagle algorithm for send coalescing. *************** *** 865,869 **** // Make the socket to connect to the Server ! this.socket.Connect(new IPEndPoint(hostadd, settings.ServerPort)); this.networkStream = new NetworkStream(socket, true); --- 801,805 ---- // Make the socket to connect to the Server ! this.socket.Connect(new IPEndPoint(hostadd, this.options.ServerPort)); this.networkStream = new NetworkStream(socket, true); Index: PgStatement.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgStatement.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** PgStatement.cs 11 Sep 2005 12:12:31 -0000 1.3 --- PgStatement.cs 11 Sep 2005 13:29:16 -0000 1.4 *************** *** 178,182 **** this.parameters = new PgParameter[0]; ! PgOutputPacket packet = new PgOutputPacket(this.db.Settings.Encoding); packet.WriteNullString(this.ParseName); --- 178,182 ---- this.parameters = new PgParameter[0]; ! PgOutputPacket packet = new PgOutputPacket(this.db.Options.Encoding); packet.WriteNullString(this.ParseName); *************** *** 218,222 **** string name = ((stmtType == 'S') ? this.ParseName : this.PortalName); ! PgOutputPacket packet = new PgOutputPacket(this.db.Settings.Encoding); packet.Write((byte)stmtType); --- 218,222 ---- string name = ((stmtType == 'S') ? this.ParseName : this.PortalName); ! PgOutputPacket packet = new PgOutputPacket(this.db.Options.Encoding); packet.Write((byte)stmtType); *************** *** 257,261 **** try { ! PgOutputPacket packet = new PgOutputPacket(this.db.Settings.Encoding); // Destination portal name --- 257,261 ---- try { ! PgOutputPacket packet = new PgOutputPacket(this.db.Options.Encoding); // Destination portal name *************** *** 308,312 **** try { ! PgOutputPacket packet = new PgOutputPacket(this.db.Settings.Encoding); packet.WriteNullString(this.PortalName); --- 308,312 ---- try { ! PgOutputPacket packet = new PgOutputPacket(this.db.Options.Encoding); packet.WriteNullString(this.PortalName); *************** *** 363,367 **** try { ! PgOutputPacket packet = new PgOutputPacket(this.db.Settings.Encoding); // Function id --- 363,367 ---- try { ! PgOutputPacket packet = new PgOutputPacket(this.db.Options.Encoding); // Function id *************** *** 418,422 **** try { ! PgOutputPacket packet = new PgOutputPacket(this.db.Settings.Encoding); packet.WriteNullString(this.stmtText); --- 418,422 ---- try { ! PgOutputPacket packet = new PgOutputPacket(this.db.Options.Encoding); packet.WriteNullString(this.stmtText); *************** *** 528,532 **** string name = ((stmtType == 'S') ? this.ParseName : this.PortalName); ! PgOutputPacket packet = new PgOutputPacket(this.db.Settings.Encoding); packet.Write((byte)stmtType); --- 528,532 ---- string name = ((stmtType == 'S') ? this.ParseName : this.PortalName); ! PgOutputPacket packet = new PgOutputPacket(this.db.Options.Encoding); packet.Write((byte)stmtType); *************** *** 699,703 **** this.rowDescriptor.Fields[i].OidTable = packet.ReadInt32(); this.rowDescriptor.Fields[i].OidNumber = packet.ReadInt16(); ! this.rowDescriptor.Fields[i].DataType = PgDbClient.Types[packet.ReadInt32()]; this.rowDescriptor.Fields[i].DataTypeSize = packet.ReadInt16(); this.rowDescriptor.Fields[i].TypeModifier = packet.ReadInt32(); --- 699,703 ---- this.rowDescriptor.Fields[i].OidTable = packet.ReadInt32(); this.rowDescriptor.Fields[i].OidNumber = packet.ReadInt16(); ! this.rowDescriptor.Fields[i].DataType = PgDbClient.DataTypes[packet.ReadInt32()]; this.rowDescriptor.Fields[i].DataTypeSize = packet.ReadInt16(); this.rowDescriptor.Fields[i].TypeModifier = packet.ReadInt32(); Index: PgOutputPacket.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgOutputPacket.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** PgOutputPacket.cs 11 Sep 2005 12:12:31 -0000 1.3 --- PgOutputPacket.cs 11 Sep 2005 13:29:16 -0000 1.4 *************** *** 273,277 **** // Get array elements type info ! PgType elementType = PgDbClient.Types[parameter.DataType.ElementType]; size = elementType.Size; --- 273,277 ---- // Get array elements type info ! PgType elementType = PgDbClient.DataTypes[parameter.DataType.ElementType]; size = elementType.Size; Index: PgParameter.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgParameter.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgParameter.cs 11 Sep 2005 12:12:31 -0000 1.2 --- PgParameter.cs 11 Sep 2005 13:29:16 -0000 1.3 *************** *** 53,57 **** public PgParameter(int dataType) { ! this.dataType = PgDbClient.Types[dataType]; } --- 53,57 ---- public PgParameter(int dataType) { ! this.dataType = PgDbClient.DataTypes[dataType]; } Index: PgCharSetCollection.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgCharSetCollection.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgCharSetCollection.cs 11 Sep 2005 12:12:31 -0000 1.2 --- PgCharSetCollection.cs 11 Sep 2005 13:29:16 -0000 1.3 *************** *** 23,40 **** namespace PostgreSql.Data.Protocol { ! internal class PgCharSetCollection : ArrayList { #region · Properties · ! public new PgCharSet this[int index] { ! get { return (PgCharSet)base[index]; } ! set { base[index] = (PgCharSet)value; } } ! public PgCharSet this[string name] { ! get { return (PgCharSet)this[IndexOf(name)]; } ! set { this[IndexOf(name)] = (PgCharSet)value; } } --- 23,46 ---- namespace PostgreSql.Data.Protocol { ! internal sealed class PgCharactersetCollection : CollectionBase { + #region · Fields · + + private ArrayList charactersets; + + #endregion + #region · Properties · ! public PgCharacterSet this[int index] { ! get { return (PgCharacterSet)this.charactersets[index]; } ! set { this.charactersets[index] = (PgCharacterSet)value; } } ! public PgCharacterSet this[string name] { ! get { return (PgCharacterSet)this[this.IndexOf(name)]; } ! set { this[this.IndexOf(name)] = (PgCharacterSet)value; } } *************** *** 43,61 **** #region · Methods · ! public bool Contains(string charset) { ! return (-1 != this.IndexOf(charset)); } ! public int IndexOf(string charset) { int index = 0; ! foreach (PgCharSet item in this) { ! if (this.CultureAwareCompare(item.CharSet, charset)) { return index; } index++; } --- 49,68 ---- #region · Methods · ! public bool Contains(string characterset) { ! return (-1 != this.charactersets.IndexOf(characterset)); } ! public int IndexOf(string characterset) { int index = 0; ! foreach (PgCharacterSet item in this) { ! if (this.CultureAwareCompare(item.Name, characterset)) { return index; } + index++; } *************** *** 66,95 **** public void RemoveAt(string charset) { ! this.RemoveAt(IndexOf(charset)); } ! public PgCharSet Add(PgCharSet charset) { ! base.Add(charset); return charset; } ! public PgCharSet Add(string charset, string systemCharset) { ! PgCharSet charSet = new PgCharSet(charset, systemCharset); ! ! base.Add(charSet); ! ! return charSet; } ! public PgCharSet Add(string charset, int cp) { ! PgCharSet charSet = new PgCharSet(charset, cp); ! ! base.Add(charSet); ! ! return charSet; } --- 73,94 ---- public void RemoveAt(string charset) { ! this.charactersets.RemoveAt(this.IndexOf(charset)); } ! public PgCharacterSet Add(PgCharacterSet charset) { ! this.charactersets.Add(charset); return charset; } ! public PgCharacterSet Add(string charset, string systemCharset) { ! return this.Add(new PgCharacterSet(charset, systemCharset)); } ! public PgCharacterSet Add(string charset, int cp) { ! return this.Add(new PgCharacterSet(charset, cp)); } Index: PgCharSet.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgCharSet.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgCharSet.cs 11 Sep 2005 12:12:31 -0000 1.2 --- PgCharSet.cs 11 Sep 2005 13:29:16 -0000 1.3 *************** *** 21,29 **** namespace PostgreSql.Data.Protocol { ! internal class PgCharSet { #region · Fields · ! private string charSet; private Encoding encoding; --- 21,29 ---- namespace PostgreSql.Data.Protocol { ! internal sealed class PgCharacterSet { #region · Fields · ! private string name; private Encoding encoding; *************** *** 32,38 **** #region · Properties · ! public string CharSet { ! get { return this.charSet; } } --- 32,38 ---- #region · Properties · ! public string Name { ! get { return this.name; } } *************** *** 46,62 **** #region · Constructors · ! public PgCharSet() { } ! public PgCharSet(string charSet, string systemCharSet) { ! this.charSet = charSet; this.encoding = Encoding.GetEncoding(systemCharSet); } ! public PgCharSet(string charSet, int cp) { ! this.charSet = charSet; this.encoding = Encoding.GetEncoding(cp); } --- 46,62 ---- #region · Constructors · ! public PgCharacterSet() { } ! public PgCharacterSet(string name, string systemCharSet) { ! this.name = name; this.encoding = Encoding.GetEncoding(systemCharSet); } ! public PgCharacterSet(string name, int cp) { ! this.name = name; this.encoding = Encoding.GetEncoding(cp); } Index: PgClientMessageEventArgs.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgClientMessageEventArgs.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgClientMessageEventArgs.cs 11 Sep 2005 12:12:31 -0000 1.2 --- PgClientMessageEventArgs.cs 11 Sep 2005 13:29:16 -0000 1.3 *************** *** 18,22 **** using System; using PostgreSql.Data.Protocol; - using PostgreSql.Data.DbSchema; namespace PostgreSql.Data.Protocol --- 18,21 ---- Index: PgClientNotificationEventArgs.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgClientNotificationEventArgs.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** PgClientNotificationEventArgs.cs 11 Sep 2005 12:12:31 -0000 1.3 --- PgClientNotificationEventArgs.cs 11 Sep 2005 13:29:16 -0000 1.4 *************** *** 18,22 **** using System; using PostgreSql.Data.Protocol; - using PostgreSql.Data.DbSchema; namespace PostgreSql.Data.Protocol --- 18,21 ---- |
From: Carlos G. Á. <car...@us...> - 2005-09-11 13:08:31
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/Doc In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv22194 Removed Files: C_Sharp_Naming_Guidelines.pdf Log Message: removed file --- C_Sharp_Naming_Guidelines.pdf DELETED --- |
From: Carlos G. Á. <car...@us...> - 2005-09-11 12:16:41
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/WindowsSetup In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13787 Removed Files: PgSqlClientSetup.gi2 Log Message: removed file --- PgSqlClientSetup.gi2 DELETED --- |
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12804/source/PostgreSql/Data/PostgreSqlClient Modified Files: PgCommand.cs PgCommandBuilder.cs PgConnection.cs PgConnectionInternal.cs PgConnectionPool.cs PgConnectionStringBuilder.cs PgDataAdapter.cs PgDataReader.cs PgDbType.cs PgError.cs PgErrorCollection.cs PgException.cs PgInfoMessageEventArgs.cs PgNotificationEventArgs.cs PgNotificationEventHandler.cs PgParameter.cs PgParameterCollection.cs PgRowUpdatedEventArgs.cs PgRowUpdatingEventArgs.cs PgTransaction.cs Log Message: Sources relicensed under the IDPL Index: PgTransaction.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgTransaction.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgTransaction.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgTransaction.cs 11 Sep 2005 12:12:31 -0000 1.3 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgInfoMessageEventArgs.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgInfoMessageEventArgs.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgInfoMessageEventArgs.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgInfoMessageEventArgs.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgNotificationEventHandler.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgNotificationEventHandler.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgNotificationEventHandler.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgNotificationEventHandler.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgConnectionPool.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgConnectionPool.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgConnectionPool.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgConnectionPool.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,19 **** ! // ! // Firebird .NET Data Provider - Firebird managed data provider for .NET and Mono ! // Copyright (C) 2002-2004 Carlos Guzman Alvarez ! // ! // Distributable under LGPL license. ! // You may obtain a copy of the License at http://www.gnu.org/copyleft/lesser.html ! // ! // This library is free software; you can redistribute it and/or ! // modify it under the terms of the GNU Lesser General Public ! // License as published by the Free Software Foundation; either ! // version 2.1 of the License, or (at your option) any later version. ! // ! // This library is distributed in the hope that it will be useful, ! // but WITHOUT ANY WARRANTY; without even the implied warranty of ! // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! // Lesser General Public License for more details. ! // using System; --- 1,18 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. ! * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. ! */ using System; Index: PgConnectionInternal.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgConnectionInternal.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** PgConnectionInternal.cs 10 Sep 2005 12:12:14 -0000 1.3 --- PgConnectionInternal.cs 11 Sep 2005 12:12:31 -0000 1.4 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ *************** *** 177,199 **** } - public DataTable GetSchema(string collectionName, string[] restrictions) - { - PgDbSchema dbSchema = PgDbSchemaFactory.GetSchema(collectionName); - - if (dbSchema == null) - { - throw new NotSupportedException("Specified schema type is not supported."); - } - if (restrictions != null) - { - if (restrictions.Length > dbSchema.RestrictionColumns.Count) - { - throw new InvalidOperationException("The number of specified restrictions is not valid."); - } - } - - return dbSchema.GetSchema(this.owningConnection, restrictions); - } - public void DisposeActiveTransaction() { --- 176,179 ---- Index: PgConnectionStringBuilder.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgConnectionStringBuilder.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgConnectionStringBuilder.cs 10 Sep 2005 12:12:14 -0000 1.1 --- PgConnectionStringBuilder.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgDbType.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgDbType.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgDbType.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgDbType.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgDataReader.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgDataReader.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgDataReader.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgDataReader.cs 11 Sep 2005 12:12:31 -0000 1.3 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgCommandBuilder.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgCommandBuilder.cs,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** PgCommandBuilder.cs 10 Sep 2005 12:07:16 -0000 1.3 --- PgCommandBuilder.cs 11 Sep 2005 12:12:31 -0000 1.4 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgErrorCollection.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgErrorCollection.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgErrorCollection.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgErrorCollection.cs 11 Sep 2005 12:12:31 -0000 1.3 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgError.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgError.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgError.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgError.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgParameterCollection.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgParameterCollection.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgParameterCollection.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgParameterCollection.cs 11 Sep 2005 12:12:31 -0000 1.3 *************** *** 1,20 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Data; --- 1,20 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ + using System; using System.Data; Index: PgNotificationEventArgs.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgNotificationEventArgs.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgNotificationEventArgs.cs 10 Sep 2005 12:07:16 -0000 1.2 --- PgNotificationEventArgs.cs 11 Sep 2005 12:12:31 -0000 1.3 *************** *** 1,20 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using PostgreSql.Data.Protocol; --- 1,20 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ + using System; using PostgreSql.Data.Protocol; Index: PgParameter.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgParameter.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgParameter.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgParameter.cs 11 Sep 2005 12:12:31 -0000 1.3 *************** *** 1,20 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Data; --- 1,20 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ + using System; using System.Data; Index: PgDataAdapter.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgDataAdapter.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgDataAdapter.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgDataAdapter.cs 11 Sep 2005 12:12:31 -0000 1.3 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgCommand.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgCommand.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgCommand.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgCommand.cs 11 Sep 2005 12:12:31 -0000 1.3 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgRowUpdatedEventArgs.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgRowUpdatedEventArgs.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgRowUpdatedEventArgs.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgRowUpdatedEventArgs.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,20 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Data; --- 1,20 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ + using System; using System.Data; Index: PgException.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgException.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgException.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgException.cs 11 Sep 2005 12:12:31 -0000 1.3 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgConnection.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgConnection.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgConnection.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgConnection.cs 11 Sep 2005 12:12:31 -0000 1.3 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ *************** *** 24,32 **** using System.Collections; using System.ComponentModel; - using System.Net.Security; - using System.Security.Cryptography; - using System.Security.Cryptography.X509Certificates; - using PostgreSql.Data.Protocol; namespace PostgreSql.Data.PostgreSqlClient --- 23,28 ---- using System.Collections; using System.ComponentModel; using PostgreSql.Data.Protocol; + using PostgreSql.Data.Schema; namespace PostgreSql.Data.PostgreSqlClient *************** *** 411,414 **** --- 407,414 ---- } + #endregion + + #region · Schema Methods · + public override DataTable GetSchema() { *************** *** 425,432 **** if (this.state == ConnectionState.Closed) { ! throw new InvalidOperationException(""); } ! return this.connectionInternal.GetSchema(collectionName, restrictions); } --- 425,432 ---- if (this.state == ConnectionState.Closed) { ! throw new InvalidOperationException("Connection should be valid and open."); } ! return PgSchemaFactory.GetSchema(this, collectionName, restrictions); } Index: PgRowUpdatingEventArgs.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgRowUpdatingEventArgs.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgRowUpdatingEventArgs.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgRowUpdatingEventArgs.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,20 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Data; --- 1,20 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ + using System; using System.Data; |
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12804/source/PostgreSql/Data/Protocol Modified Files: InfoMessageCallback.cs NotificationCallback.cs PgAuthMethods.cs PgBackendCodes.cs PgCharSet.cs PgCharSetCollection.cs PgClientError.cs PgClientErrorCollection.cs PgClientException.cs PgClientMessageEventArgs.cs PgClientMessageEventHandler.cs PgClientNotificationEventArgs.cs PgClientNotificationEventHandler.cs PgCodes.cs PgConnectionParams.cs PgDataType.cs PgDbClient.cs PgErrorCodes.cs PgFieldDescriptor.cs PgFrontEndCodes.cs PgOutputPacket.cs PgParameter.cs PgResponsePacket.cs PgRowDescriptor.cs PgStatement.cs PgStatementStatus.cs PgType.cs PgTypeCollection.cs PgTypeFormat.cs PgTypeStringFormats.cs SslConnectionCallback.cs Log Message: Sources relicensed under the IDPL Index: PgTypeFormat.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgTypeFormat.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgTypeFormat.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgTypeFormat.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgStatement.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgStatement.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgStatement.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgStatement.cs 11 Sep 2005 12:12:31 -0000 1.3 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgOutputPacket.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgOutputPacket.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgOutputPacket.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgOutputPacket.cs 11 Sep 2005 12:12:31 -0000 1.3 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgClientError.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgClientError.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgClientError.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgClientError.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgParameter.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgParameter.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgParameter.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgParameter.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgBackendCodes.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgBackendCodes.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgBackendCodes.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgBackendCodes.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgDataType.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgDataType.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgDataType.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgDataType.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgResponsePacket.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgResponsePacket.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgResponsePacket.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgResponsePacket.cs 11 Sep 2005 12:12:31 -0000 1.3 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgType.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgType.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgType.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgType.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgCodes.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgCodes.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgCodes.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgCodes.cs 11 Sep 2005 12:12:31 -0000 1.3 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgCharSetCollection.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgCharSetCollection.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgCharSetCollection.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgCharSetCollection.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgClientMessageEventArgs.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgClientMessageEventArgs.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgClientMessageEventArgs.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgClientMessageEventArgs.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgClientException.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgClientException.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgClientException.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgClientException.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgTypeCollection.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgTypeCollection.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgTypeCollection.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgTypeCollection.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgStatementStatus.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgStatementStatus.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgStatementStatus.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgStatementStatus.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgErrorCodes.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgErrorCodes.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgErrorCodes.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgErrorCodes.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgDbClient.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgDbClient.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgDbClient.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgDbClient.cs 11 Sep 2005 12:12:31 -0000 1.3 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgRowDescriptor.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgRowDescriptor.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgRowDescriptor.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgRowDescriptor.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: SslConnectionCallback.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/SslConnectionCallback.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** SslConnectionCallback.cs 8 Sep 2005 18:41:55 -0000 1.1 --- SslConnectionCallback.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgClientErrorCollection.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgClientErrorCollection.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgClientErrorCollection.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgClientErrorCollection.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgFrontEndCodes.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgFrontEndCodes.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgFrontEndCodes.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgFrontEndCodes.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgClientNotificationEventHandler.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgClientNotificationEventHandler.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgClientNotificationEventHandler.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgClientNotificationEventHandler.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,20 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; --- 1,20 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ + using System; Index: PgAuthMethods.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgAuthMethods.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgAuthMethods.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgAuthMethods.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgConnectionParams.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgConnectionParams.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgConnectionParams.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgConnectionParams.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,20 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Text; --- 1,20 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ + using System; using System.Text; *************** *** 22,26 **** namespace PostgreSql.Data.Protocol { ! internal class PgConnectionParams { #region · Fields · --- 22,26 ---- namespace PostgreSql.Data.Protocol { ! internal sealed class PgConnectionOptions { #region · Fields · *************** *** 126,130 **** #region · Constructors · ! public PgConnectionParams() { this.serverName = "localhost"; --- 126,130 ---- #region · Constructors · ! public PgConnectionOptions() { this.serverName = "localhost"; Index: NotificationCallback.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/NotificationCallback.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** NotificationCallback.cs 8 Sep 2005 18:41:55 -0000 1.1 --- NotificationCallback.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgCharSet.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgCharSet.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgCharSet.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgCharSet.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgClientMessageEventHandler.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgClientMessageEventHandler.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgClientMessageEventHandler.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgClientMessageEventHandler.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgTypeStringFormats.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgTypeStringFormats.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgTypeStringFormats.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgTypeStringFormats.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: InfoMessageCallback.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/InfoMessageCallback.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** InfoMessageCallback.cs 8 Sep 2005 18:41:55 -0000 1.1 --- InfoMessageCallback.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgFieldDescriptor.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgFieldDescriptor.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgFieldDescriptor.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgFieldDescriptor.cs 11 Sep 2005 12:12:31 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgClientNotificationEventArgs.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data... [truncated message content] |
From: Carlos G. Á. <car...@us...> - 2005-09-11 12:12:40
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PgTypes In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12804/source/PostgreSql/Data/PgTypes Modified Files: PgBox.cs PgCircle.cs PgLSeg.cs PgLine.cs PgPath.cs PgPoint.cs PgPolygon.cs PgTimeSpan.cs Log Message: Sources relicensed under the IDPL Index: PgTimeSpan.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PgTypes/PgTimeSpan.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgTimeSpan.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgTimeSpan.cs 11 Sep 2005 12:12:30 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgPoint.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PgTypes/PgPoint.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgPoint.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgPoint.cs 11 Sep 2005 12:12:30 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgCircle.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PgTypes/PgCircle.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgCircle.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgCircle.cs 11 Sep 2005 12:12:30 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgPath.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PgTypes/PgPath.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgPath.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgPath.cs 11 Sep 2005 12:12:30 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgBox.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PgTypes/PgBox.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgBox.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgBox.cs 11 Sep 2005 12:12:30 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgLSeg.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PgTypes/PgLSeg.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgLSeg.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgLSeg.cs 11 Sep 2005 12:12:30 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgLine.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PgTypes/PgLine.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgLine.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgLine.cs 11 Sep 2005 12:12:30 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgPolygon.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PgTypes/PgPolygon.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgPolygon.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgPolygon.cs 11 Sep 2005 12:12:30 -0000 1.2 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ |
From: Carlos G. Á. <car...@us...> - 2005-09-11 12:12:39
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Design/ParameterCollection In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12804/source/PostgreSql/Data/Design/ParameterCollection Modified Files: PgParameterCollectionEditor.cs PgParameterConverter.cs Log Message: Sources relicensed under the IDPL Index: PgParameterConverter.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Design/ParameterCollection/PgParameterConverter.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgParameterConverter.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgParameterConverter.cs 11 Sep 2005 12:12:30 -0000 1.3 *************** *** 1,18 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ --- 1,17 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ Index: PgParameterCollectionEditor.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Design/ParameterCollection/PgParameterCollectionEditor.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgParameterCollectionEditor.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgParameterCollectionEditor.cs 11 Sep 2005 12:12:30 -0000 1.3 *************** *** 1,20 **** ! /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ ! * Copyright (c) 2003-2005 Carlos Guzman Alvarez ! * ! * This library is free software; you can redistribute it and/or ! * modify it under the terms of the GNU Lesser General Public ! * License as published by the Free Software Foundation; either ! * version 2.1 of the License, or (at your option) any later version. * ! * This library is distributed in the hope that it will be useful, ! * but WITHOUT ANY WARRANTY; without even the implied warranty of ! * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! * Lesser General Public License for more details. * ! * You should have received a copy of the GNU Lesser General Public ! * License along with this library; if not, write to the Free Software ! * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Data; --- 1,20 ---- ! /* ! * PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * ! * The contents of this file are subject to the Initial ! * Developer's Public License Version 1.0 (the "License"); ! * you may not use this file except in compliance with the ! * License. ! * ! * Software distributed under the License is distributed on ! * an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either ! * express or implied. See the License for the specific ! * language governing rights and limitations under the License. * ! * Copyright (c) 2003, 2005 Carlos Guzman Alvarez ! * All Rights Reserved. */ + using System; using System.Data; |
From: Carlos G. Á. <car...@us...> - 2005-09-11 12:12:39
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12804/source/PostgreSql/Data Modified Files: AssemblyInfo.cs Log Message: Sources relicensed under the IDPL Index: AssemblyInfo.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/AssemblyInfo.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** AssemblyInfo.cs 10 Sep 2005 12:06:17 -0000 1.1 --- AssemblyInfo.cs 11 Sep 2005 12:12:30 -0000 1.2 *************** *** 1,20 **** - /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ - * Copyright (c) 2003-2005 Carlos Guzman Alvarez - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - using System; using System.Runtime.CompilerServices; --- 1,2 ---- *************** *** 30,34 **** [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] ! [assembly: AssemblyVersion("1.0.*")] [assembly: AssemblyDelaySign(false)] [assembly: AssemblyKeyFile("PostgreSql.Data.PostgreSqlClient.snk")] --- 12,16 ---- [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] ! [assembly: AssemblyVersion("2.0.0.0")] [assembly: AssemblyDelaySign(false)] [assembly: AssemblyKeyFile("PostgreSql.Data.PostgreSqlClient.snk")] |
From: Carlos G. Á. <car...@us...> - 2005-09-11 12:12:38
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12804 Modified Files: license.txt Added Files: license.html Removed Files: Mono.Security.License.txt PostgreSql.Data.PgSqlClient.License.html PostgreSql.Data.PgSqlClient.License.txt Log Message: Sources relicensed under the IDPL --- PostgreSql.Data.PgSqlClient.License.txt DELETED --- --- NEW FILE: license.html --- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD> <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=windows-1252"> <TITLE>Initial Developer's PUBLIC LICENSE Version 1.0</TITLE> <META NAME="GENERATOR" CONTENT="OpenOffice.org 1.1.1 (Win32)"> <META NAME="CREATED" CONTENT="20040603;16204312"> <META NAME="CHANGED" CONTENT="20040603;16215490"> <STYLE> <!-- TD P { color: #000000; font-family: "verdana", "arial", "geneva", sans-serif; font-size: 9pt } P { color: #000000; font-family: "verdana", "arial", "geneva", sans-serif; font-size: 9pt } H2 { color: #008080; font-family: "verdana", "arial", "geneva", sans-serif; font-size: 13pt } A:visited { font-family: "verdana", "arial", "geneva", sans-serif; font-size: 9pt; text-decoration: none } A:link { color: #0000ff; font-family: "verdana", "arial", "geneva", sans-serif; font-size: 9pt; text-decoration: none } --> </STYLE> </HEAD> <BODY LANG="es-ES" TEXT="#000000" LINK="#0000ff" BGCOLOR="#ffffff" DIR="LTR"> <TABLE WIDTH=65% CELLPADDING=2 CELLSPACING=2> <TR> <TD> <H2>Initial Developer's PUBLIC LICENSE Version 1.0</H2> </TD> </TR> <TR> <TD> <P>1. Definitions </P> <P>1.0 "<B>Commercial Use</B>" means distribution or otherwise making the Covered Code available to a third party. </P> <P>1.1 ''<B>Contributor</B>'' means each entity that creates or contributes to the creation of Modifications. </P> <P>1.2 ''<B>Contributor Version</B>'' means the combination of the Original Code, prior Modifications used by a Contributor, and the Modifications made by that particular Contributor. </P> <P>1.3. ''<B>Covered Code</B>'' means the Original Code or Modifications or the combination of the Original Code and Modifications, in each case including portions thereof. </P> <P>1.4. ''<B>Electronic Distribution Mechanism</B>'' means a mechanism generally accepted in the software development community for the electronic transfer of data. </P> <P>1.5. ''<B>Executable</B>'' means Covered Code in any form other than Source Code. </P> <P>1.6. ''<B>Initial Developer</B>'' means the individual or entity identified as the Initial Developer in the Source Code notice required by Exhibit A. </P> <P>1.7. ''<B>Larger Work</B>'' means a work which combines Covered Code or portions thereof with code not governed by the terms of this License. </P> <P>1.8. ''<B>License</B>'' means this document. </P> <P>1.8.1. "<B>Licensable</B>" means having the right to grant, to the maximum extent possible, whether at the time of the initial grant or subsequently acquired, any and all of the rights conveyed herein. </P> <P>1.9. ''<B>Modifications</B>'' means any addition to or deletion from the substance or structure of either the Original Code or any previous Modifications. When Covered Code is released as a series of files, a Modification is: </P> <P>Any addition to or deletion from the contents of a file containing Original Code or previous Modifications. </P> <P>Any new file that contains any part of the Original Code or previous Modifications. </P> <P>1.10. ''<B>Original Code</B>'' means Source Code of computer software code which is described in the Source Code notice required by Exhibit A as Original Code, and which, at the time of its release under this License is not already Covered Code governed by this License. </P> <P>1.10.1. "<B>Patent Claims</B>" means any patent claim(s), now owned or hereafter acquired, including without limitation, method, process, and apparatus claims, in any patent Licensable by grantor. </P> <P>1.11. ''<B>Source Code</B>'' means the preferred form of the Covered Code for making modifications to it, including all modules it contains, plus any associated interface definition files, scripts used to control compilation and installation of an Executable, or source code differential comparisons against either the Original Code or another well known, available Covered Code of the Contributor's choice. The Source Code can be in a compressed or archival form, provided the appropriate decompression or de-archiving software is widely available for no charge. </P> <P>1.12. "<B>You</B>'' (or "<B>Your</B>") means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License or a future version of this License issued under Section 6.1. For legal entities, "You'' includes any entity w hich controls, is controlled by, or is under common control with You. For purposes of this definition, "control'' means (a) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (b) ownership of more than fifty percent (50%) of the outstanding shares or beneficial ownership of such entity.</P> <P>2. Source Code License. </P> <P><B>2.1. The Initial Developer Grant.</B> The Initial Developer hereby grants You a world-wide, royalty-free, non-exclusive license, subject to third party intellectual property claims: </P> <P>(a) under intellectual property rights (other than patent or trademark) Licensable by Initial Developer to use, reproduce, modify, display, perform, sublicense and distribute the Original Code (or portions thereof) with or without Modifications, and/or as part of a Larger Work; and </P> <P>(b) under Patents Claims infringed by the making, using or selling of Original Code, to make, have made, use, practice, sell, and offer for sale, and/or otherwise dispose of the Original Code (or portions thereof). </P> <P>(c) the licenses granted in this Section 2.1(a) and (b) are effective on the date Initial Developer first distributes Original Code under the terms of this License. </P> <P>d) Notwithstanding Section 2.1(b) above, no patent license is granted:</P> <P>1) for code that You delete from the Original Code; </P> <P>2) separate from the Original Code; or </P> <P>3) for infringements caused by: </P> <P>i) the modification of the Original Code or </P> <P>ii) the combination of the Original Code with other software or devices. </P> <P><B>2.2. Contributor Grant.</B> Subject to third party intellectual property claims, each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license </P> <P>(a) under intellectual property rights (other than patent or trademark) Licensable by Contributor, to use, reproduce, modify, display, perform, sublicense and distribute the Modifications created by such Contributor (or portions thereof) either on an unmodified basis, with other Modifications, as Covered Code and/or as part of a Larger Work; and </P> <P>(b) under Patent Claims infringed by the making, using, or selling of Modifications made by that Contributor either alone and/or in combination with its Contributor Version (or portions of such combination), to make, use, sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications made by that Contributor (or portions thereof); and 2) the combination of Modifications made by that Contributor with its Contributor Version (or portions of such combination). </P> <P>(c) the licenses granted in Sections 2.2(a) and 2.2(b) are effective on the date Contributor first makes Commercial Use of the Covered Code. </P> <P>(d) Notwithstanding Section 2.2(b) above, no patent license is granted: </P> <P>1) for any code that Contributor has deleted from the Contributor Version; </P> <P>2) separate from the Contributor Version; </P> <P>3) for infringements caused by: i) third party modifications of Contributor Version or </P> <P>ii) the combination of Modifications made by that Contributor with other software (except as part of the Contributor Version) or other devices; or </P> <P>4) under Patent Claims infringed by Covered Code in the absence of Modifications made by that Contributor. </P> <P>3. Distribution Obligations. </P> <P><B>3.1. Application of License.</B> The Modifications which You create or to which You contribute are governed by the terms of this License, including without limitation Section 2.2. The Source Code version of Covered Code may be distributed only under the terms of this License or a future version of this License released under Section 6.1, and You must include a copy of this License with every copy of the Source Code You distribute. You may not offer or impose any terms on any Source Code version that alters or restricts the applicable version of this License or the recipients' rights hereunder. However, You may include an additional document offering the additional rights described in Section 3.5.</P> <P><B>3.2. Availability of Source Code</B>. Any Modification which You create or to which You contribute must be made available in Source Code form under the terms of this License either on the same media as an Executable version or via an accepted Electronic Distribution Mechanism to anyone to whom you made an Executable version available; and if made available via Electronic Distribution Mechanism, must remain available for at least twelve (12) months after the date it initially became available, or at least six (6) months after a subsequent version of that particular Modification has been made available to such recipients. You are responsible for ensuring that the Source Code version remains available even if the Electronic Distribution Mechanism is maintained by a third party. </P> <P><B>3.3. Description of Modifications.</B> You must cause all Covered Code to which You contribute to contain a file documenting the changes You made to create that Covered Code and the date of any change. You must include a prominent statement that the Modification is derived, directly or indirectly, from Original Code provided by the Initial Developer and including the name of the Initial Developer in </P> <P>(a) the Source Code, and </P> <P>(b) in any notice in an Executable version or related documentation in which You describe the origin or ownership of the Covered Code.</P> <P><B>3.4. Intellectual Property Matters </B> </P> <P>a) Third Party Claims. If Contributor has knowledge that a license under a third party's intellectual property rights is required to exercise the rights granted by such Contributor under Sections 2.1 or 2.2, Contributor must include a text file with the Source Code distribution titled "LEGAL'' which describes the claim and the party making the claim in sufficient detail that a recipient will know whom to contact. If Contributor obtains such knowledge after the Modification is made available as described in Section 3.2, Contributor shall promptly modify the LEGAL file in all copies Contributor makes available thereafter and shall take other steps (such as notifying appropriate mailing lists or newsgroups) reasonably calculated to inform those who received the Covered Code that new knowledge has been obtained. </P> <P>(b) Contributor APIs. If Contributor's Modifications include an application programming interface and Contributor has knowledge of patent licenses which are reasonably necessary to implement that API, Contributor must also include this information in the LEGAL file. </P> <P>(c) Representations. Contributor represents that, except as disclosed pursuant to Section 3.4(a) above, Contributor believes that Contributor's Modifications are Contributor's original creation(s) and/or Contributor has sufficient rights to grant the rights conveyed by this License. </P> <P><B>3.5. Required Notices.</B> You must duplicate the notice in Exhibit A in each file of the Source Code. If it is not possible to put such notice in a particular Source Code file due to its structure, then You must include such notice in a location (such as a relevant directory) where a user would be likely to look for such a notice. If You created one or more Modification(s) You may add your name as a Contributor to the notice described in Exhibit A. You must also duplicate this License in any documentation for the Source Code where You describe recipients' rights or ownership rights relating to Covered Code. You may choose to offer, and to charge a fee for, warranty, support, indemnity or liability obligations to one or more recipients of Covered Code. However, You may do so only on Your own behalf, and not on behalf of the Initial Developer or any Contributor. You must make it absolutely clear than any such warranty, support, indemnity or liability obligation is offered by You alone, and You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of warranty, support, indemnity or liability terms You offer. </P> <P><B>3.6. Distribution of Executable Versions.</B> You may distribute Covered Code in Executable form only if the requirements of Section 3.1-3.5 have been met for that Covered Code, and if You include a notice stating that the Source Code version of the Covered Code is available under the terms of this License, including a description of how and where You have fulfilled the obligations of Section 3.2. The notice must be conspicuously included in any notice in an Executable version, related documentation or collateral in which You describe recipients' rights relating to the Covered Code. You may distribute the Executable version of Covered Code or ownership rights under a license of Your choice, which may contain terms different from this License, provided that You are in compliance with the terms of this License and hat the license for the Executable version does not attempt to limit or alter the recipient's rights in the Source Code version from the rights set forth in this License. If You distribute the Executable version under a different license You must make it absolutely clear that any terms which differ from this License are offered by You alone, not by the Initial Developer or any Contributor. You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of any such terms You offer. </P> <P><B>3.7. Larger Works.</B> You may create a Larger Work by combining Covered Code with other code not governed by the terms of this License and distribute the Larger Work as a single product. In such a case, You must make sure the requirements of this License are fulfilled for the Covered Code. </P> <P>4. Inability to Comply Due to Statute or Regulation. </P> <P>If it is impossible for You to comply with any of the terms of this License with respect to some or all of the Covered Code due to statute, judicial order, or regulation then You must: </P> <P>(a) comply with the terms of this License to the maximum extent possible; and </P> <P>(b) describe the limitations and the code they affect. Such description must be included in the LEGAL file described in Section 3.4 and must be included with all distributions of the Source Code. Except to the extent prohibited by statute or regulation, such description must be sufficiently detailed for a recipient of ordinary skill to be able to understand it. </P> <P>5. Application of this License.</P> <P>This License applies to code to which the Initial Developer has attached the notice in Exhibit A and to related Covered Code. </P> <P>6. Versions of the License. </P> <P><B>6.1. New Versions.</B> The Initial Developer of this code may publish revised and/or new versions of the License from time to time. Each version will be given a distinguishing version number. </P> <P><B>6.2. Effect of New Versions.</B> Once Covered Code has been published under a particular version of the License, You may always continue to use it under the terms of that version. You may also choose to use such Covered Code under the terms of any subsequent version of the License published by the Initial Developer. No one other than the Initial Developer has the right to modify the terms applicable to Covered Code created under this License. </P> <P><B>6.3. Derivative Works.</B> If You create or use a modified version of this License (which you may only do in order to apply it to code which is not already Covered Code governed by this License), You must </P> <P>(a) rename Your license so that the phrases ''Mozilla'', ''MOZILLAPL'', ''MOZPL'', ''Netscape'', "MPL", ''NPL", or any confusingly similar phrases do not appear in your license (except to note that your license differs from this License) and </P> <P>(b) otherwise make it clear that Your version of the license contains terms which differ from the Mozilla Public License and Netscape Public License. (Filling in the name of the Initial Developer, Original Code or Contributor in the notice described in Exhibit A shall not of themselves be deemed to be modifications of this License.) </P> <P><B>6.4 Origin of the Initial Developer's Public License.</B> The Initial Developer's Public License is based on the Mozilla Public License V 1.1 with the following changes: </P> <P>1) The license is published by the Initial Developer of this code. Only the Initial Developer can modify the terms applicable to Covered Code. </P> <P>2) The license can be modified and used for code which is not already governed by this license. Modified versions of the license must be renamed to avoid confusion with Netscape's license Initial Developer's's license and must include a description of changes from the Initial Developer's Public License. </P> <P>3) The name of the license in Exhibit A is the "Initial Developer's Public License". </P> <P>4) The reference to an alternative license in Exhibit A has been removed . </P> <P>5) Amendments I, II, III, V, and VI have been deleted. </P> <P>6) Exhibit A, Netscape Public License has been deleted </P> <P>7. DISCLAIMER OF WARRANTY. </P> <P>COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS'' BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER.</P> <P>8. TERMINATION. </P> <P>8.1. This License and the rights granted hereunder will terminate automatically if You fail to comply with terms herein and fail to cure such breach within 30 days of becoming aware of the breach. All sublicenses to the Covered Code which are properly granted shall survive any termination of this License. Provisions which, by their nature, must remain in effect beyond the termination of this License shall survive. </P> <P>8.2. If You initiate litigation by asserting a patent infringement claim (excluding declatory judgment actions) against Initial Developer or a Contributor (the Initial Developer or Contributor against whom You file such action is referred to as "Participant") alleging that: </P> <P>(a) such Participant's Contributor Version directly or indirectly infringes any patent, then any and all rights granted by such Participant to You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice from Participant terminate prospectively, unless if within 60 days after receipt of notice You either: </P> <P>(i) agree in writing to pay Participant a mutually agreeable reasonable royalty for Your past and future use of Modifications made by such Participant, or</P> <P>(ii) withdraw Your litigation claim with respect to the Contributor Version against such Participant. </P> <P>If within 60 days of notice, a reasonable royalty and payment arrangement are not mutually agreed upon in writing by the parties or the litigation claim is not withdrawn, the rights granted by Participant to You under Sections 2.1 and/or 2.2 automatically terminate at the expiration of the 60 day notice period specified above.</P> <P>(b) any software, hardware, or device, other than such Participant's Contributor Version, directly or indirectly infringes any patent, then any rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are revoked effective as of the date You first made, used, sold, distributed, or had made, Modifications made by that Participant. </P> <P>8.3. If You assert a patent infringement claim against Participant alleging that such Participant's Contributor Version directly or indirectly infringes any patent where such claim is resolved (such as by license or settlement) prior to the initiation of patent infringement litigation, then the reasonable value of the licenses granted by such Participant under Sections 2.1 or 2.2 shall be taken into account in determining the amount or value of any payment or license. </P> <P>8.4. In the event of termination under Sections 8.1 or 8.2 above, all end user license agreements (excluding distributors and resellers) which have been validly granted by You or any distributor hereunder prior to termination shall survive termination. </P> <P>9. LIMITATION OF LIABILITY.</P> <P>UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU. </P> <P>10. U.S. GOVERNMENT END USERS. </P> <P>The Covered Code is a ''commercial item,'' as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of ''commercial computer software'' and ''commercial computer software documentation,'' as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users acquire Covered Code with only those rights set forth herein. </P> <P>11. MISCELLANEOUS. </P> <P>This License represents the complete agreement concerning subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. This License shall be governed by California law provisions (except to the extent applicable law, if any, provides otherwise), excluding its conflict-of-law provisions. With respect to disputes in which at least one party is a citizen of, or an entity chartered or registered to do business in the United States of America, any litigation relating to this License shall be subject to the jurisdiction of the Federal Courts of the Northern District of California, with venue lying in Santa Clara County, California, with the losing party responsible for costs, including without limitation, court costs and reasonable attorneys' fees and expenses. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any law or regulation which provides that the language of a contract shall be construed against the drafter shall not apply to this License. </P> <P>12. RESPONSIBILITY FOR CLAIMS. </P> <P>As between Initial Developer and the Contributors, each party is responsible for claims and damages arising, directly or indirectly, out of its utilization of rights under this License and You agree to work with Initial Developer and Contributors to distribute such responsibility on an equitable basis. Nothing herein is intended or shall be deemed to constitute any admission of liability. </P> <P>13. MULTIPLE-LICENSED CODE. </P> <P>Initial Developer may designate portions of the Covered Code as "Multiple-Licensed". "Multiple-Licensed" means that the Initial Devpoeloper permits you to utilize portions of the Covered Code under Your choice of the IDPL or the alternative licenses, if any, specified by the Initial Developer in the file described in Exhibit A. </P> <P><B>EXHIBIT A</B> -Initial Developer's Public License. </P> <P>The contents of this file are subject to the Initial Developer's Public License Version 1.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License <A HREF="http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_idpl">here.</A></P> <P>Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. </P> <P>The Original Code is ______________________________________. </P> <P>The Initial Developer of the Original Code is ________________________. </P> <P>Portions created by ______________________ <BR>are Copyright (C) ______ _______________________. </P> <P>All Rights Reserved. </P> <P>Contributor(s): ______________________________________. </P> </TD> </TR> </TABLE> <P><BR><BR> </P> </BODY> </HTML> --- Mono.Security.License.txt DELETED --- Index: license.txt =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/license.txt,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** license.txt 16 Oct 2003 10:34:53 -0000 1.3 --- license.txt 11 Sep 2005 12:12:30 -0000 1.4 *************** *** 1,540 **** ! 1. PgSqlClient & NUnit test suite sources license ! 2. Transport Security Layer (TLS) library sources license ! 1. PgSqlClient & NUnit test suite sources lincense ! -- ----------- - ----- ---- ----- ------- -------- ! GNU LESSER GENERAL PUBLIC LICENSE ! Version 2.1, February 1999 ! Copyright (C) 1991, 1999 Free Software Foundation, Inc. ! 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! Everyone is permitted to copy and distribute verbatim copies ! of this license document, but changing it is not allowed. ! [This is the first released version of the Lesser GPL. It also counts ! as the successor of the GNU Library Public License, version 2, hence ! the version number 2.1.] ! Preamble ! The licenses for most software are designed to take away your ! freedom to share and change it. By contrast, the GNU General Public ! Licenses are intended to guarantee your freedom to share and change ! free software--to make sure the software is free for all its users. ! This license, the Lesser General Public License, applies to some ! specially designated software packages--typically libraries--of the ! Free Software Foundation and other authors who decide to use it. You ! can use it too, but we suggest you first think carefully about whether ! this license or the ordinary General Public License is the better ! strategy to use in any particular case, based on the explanations below. ! When we speak of free software, we are referring to freedom of use, ! not price. Our General Public Licenses are designed to make sure that ! you have the freedom to distribute copies of free software (and charge ! for this service if you wish); that you receive source code or can get ! it if you want it; that you can change the software and use pieces of ! it in new free programs; and that you are informed that you can do ! these things. ! To protect your rights, we need to make restrictions that forbid ! distributors to deny you these rights or to ask you to surrender these ! rights. These restrictions translate to certain responsibilities for ! you if you distribute copies of the library or if you modify it. ! For example, if you distribute copies of the library, whether gratis ! or for a fee, you must give the recipients all the rights that we gave ! you. You must make sure that they, too, receive or can get the source ! code. If you link other code with the library, you must provide ! complete object files to the recipients, so that they can relink them ! with the library after making changes to the library and recompiling ! it. And you must show them these terms so they know their rights. ! We protect your rights with a two-step method: (1) we copyright the ! library, and (2) we offer you this license, which gives you legal ! permission to copy, distribute and/or modify the library. ! To protect each distributor, we want to make it very clear that ! there is no warranty for the free library. Also, if the library is ! modified by someone else and passed on, the recipients should know ! that what they have is not the original version, so that the original ! author's reputation will not be affected by problems that might be ! introduced by others. ! ! Finally, software patents pose a constant threat to the existence of ! any free program. We wish to make sure that a company cannot ! effectively restrict the users of a free program by obtaining a ! restrictive license from a patent holder. Therefore, we insist that ! any patent license obtained for a version of the library must be ! consistent with the full freedom of use specified in this license. ! Most GNU software, including some libraries, is covered by the ! ordinary GNU General Public License. This license, the GNU Lesser ! General Public License, applies to certain designated libraries, and ! is quite different from the ordinary General Public License. We use ! this license for certain libraries in order to permit linking those ! libraries into non-free programs. ! When a program is linked with a library, whether statically or using ! a shared library, the combination of the two is legally speaking a ! combined work, a derivative of the original library. The ordinary ! General Public License therefore permits such linking only if the ! entire combination fits its criteria of freedom. The Lesser General ! Public License permits more lax criteria for linking other code with ! the library. ! We call this license the "Lesser" General Public License because it ! does Less to protect the user's freedom than the ordinary General ! Public License. It also provides other free software developers Less ! of an advantage over competing non-free programs. These disadvantages ! are the reason we use the ordinary General Public License for many ! libraries. However, the Lesser license provides advantages in certain ! special circumstances. ! For example, on rare occasions, there may be a special need to ! encourage the widest possible use of a certain library, so that it becomes ! a de-facto standard. To achieve this, non-free programs must be ! allowed to use the library. A more frequent case is that a free ! library does the same job as widely used non-free libraries. In this ! case, there is little to gain by limiting the free library to free ! software only, so we use the Lesser General Public License. ! In other cases, permission to use a particular library in non-free ! programs enables a greater number of people to use a large body of ! free software. For example, permission to use the GNU C Library in ! non-free programs enables many more people to use the whole GNU ! operating system, as well as its variant, the GNU/Linux operating ! system. ! Although the Lesser General Public License is Less protective of the ! users' freedom, it does ensure that the user of a program that is ! linked with the Library has the freedom and the wherewithal to run ! that program using a modified version of the Library. ! The precise terms and conditions for copying, distribution and ! modification follow. Pay close attention to the difference between a ! "work based on the library" and a "work that uses the library". The ! former contains code derived from the library, whereas the latter must ! be combined with the library in order to run. ! ! GNU LESSER GENERAL PUBLIC LICENSE ! TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION ! 0. This License Agreement applies to any software library or other ! program which contains a notice placed by the copyright holder or ! other authorized party saying it may be distributed under the terms of ! this Lesser General Public License (also called "this License"). ! Each licensee is addressed as "you". ! A "library" means a collection of software functions and/or data ! prepared so as to be conveniently linked with application programs ! (which use some of those functions and data) to form executables. ! The "Library", below, refers to any such software library or work ! which has been distributed under these terms. A "work based on the ! Library" means either the Library or any derivative work under ! copyright law: that is to say, a work containing the Library or a ! portion of it, either verbatim or with modifications and/or translated ! straightforwardly into another language. (Hereinafter, translation is ! included without limitation in the term "modification".) ! "Source code" for a work means the preferred form of the work for ! making modifications to it. For a library, complete source code means ! all the source code for all modules it contains, plus any associated ! interface definition files, plus the scripts used to control compilation ! and installation of the library. ! Activities other than copying, distribution and modification are not ! covered by this License; they are outside its scope. The act of ! running a program using the Library is not restricted, and output from ! such a program is covered only if its contents constitute a work based ! on the Library (independent of the use of the Library in a tool for ! writing it). Whether that is true depends on what the Library does ! and what the program that uses the Library does. ! ! 1. You may copy and distribute verbatim copies of the Library's ! complete source code as you receive it, in any medium, provided that ! you conspicuously and appropriately publish on each copy an ! appropriate copyright notice and disclaimer of warranty; keep intact ! all the notices that refer to this License and to the absence of any ! warranty; and distribute a copy of this License along with the ! Library. ! You may charge a fee for the physical act of transferring a copy, ! and you may at your option offer warranty protection in exchange for a ! fee. ! ! 2. You may modify your copy or copies of the Library or any portion ! of it, thus forming a work based on the Library, and copy and ! distribute such modifications or work under the terms of Section 1 ! above, provided that you also meet all of these conditions: ! a) The modified work must itself be a software library. ! b) You must cause the files modified to carry prominent notices ! stating that you changed the files and the date of any change. ! c) You must cause the whole of the work to be licensed at no ! charge to all third parties under the terms of this License. ! d) If a facility in the modified Library refers to a function or a ! table of data to be supplied by an application program that uses ! the facility, other than as an argument passed when the facility ! is invoked, then you must make a good faith effort to ensure that, ! in the event an application does not supply such function or ! table, the facility still operates, and performs whatever part of ! its purpose remains meaningful. ! (For example, a function in a library to compute square roots has ! a purpose that is entirely well-defined independent of the ! application. Therefore, Subsection 2d requires that any ! application-supplied function or table used by this function must ! be optional: if the application does not supply it, the square ! root function must still compute square roots.) ! These requirements apply to the modified work as a whole. If ! identifiable sections of that work are not derived from the Library, ! and can be reasonably considered independent and separate works in ! themselves, then this License, and its terms, do not apply to those ! sections when you distribute them as separate works. But when you ! distribute the same sections as part of a whole which is a work based ! on the Library, the distribution of the whole must be on the terms of ! this License, whose permissions for other licensees extend to the ! entire whole, and thus to each and every part regardless of who wrote ! it. ! Thus, it is not the intent of this section to claim rights or contest ! your rights to work written entirely by you; rather, the intent is to ! exercise the right to control the distribution of derivative or ! collective works based on the Library. ! In addition, mere aggregation of another work not based on the Library ! with the Library (or with a work based on the Library) on a volume of ! a storage or distribution medium does not bring the other work under ! the scope of this License. ! 3. You may opt to apply the terms of the ordinary GNU General Public ! License instead of this License to a given copy of the Library. To do ! this, you must alter all the notices that refer to this License, so ! that they refer to the ordinary GNU General Public License, version 2, ! instead of to this License. (If a newer version than version 2 of the ! ordinary GNU General Public License has appeared, then you can specify ! that version instead if you wish.) Do not make any other change in ! these notices. ! ! Once this change is made in a given copy, it is irreversible for ! that copy, so the ordinary GNU General Public License applies to all ! subsequent copies and derivative works made from that copy. ! This option is useful when you wish to copy part of the code of ! the Library into a program that is not a library. ! 4. You may copy and distribute the Library (or a portion or ! derivative of it, under Section 2) in object code or executable form ! under the terms of Sections 1 and 2 above provided that you accompany ! it with the complete corresponding machine-readable source code, which ! must be distributed under the terms of Sections 1 and 2 above on a ! medium customarily used for software interchange. ! If distribution of object code is made by offering access to copy ! from a designated place, then offering equivalent access to copy the ! source code from the same place satisfies the requirement to ! distribute the source code, even though third parties are not ! compelled to copy the source along with the object code. ! 5. A program that contains no derivative of any portion of the ! Library, but is designed to work with the Library by being compiled or ! linked with it, is called a "work that uses the Library". Such a ! work, in isolation, is not a derivative work of the Library, and ! therefore falls outside the scope of this License. ! However, linking a "work that uses the Library" with the Library ! creates an executable that is a derivative of the Library (because it ! contains portions of the Library), rather than a "work that uses the ! library". The executable is therefore covered by this License. ! Section 6 states terms for distribution of such executables. ! When a "work that uses the Library" uses material from a header file ! that is part of the Library, the object code for the work may be a ! derivative work of the Library even though the source code is not. ! Whether this is true is especially significant if the work can be ! linked without the Library, or if the work is itself a library. The ! threshold for this to be true is not precisely defined by law. ! If such an object file uses only numerical parameters, data ! structure layouts and accessors, and small macros and small inline ! functions (ten lines or less in length), then the use of the object ! file is unrestricted, regardless of whether it is legally a derivative ! work. (Executables containing this object code plus portions of the ! Library will still fall under Section 6.) ! Otherwise, if the work is a derivative of the Library, you may ! distribute the object code for the work under the terms of Section 6. ! Any executables containing that work also fall under Section 6, ! whether or not they are linked directly with the Library itself. ! ! 6. As an exception to the Sections above, you may also combine or ! link a "work that uses the Library" with the Library to produce a ! work containing portions of the Library, and distribute that work ! under terms of your choice, provided that the terms permit ! modification of the work for the customer's own use and reverse ! engineering for debugging such modifications. ! You must give prominent notice with each copy of the work that the ! Library is used in it and that the Library and its use are covered by ! this License. You must supply a copy of this License. If the work ! during execution displays copyright notices, you must include the ! copyright notice for the Library among them, as well as a reference ! directing the user to the copy of this License. Also, you must do one ! of these things: ! a) Accompany the work with the complete corresponding ! machine-readable source code for the Library including whatever ! changes were used in the work (which must be distributed under ! Sections 1 and 2 above); and, if the work is an executable linked ! with the Library, with the complete machine-readable "work that ! uses the Library", as object code and/or source code, so that the ! user can modify the Library and then relink to produce a modified ! executable containing the modified Library. (It is understood ! that the user who changes the contents of definitions files in the ! Library will not necessarily be able to recompile the application ! to use the modified definitions.) ! b) Use a suitable shared library mechanism for linking with the ! Library. A suitable mechanism is one that (1) uses at run time a ! copy of the library already present on the user's computer system, ! rather than copying library functions into the executable, and (2) ! will operate properly with a modified version of the library, if ! the user installs one, as long as the modified version is ! interface-compatible with the version that the work was made with. ! c) Accompany the work with a written offer, valid for at ! least three years, to give the same user the materials ! specified in Subsection 6a, above, for a charge no more ! than the cost of performing this distribution. ! d) If distribution of the work is made by offering access to copy ! from a designated place, offer equivalent access to copy the above ! specified materials from the same place. ! e) Verify that the user has already received a copy of these ! materials or that you have already sent this user a copy. ! For an executable, the required form of the "work that uses the ! Library" must include any data and utility programs needed for ! reproducing the executable from it. However, as a special exception, ! the materials to be distributed need not include anything that is ! normally distributed (in either source or binary form) with the major ! components (compiler, kernel, and so on) of the operating system on ! which the executable runs, unless that component itself accompanies ! the executable. ! It may happen that this requirement contradicts the license ! restrictions of other proprietary libraries that do not normally ! accompany the operating system. Such a contradiction means you cannot ! use both them and the Library together in an executable that you ! distribute. ! ! 7. You may place library facilities that are a work based on the ! Library side-by-side in a single library together with other library ! facilities not covered by this License, and distribute such a combined ! library, provided that the separate distribution of the work based on ! the Library and of the other library facilities is otherwise ! permitted, and provided that you do these two things: ! a) Accompany the combined library with a copy of the same work ! based on the Library, uncombined with any other library ! facilities. This must be distributed under the terms of the ! Sections above. ! b) Give prominent notice with the combined library of the fact ! that part of it is a work based on the Library, and explaining ! where to find the accompanying uncombined form of the same work. ! 8. You may not copy, modify, sublicense, link with, or distribute ! the Library except as expressly provided under this License. Any ! attempt otherwise to copy, modify, sublicense, link with, or ! distribute the Library is void, and will automatically terminate your ! rights under this License. However, parties who have received copies, ! or rights, from you under this License will not have their licenses ! terminated so long as such parties remain in full compliance. ! 9. You are not required to accept this License, since you have not ! signed it. However, nothing else grants you permission to modify or ! distribute the Library or its derivative works. These actions are ! prohibited by law if you do not accept this License. Therefore, by ! modifying or distributing the Library (or any work based on the ! Library), you indicate your acceptance of this License to do so, and ! all its terms and conditions for copying, distributing or modifying ! the Library or works based on it. ! 10. Each time you redistribute the Library (or any work based on the ! Library), the recipient automatically receives a license from the ! original licensor to copy, distribute, link with or modify the Library ! subject to these terms and conditions. You may not impose any further ! restrictions on the recipients' exercise of the rights granted herein. ! You are not responsible for enforcing compliance by third parties with ! this License. ! ! 11. If, as a consequence of a court judgment or allegation of patent ! infringement or for any other reason (not limited to patent issues), ! conditions are imposed on you (whether by court order, agreement or ! otherwise) that contradict the conditions of this License, they do not ! excuse you from the conditions of this License. If you cannot ! distribute so as to satisfy simultaneously your obligations under this ! License and any other pertinent obligations, then as a consequence you ! may not distribute the Library at all. For example, if a patent ! license would not permit royalty-free redistribution of the Library by ! all those who receive copies directly or indirectly through you, then ! the only way you could satisfy both it and this License would be to ! refrain entirely from distribution of the Library. ! If any portion of this section is held invalid or unenforceable under any ! particular circumstance, the balance of the section is intended to apply, ! and the section as a whole is intended to apply in other circumstances. ! It is not the purpose of this section to induce you to infringe any ! patents or other property right claims or to contest validity of any ! such claims; this section has the sole purpose of protecting the ! integrity of the free software distribution system which is ! implemented by public license practices. Many people have made ! generous contributions to the wide range of software distributed ! through that system in reliance on consistent application of that ! system; it is up to the author/donor to decide if he or she is willing ! to distribute software through any other system and a licensee cannot ! impose that choice. ! This section is intended to make thoroughly clear what is believed to ! be a consequence of the rest of this License. ! 12. If the distribution and/or use of the Library is restricted in ! certain countries either by patents or by copyrighted interfaces, the ! original copyright holder who places the Library under this License may add ! an explicit geographical distribution limitation excluding those countries, ! so that distribution is permitted only in or among countries not thus ! excluded. In such case, this License incorporates the limitation as if ! written in the body of this License. ! 13. The Free Software Foundation may publish revised and/or new ! versions of the Lesser General Public License from time to time. ! Such new versions will be similar in spirit to the present version, ! but may differ in detail to address new problems or concerns. ! Each version is given a distinguishing version number. If the Library ! specifies a version number of this License which applies to it and ! "any later version", you have the option of following the terms and ! conditions either of that version or of any later version published by ! the Free Software Foundation. If the Library does not specify a ! license version number, you may choose any version ever published by ! the Free Software Foundation. ! ! 14. If you wish to incorporate parts of the Library into other free ! programs whose distribution conditions are incompatible with these, ! write to the author to ask for permission. For software which is ! copyrighted by the Free Software Foundation, write to the Free ! Software Foundation; we sometimes make exceptions for this. Our ! decision will be guided by the two goals of preserving the free status ! of all derivatives of our free software and of promoting the sharing ! and reuse of software generally. ! NO WARRANTY ! 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO ! WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. ! EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR ! OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY ! KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE ! IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR ! PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE ! LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME ! THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. ! 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN ! WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY ! AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU ! FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR ! CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE ! LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING ! RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A ! FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF ! SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH ! DAMAGES. ! END OF TERMS AND CONDITIONS ! ! How to Apply These Terms to Your New Libraries ! If you develop a new library, and you want it to be of the greatest ! possible use to the public, we recommend making it free software that ! everyone can redistribute and change. You can do so by permitting ! redistribution under these terms (or, alternatively, under the terms of the ! ordinary General Public License). ! To apply these terms, attach the following notices to the library. It is ! safest to attach them to the start of each source file to most effectively ! convey the exclusion of warranty; and each file should have at least the ! "copyright" line and a pointer to where the full notice is found. ! <one line to give the library's name and a brief idea of what it does.> ! Copyright (C) <year> <name of author> ! This library is free software; you can redistribute it and/or ! modify it under the terms of the GNU Lesser General Public ! License as published by the Free Software Foundation; either ! version 2.1 of the License, or (at your option) any later version. ! This library is distributed in the hope that it will be useful, ! but WITHOUT ANY WARRANTY; without even the implied warranty of ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! Lesser General Public License for more details. ! You should have received a copy of the GNU Lesser General Public ! License along with this library; if not, write to the Free Software ! Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! Also add information on how to contact you by electronic and paper mail. ! You should also get your employer (if you work as a programmer) or your ! school, if any, to sign a "copyright disclaimer" for the library, if ! necessary. Here is a sample; alter the names: ! Yoyodyne, Inc., hereby disclaims all copyright interest in the ! library `Frob' (a library for tweaking knobs) written by James Random Hacker. ! <signature of Ty Coon>, 1 April 1990 ! Ty Coon, President of Vice ! That's all there is to it! ! 2. Transport Security Layer (TLS) sources license ! -- --------- -------- ----- ---- ------- ------- ! The MIT License ! Copyright (c) 2003 Carlos Guzmán Álvarez ! Permission is hereby granted, free of charge, to any person obtaining a ! copy of this software and associated documentation files (the "Software"), ! to deal in the Software without restriction, including without limitation ! the rights to use, copy, modify, merge, publish, distribute, sublicense, ! and/or sell copies of the Software, and to permit persons to whom the ! Software is furnished to do so, subject to the following conditions: ! The above copyright notice and this permission notice shall be included ! in all copies or substantial portions of the Software. ! THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ! EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES ! OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ! NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT ! HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, ! WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ! ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR ! THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file --- 1,204 ---- ! Initial Developer's PUBLIC LICENSE Version 1.0 + 1. Definitions + 1.0 "Commercial Use" means distribution or otherwise making the Covered Code available to a third party. ! 1.1 ''Contributor'' means each entity that creates or contributes to the creation of Modifications. ! 1.2 ''Contributor Version'' means the combination of the Original Code, prior Modifications used by a Contributor, and the Modifications made by that particular Contributor. ! 1.3. ''Covered Code'' means the Original Code or Modifications or the combination of the Original Code and Modifications, in each case including portions thereof. ! 1.4. ''Electronic Distribution Mechanism'' means a mechanism generally accepted in the software development community for the electronic transfer of data. ! 1.5. ''Executable'' means Covered Code in any form other than Source Code. ! 1.6. ''Initial Developer'' means the individual or entity identified as the Initial Developer in the Source Code notice required by Exhibit A. ! 1.7. ''Larger Work'' means a work which combines Covered Code or portions thereof with code not governed by the terms of this License. ! 1.8. ''License'' means this document. ! 1.8.1. "Licensable" means having the right to grant, to the maximum extent possible, whether at the time of the initial grant or subsequently acquired, any and all of the rights conveyed herein. ! 1.9. ''Modifications'' means any addition to or deletion from the substance or structure of either the Original Code or any previous Modifications. When Covered Code is released as a series of files, a Modification is: ! Any addition to or deletion from the contents of a file containing Original Code or previous Modifications. ! Any new file that contains any part of the Original Code or previous Modifications. ! 1.10. ''Original Code'' means Source Code of computer software code which is described in the Source Code notice required by Exhibit A as Original Code, and which, at the time of its release under this License is not already Covered Code governed by this License. ! 1.10.1. "Patent Claims" means any patent claim(s), now owned or hereafter acquired, including without limitation, method, process, and apparatus claims, in any patent Licensable by grantor. ! 1.11. ''Source Code'' means the preferred form of the Covered Code for making modifications to it, including all modules it contains, plus any associated interface definition files, scripts used to control compilation and installation of an Executable, or source code differential comparisons against either the Original Code or another well known, available Covered Code of the Contributor's choice. The Source Code can be in a compressed or archival form, provided the appropriate decompression or de-archiving software is widely available for no charge. ! 1.12. "You'' (or "Your") means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License or a future version of this License issued under Section 6.1. For legal entities, "You'' includes any entity w hich controls, is controlled by, or is under common control with You. For purposes of this definition, "control'' means (a) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (b) ownership of more than fifty percent (50%) of the outstanding shares or beneficial ownership of such entity. ! 2. Source Code License. ! 2.1. The Initial Developer Grant. The Initial Developer hereby grants You a w... [truncated message content] |
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/DbSchema In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12804/source/PostgreSql/Data/DbSchema Removed Files: PgAggregatesSchema.cs PgCastsSchema.cs PgCheckConstraints.cs PgCheckConstraintsByTable.cs PgColumnsSchema.cs PgDatabaseSchema.cs PgDbSchema.cs PgDbSchemaFactory.cs PgDomainsSchema.cs PgForeignKeysSchema.cs PgFunctionPrivilegesSchema.cs PgFunctionsSchema.cs PgGroupsSchema.cs PgIndexesSchema.cs PgPrimaryKeysSchema.cs PgProviderTypesSchema.cs PgSchemataSchema.cs PgSqlLanguagesSchema.cs PgTableConstraintsSchema.cs PgTablePrivilegesSchema.cs PgTableStatisticsSchema.cs PgTablesSchema.cs PgTriggersSchema.cs PgUsersSchema.cs PgViewPrivilegesSchema.cs PgViewsSchema.cs Log Message: Sources relicensed under the IDPL --- PgCastsSchema.cs DELETED --- --- PgTriggersSchema.cs DELETED --- --- PgProviderTypesSchema.cs DELETED --- --- PgIndexesSchema.cs DELETED --- --- PgTablePrivilegesSchema.cs DELETED --- --- PgFunctionPrivilegesSchema.cs DELETED --- --- PgUsersSchema.cs DELETED --- --- PgForeignKeysSchema.cs DELETED --- --- PgFunctionsSchema.cs DELETED --- --- PgCheckConstraints.cs DELETED --- --- PgColumnsSchema.cs DELETED --- --- PgGroupsSchema.cs DELETED --- --- PgDbSchemaFactory.cs DELETED --- --- PgCheckConstraintsByTable.cs DELETED --- --- PgPrimaryKeysSchema.cs DELETED --- --- PgDbSchema.cs DELETED --- --- PgDatabaseSchema.cs DELETED --- --- PgSqlLanguagesSchema.cs DELETED --- --- PgSchemataSchema.cs DELETED --- --- PgTableConstraintsSchema.cs DELETED --- --- PgTablesSchema.cs DELETED --- --- PgViewsSchema.cs DELETED --- --- PgTableStatisticsSchema.cs DELETED --- --- PgAggregatesSchema.cs DELETED --- --- PgViewPrivilegesSchema.cs DELETED --- --- PgDomainsSchema.cs DELETED --- |
From: Carlos G. Á. <car...@us...> - 2005-09-10 12:12:26
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25310 Modified Files: PgConnectionInternal.cs Added Files: PgConnectionStringBuilder.cs Log Message: Started the reorganization of the CVS module --- NEW FILE: PgConnectionStringBuilder.cs --- /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * Copyright (c) 2003-2005 Carlos Guzman Alvarez * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Data; using System.Data.Common; namespace PostgreSql.Data.PostgreSqlClient { public sealed class PgConnectionStringBuilder : DbConnectionStringBuilder { #region · Properties · public string DataSource { get { return this.GetString("Data Source"); } set { this["Data Source"] = value; } } public string Database { get { return this.GetString("Database"); } set { this["Database"] = value; } } public string UserID { get { return this.GetString("User ID"); } set { this["User ID"] = value; } } public string Password { get { return this.GetString("Password"); } set { this["Password"] = value; } } public int Port { get { return this.GetInt32("Port Number"); } set { this["Port Number"] = value; } } public int PacketSize { get { return this.GetInt32("Packet Size"); } set { this["Packet Size"] = value; } } public int ConnectionTimeout { get { return this.GetInt32("Connection Timeout"); } set { this["Connection Timeout"] = value; } } public bool Pooling { get { return this.GetBoolean("Pooling"); } set { this["Pooling"] = value; } } public int ConnectionLifeTime { get { return this.GetInt32("Connection Lifetime"); } set { this["Connection Lifetime"] = value; } } public int MinPoolSize { get { return this.GetInt32("Min Pool Size"); } set { this["Min Pool Size"] = value; } } public int MaxPoolSize { get { return this.GetInt32("Max Pool Size"); } set { this["Max Pool Size"] = value; } } public bool Ssl { get { return this.GetBoolean("SSL"); } set { this["SSL"] = value; } } #endregion #region · Constructors · public PgConnectionStringBuilder() { } public PgConnectionStringBuilder(string connectionString) { this.ConnectionString = connectionString; } #endregion #region · Private methods · private int GetInt32(string keyword) { return Convert.ToInt32(this[keyword]); } private string GetString(string keyword) { return Convert.ToString(this[keyword]); } private bool GetBoolean(string keyword) { return Convert.ToBoolean(this[keyword]); } #endregion } } Index: PgConnectionInternal.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgConnectionInternal.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgConnectionInternal.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgConnectionInternal.cs 10 Sep 2005 12:12:14 -0000 1.3 *************** *** 275,279 **** switch (element.Groups[1].Value.Trim().ToLower()) { ! case "datasource": case "server": case "host": --- 275,279 ---- switch (element.Groups[1].Value.Trim().ToLower()) { ! case "data source": case "server": case "host": *************** *** 286,289 **** --- 286,290 ---- case "user name": + case "user id": case "user": this.options.UserName = element.Groups[2].Value.Trim(); *************** *** 296,306 **** case "port": this.options.ServerPort = Int32.Parse(element.Groups[2].Value.Trim()); break; - case "connection lifetime": - this.lifetime = Int32.Parse(element.Groups[2].Value.Trim()); - break; - case "timeout": case "connection timeout": --- 297,304 ---- case "port": + case "port number": this.options.ServerPort = Int32.Parse(element.Groups[2].Value.Trim()); break; case "timeout": case "connection timeout": *************** *** 316,319 **** --- 314,327 ---- break; + case "connection lifetime": + this.lifetime = Int32.Parse(element.Groups[2].Value.Trim()); + break; + + case "min pool size": + throw new NotImplementedException(); + + case "max pool size": + throw new NotImplementedException(); + case "ssl": this.options.SSL = Boolean.Parse(element.Groups[2].Value.Trim()); |
From: Carlos G. Á. <car...@us...> - 2005-09-10 12:07:28
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24124 Modified Files: PgCommandBuilder.cs PgNotificationEventArgs.cs Log Message: Started the reorganization of the CVS module Index: PgNotificationEventArgs.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgNotificationEventArgs.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgNotificationEventArgs.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgNotificationEventArgs.cs 10 Sep 2005 12:07:16 -0000 1.2 *************** *** 58,62 **** this.processID = processID; this.condition = condition; ! this.aditional = aditional; } --- 58,62 ---- this.processID = processID; this.condition = condition; ! this.aditional = addtional; } Index: PgCommandBuilder.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgCommandBuilder.cs,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** PgCommandBuilder.cs 9 Sep 2005 21:35:00 -0000 1.2 --- PgCommandBuilder.cs 10 Sep 2005 12:07:16 -0000 1.3 *************** *** 174,177 **** #endregion } - } --- 174,176 ---- |
From: Carlos G. Á. <car...@us...> - 2005-09-10 12:06:26
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23959 Added Files: AssemblyInfo.cs PostgreSql.Data.PostgreSqlClient.snk Log Message: Started the reorganization of the CVS module --- NEW FILE: PostgreSql.Data.PostgreSqlClient.snk --- (This appears to be a binary file; contents omitted.) --- NEW FILE: AssemblyInfo.cs --- /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * Copyright (c) 2003-2005 Carlos Guzman Alvarez * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Runtime.CompilerServices; using System.Resources; using System.Reflection; [assembly: AssemblyTitle("ADO.NET Data provider for PostgreSQL 7.4+")] [assembly: AssemblyDescription("ADO.NET Data provider for PostgreSQL 7.4+")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("PgSqlClient - ADO.NET Data provider for PostgreSQL 7.4+")] [assembly: AssemblyCopyright("2003, 2005 - Carlos Guzmán Álvarez")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] [assembly: AssemblyVersion("1.0.*")] [assembly: AssemblyDelaySign(false)] [assembly: AssemblyKeyFile("PostgreSql.Data.PostgreSqlClient.snk")] [assembly: AssemblyKeyName("")] [assembly: CLSCompliant(true)] |
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5092/Data/Protocol Modified Files: PgClientNotificationEventArgs.cs PgCodes.cs PgDbClient.cs PgOutputPacket.cs PgResponsePacket.cs PgStatement.cs Log Message: Started the reorganization of the CVS module Index: PgResponsePacket.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgResponsePacket.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgResponsePacket.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgResponsePacket.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 28,37 **** namespace PostgreSql.Data.Protocol { ! internal class PgResponsePacket : BinaryReader { #region · Fields · ! private char message; ! private Encoding encoding; #endregion --- 28,39 ---- namespace PostgreSql.Data.Protocol { ! internal class PgResponsePacket { #region · Fields · ! private char message; ! private Stream stream; ! private BinaryReader packet; ! private Encoding encoding; #endregion *************** *** 45,62 **** } ! public Encoding Encoding ! { ! get { return this.encoding; } ! set { this.encoding = value; } ! } ! ! public long Length { ! get { return ((MemoryStream)this.BaseStream).Length; } } ! public long Position { ! get { return ((MemoryStream)this.BaseStream).Position; } } --- 47,58 ---- } ! public int Length { ! get { return (int)this.stream.Length; } } ! public int Position { ! get { return (int)this.stream.Position; } } *************** *** 76,114 **** } ! public long Pending { ! get { return this.Length - this.Position; } } ! #endregion ! #region · Constructors · ! public PgResponsePacket() : base(new MemoryStream()) { } ! public PgResponsePacket(byte[] contents) : base(new MemoryStream(contents)) { } ! public PgResponsePacket(char message, byte[] contents) : base(new MemoryStream(contents)) { ! this.message = message; } #endregion ! #region · Stream Methods · ! public void Reset() { ! ((MemoryStream)this.BaseStream).SetLength(0); ! ((MemoryStream)this.BaseStream).Position = 0; } ! public byte[] ToArray() { ! return ((MemoryStream)this.BaseStream).ToArray(); } --- 72,123 ---- } ! public bool IsReadyForQuery { ! get { return (this.Message == PgBackendCodes.READY_FOR_QUERY); } } ! public bool IsCommandComplete ! { ! get { return (this.Message == PgBackendCodes.COMMAND_COMPLETE); } ! } ! public bool IsPortalSuspended ! { ! get { return (this.Message == PgBackendCodes.PORTAL_SUSPENDED); } ! } ! public bool IsNoData { + get { return (this.Message == PgBackendCodes.NODATA); } } ! public bool IsCloseComplete { + get { return (this.Message == PgBackendCodes.CLOSE_COMPLETE); } } ! public bool IsRowDescription { ! get { return (this.Message == PgBackendCodes.ROW_DESCRIPTION); } } #endregion ! #region · Constructors · ! public PgResponsePacket(char message, Encoding encoding, byte[] contents) { ! this.packet = new BinaryReader(new MemoryStream(contents)); ! this.encoding = encoding; ! this.message = message; } ! #endregion ! ! #region · Binary Types · ! ! public byte[] ReadBytes(int count) { ! return this.packet.ReadBytes(count); } *************** *** 117,126 **** #region · String Types · public string ReadNullString() { StringBuilder cString = new StringBuilder(); char c; ! ! while ((c = ReadChar()) != PgCodes.NULL_TERMINATOR ) { cString.Append(c); --- 126,145 ---- #region · String Types · + public char ReadChar() + { + return this.packet.ReadChar(); + } + + public char[] ReadChars(int count) + { + return this.packet.ReadChars(count); + } + public string ReadNullString() { StringBuilder cString = new StringBuilder(); char c; ! ! while ((c = this.packet.ReadChar()) != PgCodes.NULL_TERMINATOR) { cString.Append(c); *************** *** 134,148 **** byte[] buffer = new byte[length]; ! this.Read(buffer, 0, length); return this.encoding.GetString(buffer); } ! public new string ReadString() { ! int length = this.ReadInt(); byte[] buffer = new byte[length]; ! this.Read(buffer, 0, length); return this.encoding.GetString(buffer); --- 153,167 ---- byte[] buffer = new byte[length]; ! this.packet.Read(buffer, 0, length); return this.encoding.GetString(buffer); } ! public string ReadString() { ! int length = this.ReadInt32(); byte[] buffer = new byte[length]; ! this.packet.Read(buffer, 0, length); return this.encoding.GetString(buffer); *************** *** 151,192 **** #endregion ! #region · Numeric Types · ! public short ReadShort() { ! short val = base.ReadInt16(); ! return IPAddress.HostToNetworkOrder(val); } ! public int ReadInt() { ! int val = base.ReadInt32(); ! return IPAddress.HostToNetworkOrder(val); } ! public long ReadLong() { ! return IPAddress.HostToNetworkOrder(base.ReadInt64()); } ! public override float ReadSingle() { ! return BitConverter.ToSingle(BitConverter.GetBytes(this.ReadInt()), 0); } public float ReadCurrency() { ! float val = (float)this.ReadInt(); ! return val/100; } ! public override double ReadDouble() { ! byte[] buffer = BitConverter.GetBytes(this.ReadLong()); ! ! return BitConverter.ToDouble(buffer, 0); } --- 170,219 ---- #endregion ! #region · Boolean Types · ! public bool ReadBoolean() { ! return this.packet.ReadBoolean(); ! } ! #endregion ! ! #region · Numeric Types · ! ! public byte ReadByte() ! { ! return this.packet.ReadByte(); } ! public short ReadInt16() { ! return IPAddress.HostToNetworkOrder(this.packet.ReadInt16()); ! } ! public int ReadInt32() ! { ! return IPAddress.HostToNetworkOrder(this.packet.ReadInt32()); } ! public long ReadInt64() { ! return IPAddress.HostToNetworkOrder(this.packet.ReadInt64()); } ! public float ReadSingle() { ! return BitConverter.ToSingle(BitConverter.GetBytes(this.ReadInt32()), 0); } public float ReadCurrency() { ! float value = (float)this.ReadInt32(); ! return (value / 100); } ! public double ReadDouble() { ! return BitConverter.ToDouble(BitConverter.GetBytes(this.ReadInt64()), 0); } *************** *** 197,205 **** public DateTime ReadDate() { ! int days = this.ReadInt(); ! ! DateTime date = new DateTime(days); ! ! return PgCodes.BASE_DATE.AddDays(days); } --- 224,228 ---- public DateTime ReadDate() { ! return PgCodes.BASE_DATE.AddDays(this.ReadInt32()); } *************** *** 207,215 **** { double intervalTime = this.ReadDouble(); ! int intervalMonth = this.ReadInt(); TimeSpan interval = TimeSpan.FromSeconds(intervalTime); ! return interval.Add(TimeSpan.FromDays(intervalMonth*30)); } --- 230,238 ---- { double intervalTime = this.ReadDouble(); ! int intervalMonth = this.ReadInt32(); TimeSpan interval = TimeSpan.FromSeconds(intervalTime); ! return interval.Add(TimeSpan.FromDays(intervalMonth * 30)); } *************** *** 246,261 **** else { - int[] lengths; - int[] lowerBounds; - // Read number of dimensions ! int dimensions = this.ReadInt(); ! ! // Initialize arrays for lengths and lower bounds ! lengths = new int[dimensions]; ! lowerBounds = new int[dimensions]; // Read flags value ! int flags = this.ReadInt(); if (flags != 0) { --- 269,281 ---- else { // Read number of dimensions ! int dimensions = this.ReadInt32(); + // Create arrays for the lengths and lower bounds + int[] lengths = new int[dimensions]; + int[] lowerBounds = new int[dimensions]; + // Read flags value ! int flags = this.ReadInt32(); if (flags != 0) { *************** *** 264,274 **** // Read array element type ! PgType elementType = PgDbClient.Types[this.ReadInt()]; // Read array lengths and lower bounds for (int i = 0; i < dimensions; i++) { ! lengths[i] = this.ReadInt(); ! lowerBounds[i] = this.ReadInt(); } --- 284,294 ---- // Read array element type ! PgType elementType = PgDbClient.Types[this.ReadInt32()]; // Read array lengths and lower bounds for (int i = 0; i < dimensions; i++) { ! lengths[i] = this.ReadInt32(); ! lowerBounds[i] = this.ReadInt32(); } *************** *** 276,286 **** if (type.SystemType.IsPrimitive) { ! return this.ReadPrimitiveArray(elementType, length, ! dimensions, flags, lengths, lowerBounds); } else { ! return this.ReadNonPrimitiveArray(elementType, length, ! dimensions, flags, lengths, lowerBounds); } } --- 296,304 ---- if (type.SystemType.IsPrimitive) { ! return this.ReadPrimitiveArray(elementType, length, dimensions, flags, lengths, lowerBounds); } else { ! return this.ReadNonPrimitiveArray(elementType, length, dimensions, flags, lengths, lowerBounds); } } *************** *** 296,301 **** for (int i = 0; i < data.Length; i++ ) { ! object elementValue = ReadValue(elementType, elementType.Size); ! data.SetValue(elementValue, i); } --- 314,318 ---- for (int i = 0; i < data.Length; i++ ) { ! data.SetValue(this.ReadValue(elementType, elementType.Size), i); } *************** *** 309,316 **** public PgPoint ReadPoint() { ! double x = this.ReadDouble(); ! double y = this.ReadDouble(); ! ! return new PgPoint(x, y); } --- 326,330 ---- public PgPoint ReadPoint() { ! return new PgPoint(this.ReadDouble(), this.ReadDouble()); } *************** *** 340,344 **** public PgPolygon ReadPolygon() { ! PgPoint[] points = new PgPoint[this.ReadInt()]; for (int i = 0; i < points.Length; i++) --- 354,358 ---- public PgPolygon ReadPolygon() { ! PgPoint[] points = new PgPoint[this.ReadInt32()]; for (int i = 0; i < points.Length; i++) *************** *** 353,357 **** { bool isClosedPath = this.ReadBoolean(); ! PgPoint[] points = new PgPoint[this.ReadInt()]; for (int i = 0; i < points.Length; i++) --- 367,371 ---- { bool isClosedPath = this.ReadBoolean(); ! PgPoint[] points = new PgPoint[this.ReadInt32()]; for (int i = 0; i < points.Length; i++) *************** *** 391,397 **** case PgDataType.Decimal: ! return Decimal.Parse( ! this.ReadString(length), ! NumberFormatInfo.InvariantInfo); case PgDataType.Currency: --- 405,409 ---- case PgDataType.Decimal: ! return Decimal.Parse(this.ReadString(length), NumberFormatInfo.InvariantInfo); case PgDataType.Currency: *************** *** 405,415 **** case PgDataType.Int2: ! return this.ReadShort(); case PgDataType.Int4: ! return this.ReadInt(); case PgDataType.Int8: ! return this.ReadLong(); case PgDataType.Interval: --- 417,427 ---- case PgDataType.Int2: ! return this.ReadInt16(); case PgDataType.Int4: ! return this.ReadInt32(); case PgDataType.Int8: ! return this.ReadInt64(); case PgDataType.Interval: *************** *** 494,526 **** case PgDataType.Decimal: ! return Decimal.Parse( ! stringValue, ! NumberFormatInfo.InvariantInfo); case PgDataType.Currency: case PgDataType.Float: ! return Single.Parse( ! stringValue, ! NumberFormatInfo.InvariantInfo); case PgDataType.Double: ! return Double.Parse( ! stringValue, ! NumberFormatInfo.InvariantInfo); case PgDataType.Int2: ! return Int16.Parse( ! stringValue, ! NumberFormatInfo.InvariantInfo); case PgDataType.Int4: ! return Int32.Parse( ! stringValue, ! NumberFormatInfo.InvariantInfo); case PgDataType.Int8: ! return Int64.Parse( ! stringValue, ! NumberFormatInfo.InvariantInfo); case PgDataType.Interval: --- 506,526 ---- case PgDataType.Decimal: ! return Decimal.Parse(stringValue, NumberFormatInfo.InvariantInfo); case PgDataType.Currency: case PgDataType.Float: ! return Single.Parse(stringValue, NumberFormatInfo.InvariantInfo); case PgDataType.Double: ! return Double.Parse(stringValue, NumberFormatInfo.InvariantInfo); case PgDataType.Int2: ! return Int16.Parse(stringValue, NumberFormatInfo.InvariantInfo); case PgDataType.Int4: ! return Int32.Parse(stringValue, NumberFormatInfo.InvariantInfo); case PgDataType.Int8: ! return Int64.Parse(stringValue, NumberFormatInfo.InvariantInfo); case PgDataType.Interval: *************** *** 556,560 **** default: ! return ReadBytes(length); } } --- 556,560 ---- default: ! return this.packet.ReadBytes(length); } } *************** *** 584,588 **** for (int i = data.GetLowerBound(0); i <= data.GetUpperBound(0); i++) { ! int elementLen = this.ReadInt(); data.SetValue(this.ReadValue(elementType, elementType.Size), i); } --- 584,588 ---- for (int i = data.GetLowerBound(0); i <= data.GetUpperBound(0); i++) { ! int elementLen = this.ReadInt32(); data.SetValue(this.ReadValue(elementType, elementType.Size), i); } *************** *** 620,624 **** { byte[] elementData = null; ! int elementLen = this.ReadInt(); switch (type.DataType) --- 620,624 ---- { byte[] elementData = null; ! int elementLen = this.ReadInt32(); switch (type.DataType) *************** *** 637,649 **** case PgDataType.Int2: ! elementData = BitConverter.GetBytes(this.ReadShort()); break; case PgDataType.Int4: ! elementData = BitConverter.GetBytes(this.ReadInt()); break; case PgDataType.Int8: ! elementData = BitConverter.GetBytes(this.ReadLong()); break; } --- 637,649 ---- case PgDataType.Int2: ! elementData = BitConverter.GetBytes(this.ReadInt16()); break; case PgDataType.Int4: ! elementData = BitConverter.GetBytes(this.ReadInt32()); break; case PgDataType.Int8: ! elementData = BitConverter.GetBytes(this.ReadInt64()); break; } Index: PgDbClient.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgDbClient.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgDbClient.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgDbClient.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 24,30 **** using System.Net; using System.Net.Sockets; ! ! using Mono.Security.Cryptography; ! using Mono.Security.Protocol.Tls; namespace PostgreSql.Data.Protocol --- 24,28 ---- using System.Net; using System.Net.Sockets; ! using System.Net.Security; namespace PostgreSql.Data.Protocol *************** *** 32,57 **** internal class PgDbClient { - #region · Callbacks · - - public SslConnectionCallback SslConnection - { - get { return this.sslCallback; } - set { this.sslCallback = value; } - } - - public NotificationCallback Notification - { - get { return this.notification; } - set { this.notification = value; } - } - - public InfoMessageCallback InfoMessage - { - get { return this.infoMessage; } - set { this.infoMessage = value; } - } - - #endregion - #region · Static Fields · --- 30,33 ---- *************** *** 193,196 **** --- 169,194 ---- #endregion + #region · Callbacks · + + public SslConnectionCallback SslConnection + { + get { return this.sslCallback; } + set { this.sslCallback = value; } + } + + public NotificationCallback Notification + { + get { return this.notification; } + set { this.notification = value; } + } + + public InfoMessageCallback InfoMessage + { + get { return this.infoMessage; } + set { this.infoMessage = value; } + } + + #endregion + #region · Fields · *************** *** 204,211 **** private Socket socket; private NetworkStream networkStream; ! private SslClientStream sslStream; private BinaryReader receive; private BinaryWriter send; - private PgResponsePacket buffer; private PgConnectionParams settings; private char transactionStatus; --- 202,208 ---- private Socket socket; private NetworkStream networkStream; ! private SslStream secureStream; private BinaryReader receive; private BinaryWriter send; private PgConnectionParams settings; private char transactionStatus; *************** *** 243,249 **** #region · Internal Properties · ! internal SslClientStream SslClientStream { ! get { return this.sslStream; } } --- 240,246 ---- #region · Internal Properties · ! internal SslStream SecureStream { ! get { return this.secureStream; } } *************** *** 262,266 **** #region · Constructors · ! public PgDbClient() : this(null) { } --- 259,264 ---- #region · Constructors · ! public PgDbClient() ! : this(null) { } *************** *** 269,273 **** { this.parameterStatus = new Hashtable(); - this.buffer = new PgResponsePacket(); this.settings = settings; --- 267,270 ---- *************** *** 297,309 **** if (this.settings.SSL) { ! this.sslStream = new SslClientStream( ! this.networkStream, ! this.settings.ServerName, ! false, ! Mono.Security.Protocol.Tls.SecurityProtocolType.Tls| ! Mono.Security.Protocol.Tls.SecurityProtocolType.Ssl3); ! this.receive = new BinaryReader(this.sslStream); ! this.send = new BinaryWriter(this.sslStream); if (this.SslConnection != null) --- 294,303 ---- if (this.settings.SSL) { ! this.secureStream = new SslStream(this.networkStream, false); ! this.SecureStream.AuthenticateAsClient(this.settings.ServerName); ! ! this.receive = new BinaryReader(this.SecureStream); ! this.send = new BinaryWriter(this.SecureStream); if (this.SslConnection != null) *************** *** 317,323 **** PgOutputPacket packet = new PgOutputPacket(this.settings.Encoding); ! packet.WriteInt(PgCodes.PROTOCOL_VERSION3); packet.WriteNullString("user"); ! packet.WriteNullString(this.settings.UserName); if (settings.Database != null && this.settings.Database.Length > 0) { --- 311,318 ---- PgOutputPacket packet = new PgOutputPacket(this.settings.Encoding); ! packet.Write(PgCodes.PROTOCOL_VERSION3); packet.WriteNullString("user"); ! packet.WriteNullString(this.settings.UserName); ! if (settings.Database != null && this.settings.Database.Length > 0) { *************** *** 325,328 **** --- 320,324 ---- packet.WriteNullString(this.settings.Database); } + packet.WriteNullString("DateStyle"); packet.WriteNullString(PgCodes.DATE_STYLE); *************** *** 332,343 **** this.SendSimplePacket(packet); ! PgResponsePacket response = new PgResponsePacket(); ! // Check if the is ready for Query ! while (response.Message != PgBackendCodes.READY_FOR_QUERY) { response = this.ReceiveResponsePacket(); this.ProcessResponsePacket(response); } } } --- 328,339 ---- this.SendSimplePacket(packet); ! PgResponsePacket response = null; ! do { response = this.ReceiveResponsePacket(); this.ProcessResponsePacket(response); } + while (!response.IsReadyForQuery); } } *************** *** 462,467 **** } ! responsePacket = new PgResponsePacket(type, buffer); ! responsePacket.Encoding = Settings.Encoding; } catch (IOException) --- 458,462 ---- } ! responsePacket = new PgResponsePacket(type, Settings.Encoding, buffer); } catch (IOException) *************** *** 491,496 **** case PgBackendCodes.BACKEND_KEY_DATA: // BackendKeyData ! this.Handle = packet.ReadInt(); ! this.SecretKey = packet.ReadInt(); break; } --- 486,491 ---- case PgBackendCodes.BACKEND_KEY_DATA: // BackendKeyData ! this.Handle = packet.ReadInt32(); ! this.SecretKey = packet.ReadInt32(); break; } *************** *** 515,519 **** { // Authentication response ! int authType = packet.ReadInt(); PgOutputPacket outPacket = new PgOutputPacket(settings.Encoding); --- 510,514 ---- { // Authentication response ! int authType = packet.ReadInt32(); PgOutputPacket outPacket = new PgOutputPacket(settings.Encoding); *************** *** 550,555 **** // Second calculate md5 of password + user string userHash = MD5Authentication.GetMD5Hash( ! settings.Encoding.GetBytes(settings.UserName), ! settings.UserPassword); // Third calculate real MD5 hash --- 545,549 ---- // Second calculate md5 of password + user string userHash = MD5Authentication.GetMD5Hash( ! settings.Encoding.GetBytes(settings.UserName), settings.UserPassword); // Third calculate real MD5 hash *************** *** 630,634 **** private void ProcessNotificationResponse(PgResponsePacket packet) { ! int processID = packet.ReadInt(); string condition = packet.ReadNullString(); string additional = packet.ReadNullString(); --- 624,628 ---- private void ProcessNotificationResponse(PgResponsePacket packet) { ! int processID = packet.ReadInt32(); string condition = packet.ReadNullString(); string additional = packet.ReadNullString(); *************** *** 736,754 **** // Receive response ! PgResponsePacket response = new PgResponsePacket(); ! while (response.Message != PgBackendCodes.READY_FOR_QUERY) { response = this.ReceiveResponsePacket(); this.ProcessResponsePacket(response); } } ! catch (Exception ex) { ! PgResponsePacket response = new PgResponsePacket(); ! while (response.Message != PgBackendCodes.READY_FOR_QUERY) { response = this.ReceiveResponsePacket(); this.ProcessResponsePacket(response); } throw; --- 730,752 ---- // Receive response ! PgResponsePacket response = null; ! ! do { response = this.ReceiveResponsePacket(); this.ProcessResponsePacket(response); } + while (!response.IsReadyForQuery); } ! catch { ! PgResponsePacket response = null; ! ! do { response = this.ReceiveResponsePacket(); this.ProcessResponsePacket(response); } + while (!response.IsReadyForQuery); throw; *************** *** 765,772 **** PgOutputPacket packet = new PgOutputPacket(); ! packet.WriteInt(16); ! packet.WriteInt(PgCodes.CANCEL_REQUEST); ! packet.WriteInt(Handle); ! packet.WriteInt(SecretKey); // Send packet to the server --- 763,770 ---- PgOutputPacket packet = new PgOutputPacket(); ! packet.Write((int)16); ! packet.Write(PgCodes.CANCEL_REQUEST); ! packet.Write(this.Handle); ! packet.Write(this.SecretKey); // Send packet to the server *************** *** 790,794 **** PgOutputPacket packet = new PgOutputPacket(); ! packet.WriteInt(PgCodes.SSL_REQUEST); // Send packet to the server --- 788,792 ---- PgOutputPacket packet = new PgOutputPacket(); ! packet.Write(PgCodes.SSL_REQUEST); // Send packet to the server *************** *** 854,882 **** private void InitializeSocket() { ! IPAddress hostadd = Dns.Resolve(settings.ServerName).AddressList[0]; ! IPEndPoint EPhost = new IPEndPoint(hostadd, settings.ServerPort); ! this.socket = new Socket( ! AddressFamily.InterNetwork, ! SocketType.Stream, ! ProtocolType.Tcp); // Set Receive Buffer size. ! this.socket.SetSocketOption(SocketOptionLevel.Socket, ! SocketOptionName.ReceiveBuffer, settings.PacketSize); // Set Send Buffer size. ! this.socket.SetSocketOption(SocketOptionLevel.Socket, ! SocketOptionName.SendBuffer, settings.PacketSize); ! // Disables the Nagle algorithm for send coalescing. ! this.socket.SetSocketOption( ! SocketOptionLevel.Tcp, ! SocketOptionName.NoDelay, ! 1); // Make the socket to connect to the Server ! this.socket.Connect(EPhost); this.networkStream = new NetworkStream(socket, true); --- 852,870 ---- private void InitializeSocket() { ! IPAddress hostadd = Dns.GetHostEntry(settings.ServerName).AddressList[0]; ! this.socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); // Set Receive Buffer size. ! this.socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReceiveBuffer, settings.PacketSize); // Set Send Buffer size. ! this.socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.SendBuffer, settings.PacketSize); // Disables the Nagle algorithm for send coalescing. ! this.socket.SetSocketOption(SocketOptionLevel.Tcp, SocketOptionName.NoDelay, 1); // Make the socket to connect to the Server ! this.socket.Connect(new IPEndPoint(hostadd, settings.ServerPort)); this.networkStream = new NetworkStream(socket, true); *************** *** 895,903 **** { // Close streams ! if (this.sslStream != null) { try { ! this.sslStream.Close(); } catch --- 883,891 ---- { // Close streams ! if (this.secureStream != null) { try { ! this.secureStream.Close(); } catch Index: PgStatement.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgStatement.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgStatement.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgStatement.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 183,187 **** packet.WriteNullString(this.ParseName); packet.WriteNullString(this.stmtText); ! packet.WriteShort(0); // Send packet to the server --- 183,187 ---- packet.WriteNullString(this.ParseName); packet.WriteNullString(this.stmtText); ! packet.Write((short)0); // Send packet to the server *************** *** 231,241 **** // Receive Describe response ! PgResponsePacket response = new PgResponsePacket(); ! while ((response.Message != PgBackendCodes.ROW_DESCRIPTION && ! response.Message != PgBackendCodes.NODATA)) { response = this.db.ReceiveResponsePacket(); this.ProcessSqlPacket(response); ! } // Update status --- 231,241 ---- // Receive Describe response ! PgResponsePacket response = null; ! do { response = this.db.ReceiveResponsePacket(); this.ProcessSqlPacket(response); ! } ! while (response.IsRowDescription || response.IsNoData); // Update status *************** *** 267,288 **** // Send parameters format code. ! packet.WriteShort((short)parameters.Length); for (int i = 0; i < parameters.Length; i++) { ! packet.WriteShort((short)this.parameters[i].DataType.FormatCode); } // Send parameter values ! packet.WriteShort((short)parameters.Length); for (int i = 0; i < parameters.Length; i++) { ! packet.WriteParameter(this.parameters[i]); } // Send column information ! packet.WriteShort((short)this.rowDescriptor.Fields.Length); for (int i = 0; i < this.rowDescriptor.Fields.Length; i++) { ! packet.WriteShort((short)this.rowDescriptor.Fields[i].DataType.FormatCode); } --- 267,288 ---- // Send parameters format code. ! packet.Write((short)parameters.Length); for (int i = 0; i < parameters.Length; i++) { ! packet.Write((short)this.parameters[i].DataType.FormatCode); } // Send parameter values ! packet.Write((short)parameters.Length); for (int i = 0; i < parameters.Length; i++) { ! packet.Write(this.parameters[i]); } // Send column information ! packet.Write((short)this.rowDescriptor.Fields.Length); for (int i = 0; i < this.rowDescriptor.Fields.Length; i++) { ! packet.Write((short)this.rowDescriptor.Fields[i].DataType.FormatCode); } *************** *** 312,316 **** packet.WriteNullString(this.PortalName); ! packet.WriteInt(this.fetchSize); // Rows to retrieve ( 0 = nolimit ) // Send packet to the server --- 312,316 ---- packet.WriteNullString(this.PortalName); ! packet.Write(this.fetchSize); // Rows to retrieve ( 0 = nolimit ) // Send packet to the server *************** *** 321,332 **** // Receive response ! PgResponsePacket response = new PgResponsePacket(); ! while (response.Message != PgBackendCodes.READY_FOR_QUERY && ! response.Message != PgBackendCodes.PORTAL_SUSPENDED && ! response.Message != PgBackendCodes.COMMAND_COMPLETE) { response = this.db.ReceiveResponsePacket(); this.ProcessSqlPacket(response); ! } // reset rowIndex --- 321,332 ---- // Receive response ! PgResponsePacket response = null; ! ! do { response = this.db.ReceiveResponsePacket(); this.ProcessSqlPacket(response); ! } ! while (!response.IsReadyForQuery); // reset rowIndex *************** *** 335,341 **** // If the command is finished and has returned rows // set all rows are received ! if ((response.Message == PgBackendCodes.READY_FOR_QUERY || ! response.Message == PgBackendCodes.COMMAND_COMPLETE) && ! this.hasRows) { this.allRowsFetched = true; --- 335,339 ---- // If the command is finished and has returned rows // set all rows are received ! if ((response.IsReadyForQuery || response.IsCommandComplete) && this.HasRows) { this.allRowsFetched = true; *************** *** 344,348 **** // If all rows are received or the command doesn't return // rows perform a Sync. ! if (!this.hasRows || this.allRowsFetched) { this.db.Sync(); --- 342,346 ---- // If all rows are received or the command doesn't return // rows perform a Sync. ! if (!this.HasRows || this.allRowsFetched) { this.db.Sync(); *************** *** 352,360 **** this.status = PgStatementStatus.Executed; } ! catch (Exception) { - // Update status this.status = PgStatementStatus.Error; - // Throw exception throw; } --- 350,356 ---- this.status = PgStatementStatus.Executed; } ! catch { this.status = PgStatementStatus.Error; throw; } *************** *** 371,392 **** // Function id ! packet.WriteInt(id); // Send parameters format code. ! packet.WriteShort((short)this.parameters.Length); for (int i = 0; i < this.parameters.Length; i++) { ! packet.WriteShort((short)this.parameters[i].DataType.FormatCode); } // Send parameter values ! packet.WriteShort((short)this.parameters.Length); for (int i = 0; i < this.parameters.Length; i++) { ! packet.WriteParameter(this.parameters[i]); } // Send the format code for the function result ! packet.WriteShort(PgCodes.BINARY_FORMAT); // Send packet to the server --- 367,388 ---- // Function id ! packet.Write(id); // Send parameters format code. ! packet.Write((short)this.parameters.Length); for (int i = 0; i < this.parameters.Length; i++) { ! packet.Write((short)this.parameters[i].DataType.FormatCode); } // Send parameter values ! packet.Write((short)this.parameters.Length); for (int i = 0; i < this.parameters.Length; i++) { ! packet.Write(this.parameters[i]); } // Send the format code for the function result ! packet.Write(PgCodes.BINARY_FORMAT); // Send packet to the server *************** *** 394,403 **** // Receive response ! PgResponsePacket response = new PgResponsePacket(); ! while (response.Message != PgBackendCodes.READY_FOR_QUERY) { response = this.db.ReceiveResponsePacket(); this.ProcessSqlPacket(response); } // Update status --- 390,400 ---- // Receive response ! PgResponsePacket response = null; ! do { response = this.db.ReceiveResponsePacket(); this.ProcessSqlPacket(response); } + while (!response.IsReadyForQuery); // Update status *************** *** 436,441 **** // Receive response ! PgResponsePacket response = new PgResponsePacket(); ! while (response.Message != PgBackendCodes.READY_FOR_QUERY) { response = this.db.ReceiveResponsePacket(); --- 433,439 ---- // Receive response ! PgResponsePacket response = null; ! ! do { response = this.db.ReceiveResponsePacket(); *************** *** 449,452 **** --- 447,451 ---- } } + while (!response.IsReadyForQuery); if (this.hasRows) *************** *** 542,551 **** // Read until CLOSE COMPLETE message is received ! PgResponsePacket response = new PgResponsePacket(); ! while (response.Message != PgBackendCodes.CLOSE_COMPLETE) { response = this.db.ReceiveResponsePacket(); this.ProcessSqlPacket(response); } // Clear rows --- 541,552 ---- // Read until CLOSE COMPLETE message is received ! PgResponsePacket response = null; ! ! do { response = this.db.ReceiveResponsePacket(); this.ProcessSqlPacket(response); } + while (response.IsCloseComplete); // Clear rows *************** *** 683,687 **** private void ProcessFunctionResult(PgResponsePacket packet) { ! int length = packet.ReadInt(); outParameter.Value = packet.ReadValue(outParameter.DataType, length); --- 684,688 ---- private void ProcessFunctionResult(PgResponsePacket packet) { ! int length = packet.ReadInt32(); outParameter.Value = packet.ReadValue(outParameter.DataType, length); *************** *** 690,694 **** private void ProcessRowDescription(PgResponsePacket packet) { ! this.rowDescriptor = new PgRowDescriptor(packet.ReadShort()); for (int i = 0; i < rowDescriptor.Fields.Length; i++) --- 691,695 ---- private void ProcessRowDescription(PgResponsePacket packet) { ! this.rowDescriptor = new PgRowDescriptor(packet.ReadInt16()); for (int i = 0; i < rowDescriptor.Fields.Length; i++) *************** *** 697,706 **** this.rowDescriptor.Fields[i].FieldName = packet.ReadNullString(); ! this.rowDescriptor.Fields[i].OidTable = packet.ReadInt(); ! this.rowDescriptor.Fields[i].OidNumber = packet.ReadShort(); ! this.rowDescriptor.Fields[i].DataType = PgDbClient.Types[packet.ReadInt()]; ! this.rowDescriptor.Fields[i].DataTypeSize = packet.ReadShort(); ! this.rowDescriptor.Fields[i].TypeModifier = packet.ReadInt(); ! this.rowDescriptor.Fields[i].FormatCode = (PgTypeFormat)packet.ReadShort(); } } --- 698,707 ---- this.rowDescriptor.Fields[i].FieldName = packet.ReadNullString(); ! this.rowDescriptor.Fields[i].OidTable = packet.ReadInt32(); ! this.rowDescriptor.Fields[i].OidNumber = packet.ReadInt16(); ! this.rowDescriptor.Fields[i].DataType = PgDbClient.Types[packet.ReadInt32()]; ! this.rowDescriptor.Fields[i].DataTypeSize = packet.ReadInt16(); ! this.rowDescriptor.Fields[i].TypeModifier = packet.ReadInt32(); ! this.rowDescriptor.Fields[i].FormatCode = (PgTypeFormat)packet.ReadInt16(); } } *************** *** 708,716 **** private void ProcessParameterDescription(PgResponsePacket packet) { ! this.parameters = new PgParameter[packet.ReadShort()]; for (int i = 0; i < parameters.Length; i++) { ! this.parameters[i] = new PgParameter(packet.ReadInt()); } } --- 709,717 ---- private void ProcessParameterDescription(PgResponsePacket packet) { ! this.parameters = new PgParameter[packet.ReadInt16()]; for (int i = 0; i < parameters.Length; i++) { ! this.parameters[i] = new PgParameter(packet.ReadInt32()); } } *************** *** 718,722 **** private void ProcessDataRow(PgResponsePacket packet) { ! int fieldCount = packet.ReadShort(); object[] values = new object[fieldCount]; --- 719,723 ---- private void ProcessDataRow(PgResponsePacket packet) { ! int fieldCount = packet.ReadInt16(); object[] values = new object[fieldCount]; *************** *** 729,733 **** for (int i = 0; i < values.Length; i++) { ! int length = packet.ReadInt(); switch (length) --- 730,734 ---- for (int i = 0; i < values.Length; i++) { ! int length = packet.ReadInt32(); switch (length) Index: PgOutputPacket.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgOutputPacket.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgOutputPacket.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgOutputPacket.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 28,36 **** namespace PostgreSql.Data.Protocol { ! internal class PgOutputPacket : BinaryWriter { #region · Fields · ! private Encoding encoding; #endregion --- 28,38 ---- namespace PostgreSql.Data.Protocol { ! internal class PgOutputPacket { #region · Fields · ! private MemoryStream stream; ! private BinaryWriter packet; ! private Encoding encoding; #endregion *************** *** 38,49 **** #region · Properties · ! public long Position { ! get { return ((MemoryStream)this.BaseStream).Position; } } ! public long Length { ! get { return ((MemoryStream)this.BaseStream).Length; } } --- 40,51 ---- #region · Properties · ! public int Position { ! get { return (int)this.stream.Position; } } ! public int Length { ! get { return (int)this.stream.Length; } } *************** *** 52,64 **** #region · Constructors · ! public PgOutputPacket() : base(new MemoryStream()) { - this.encoding = Encoding.Default; - this.Write(new byte[0]); } ! public PgOutputPacket(Encoding encoding) : base(new MemoryStream(), encoding) { ! this.encoding = encoding; this.Write(new byte[0]); } --- 54,69 ---- #region · Constructors · ! public PgOutputPacket() ! : this(Encoding.Default) { } ! public PgOutputPacket(Encoding encoding) ! : this() { ! this.stream = new MemoryStream(); ! this.packet = new BinaryWriter(this.stream); ! this.encoding = encoding; ! this.Write(new byte[0]); } *************** *** 68,85 **** #region · Stream Methods · - public int GetByteCount() - { - return (int)((MemoryStream)this.BaseStream).Length; - } - public byte[] ToArray() { ! return ((MemoryStream)this.BaseStream).ToArray(); } public void Reset() { ! ((MemoryStream)this.BaseStream).SetLength(0); ! ((MemoryStream)this.BaseStream).Position = 0; } --- 73,85 ---- #region · Stream Methods · public byte[] ToArray() { ! return this.stream.ToArray(); } public void Reset() { ! this.stream.SetLength(0); ! this.stream.Position = 0; } *************** *** 88,106 **** #region · String Types · ! public void WriteNullString(string data) { ! if (!data.EndsWith(PgCodes.NULL_TERMINATOR.ToString())) { ! data += PgCodes.NULL_TERMINATOR; } ! this.Write(this.encoding.GetBytes(data)); } ! public void WriteString(string data) { ! byte[] buffer = this.encoding.GetBytes(data); ! this.WriteInt(buffer.Length); this.Write(buffer); } --- 88,116 ---- #region · String Types · ! public void Write(char ch) { ! this.packet.Write(ch); ! } ! ! public void Write(char[] chars) ! { ! this.packet.Write(chars); ! } ! ! public void WriteNullString(string value) ! { ! if (!value.EndsWith(PgCodes.NULL_TERMINATOR.ToString())) { ! value += PgCodes.NULL_TERMINATOR; } ! this.Write(this.encoding.GetBytes(value)); } ! public void WriteString(string value) { ! byte[] buffer = this.encoding.GetBytes(value); ! this.Write(buffer.Length); this.Write(buffer); } *************** *** 110,140 **** #region · Numeric Types · ! public void WriteShort(short val) { ! this.Write((short)IPAddress.HostToNetworkOrder(val)); } ! public void WriteInt(int val) { ! this.Write((int)IPAddress.HostToNetworkOrder(val)); } ! public void WriteLong(long val) { ! this.Write((long)IPAddress.HostToNetworkOrder(val)); } ! public void WriteFloat(float val) { ! byte[] buffer = BitConverter.GetBytes(val); ! this.Write(BitConverter.ToInt32(buffer, 0)); } ! public void WriteDouble(double val) { ! byte[] buffer = BitConverter.GetBytes(val); ! this.WriteLong(BitConverter.ToInt64(buffer, 0)); } --- 120,160 ---- #region · Numeric Types · ! public void Write(byte value) { ! this.packet.Write(value); } ! public void Write(short value) { ! this.packet.Write((short)IPAddress.HostToNetworkOrder(value)); } ! public void Write(int value) { ! this.packet.Write((int)IPAddress.HostToNetworkOrder(value)); } ! public void Write(long value) { ! this.packet.Write((long)IPAddress.HostToNetworkOrder(value)); ! } ! public void Write(float value) ! { ! this.packet.Write(BitConverter.ToInt32(BitConverter.GetBytes(value), 0)); } ! public void Write(double value) { ! this.Write(BitConverter.ToInt64(BitConverter.GetBytes(value), 0)); ! } ! #endregion ! ! #region · Boolean Types · ! ! public void Write(bool value) ! { ! this.packet.Write(value); } *************** *** 145,151 **** public void WriteDate(DateTime date) { ! TimeSpan days = date.Subtract(PgCodes.BASE_DATE); ! ! this.WriteInt(days.Days); } --- 165,169 ---- public void WriteDate(DateTime date) { ! this.Write(date.Subtract(PgCodes.BASE_DATE).Days); } *************** *** 155,160 **** int days = (interval.Days % 30); ! this.WriteDouble(interval.Subtract(TimeSpan.FromDays(months * 30)).TotalSeconds); ! this.WriteInt(months); } --- 173,178 ---- int days = (interval.Days % 30); ! this.Write(interval.Subtract(TimeSpan.FromDays(months * 30)).TotalSeconds); ! this.Write(months); } *************** *** 183,234 **** #region · Geometric Types · ! public void WritePoint(PgPoint point) { ! this.WriteDouble(point.X); ! this.WriteDouble(point.Y); } ! public void WriteCircle(PgCircle circle) { ! this.WritePoint(circle.Center); ! this.WriteDouble(circle.Radius); } ! public void WriteLine(PgLine line) { ! this.WritePoint(line.StartPoint); ! this.WritePoint(line.EndPoint); } ! public void WriteLSeg(PgLSeg lseg) { ! this.WritePoint(lseg.StartPoint); ! this.WritePoint(lseg.EndPoint); } ! public void WriteBox(PgBox box) { ! this.WritePoint(box.UpperRight); ! this.WritePoint(box.LowerLeft); } ! public void WritePolygon(PgPolygon polygon) { ! this.WriteInt(polygon.Points.Length); for (int i = 0; i < polygon.Points.Length; i++) { ! this.WritePoint(polygon.Points[i]); } } ! public void WritePath(PgPath path) { this.Write(path.IsClosedPath); ! this.WriteInt(path.Points.Length); for (int i = 0; i < path.Points.Length; i++) { ! this.WritePoint(path.Points[i]); } } --- 201,252 ---- #region · Geometric Types · ! public void Write(PgPoint point) { ! this.Write(point.X); ! this.Write(point.Y); } ! public void Write(PgCircle circle) { ! this.Write(circle.Center); ! this.Write(circle.Radius); } ! public void Write(PgLine line) { ! this.Write(line.StartPoint); ! this.Write(line.EndPoint); } ! public void Write(PgLSeg lseg) { ! this.Write(lseg.StartPoint); ! this.Write(lseg.EndPoint); } ! public void Write(PgBox box) { ! this.Write(box.UpperRight); ! this.Write(box.LowerLeft); } ! public void Write(PgPolygon polygon) { ! this.Write(polygon.Points.Length); for (int i = 0; i < polygon.Points.Length; i++) { ! this.Write(polygon.Points[i]); } } ! public void Write(PgPath path) { this.Write(path.IsClosedPath); ! this.Write(path.Points.Length); for (int i = 0; i < path.Points.Length; i++) { ! this.Write(path.Points[i]); } } *************** *** 238,250 **** #region · Parameters · ! public void WriteParameter(PgParameter parameter) { int size = parameter.DataType.Size; ! if (parameter.Value == System.DBNull.Value || ! parameter.Value == null) { // -1 indicates a NULL argument value ! this.WriteInt(-1); } else --- 256,267 ---- #region · Parameters · ! public void Write(PgParameter parameter) { int size = parameter.DataType.Size; ! if (parameter.Value == System.DBNull.Value || parameter.Value == null) { // -1 indicates a NULL argument value ! this.Write((int)-1); } else *************** *** 264,280 **** // Write the number of dimensions ! packet.WriteInt(array.Rank); // Write flags (always 0) ! packet.WriteInt(0); // Write base type of the array elements ! packet.WriteInt(parameter.DataType.ElementType); // Write lengths and lower bounds for (int i = 0; i < array.Rank; i ++) { ! packet.WriteInt(array.GetLength(i)); ! packet.WriteInt(array.GetLowerBound(i) + 1); } --- 281,297 ---- // Write the number of dimensions ! packet.Write(array.Rank); // Write flags (always 0) ! packet.Write((int)0); // Write base type of the array elements ! packet.Write(parameter.DataType.ElementType); // Write lengths and lower bounds for (int i = 0; i < array.Rank; i ++) { ! packet.Write(array.GetLength(i)); ! packet.Write(array.GetLowerBound(i) + 1); } *************** *** 286,290 **** // Write parameter size ! this.WriteInt(packet.GetByteCount()); // Write parameter data this.Write(packet.ToArray()); --- 303,308 ---- // Write parameter size ! this.Write(packet.Length); ! // Write parameter data this.Write(packet.ToArray()); *************** *** 306,311 **** // Write packet contents ! packet.WriteInt(GetByteCount() + 4); ! packet.Write(ToArray()); return packet.ToArray(); --- 324,329 ---- // Write packet contents ! packet.Write((int)(this.Length + 4)); ! packet.Write(this.ToArray()); return packet.ToArray(); *************** *** 317,322 **** packet.Write((byte)format); ! packet.WriteInt(GetByteCount() + 4); ! packet.Write(ToArray()); return packet.ToArray(); --- 335,340 ---- packet.Write((byte)format); ! packet.Write((int)(this.Length + 4)); ! packet.Write(this.ToArray()); return packet.ToArray(); *************** *** 325,346 **** #endregion ! #region · Private Methods · ! private void WriteParameter(PgOutputPacket packet, PgDataType dataType, int size, object value) { switch (dataType) { case PgDataType.Binary: ! packet.WriteInt(((byte[])value).Length); packet.Write((byte[])value); break; case PgDataType.Byte: ! packet.WriteInt(size); packet.Write((byte)value); break; case PgDataType.Boolean: ! packet.WriteInt(size); packet.Write(Convert.ToByte((bool)value)); break; --- 343,378 ---- #endregion ! #region · Methods · ! public void Write(byte[] buffer) ! { ! this.Write(buffer, 0, buffer.Length); ! } ! ! public void Write(byte[]buffer, int index, int count) ! { ! this.packet.Write(buffer, index, count); ! } ! ! #endregion ! ! #region · Private Methods · ! ! private void WriteParameter(PgOutputPacket packet, PgDataType dataType, int size, object value) { switch (dataType) { case PgDataType.Binary: ! packet.Write(((byte[])value).Length); packet.Write((byte[])value); break; case PgDataType.Byte: ! packet.Write(size); packet.Write((byte)value); break; case PgDataType.Boolean: ! packet.Write(size); packet.Write(Convert.ToByte((bool)value)); break; *************** *** 355,374 **** case PgDataType.Int2: ! packet.WriteInt(size); ! packet.WriteShort(Convert.ToInt16(value)); break; case PgDataType.Int4: ! packet.WriteInt(size); ! packet.WriteInt(Convert.ToInt32(value)); break; case PgDataType.Int8: ! packet.WriteInt(size); ! packet.WriteLong(Convert.ToInt64(value)); break; case PgDataType.Interval: ! packet.WriteInt(size); packet.WriteInterval(TimeSpan.Parse(value.ToString())); break; --- 387,406 ---- case PgDataType.Int2: ! packet.Write(size); ! packet.Write(Convert.ToInt16(value)); break; case PgDataType.Int4: ! packet.Write(size); ! packet.Write(Convert.ToInt32(value)); break; case PgDataType.Int8: ! packet.Write(size); ! packet.Write(Convert.ToInt64(value)); break; case PgDataType.Interval: ! packet.Write(size); packet.WriteInterval(TimeSpan.Parse(value.ToString())); break; *************** *** 377,381 **** { string paramValue = value.ToString(); ! packet.WriteInt(encoding.GetByteCount(paramValue)); packet.Write(paramValue.ToCharArray()); } --- 409,413 ---- { string paramValue = value.ToString(); ! packet.Write(encoding.GetByteCount(paramValue)); packet.Write(paramValue.ToCharArray()); } *************** *** 383,402 **** case PgDataType.Double: ! packet.WriteInt(size); ! packet.WriteDouble(Convert.ToDouble(value)); break; case PgDataType.Float: ! packet.WriteInt(size); ! packet.WriteFloat(Convert.ToSingle(value)); break; case PgDataType.Currency: ! packet.WriteInt(size); ! packet.WriteInt(Convert.ToInt32(Convert.ToSingle(value) * 100)); break; case PgDataType.Date: ! packet.WriteInt(size); packet.WriteDate(Convert.ToDateTime(value)); break; --- 415,434 ---- case PgDataType.Double: ! packet.Write(size); ! packet.Write(Convert.ToDouble(value)); break; case PgDataType.Float: ! packet.Write(size); ! packet.Write(Convert.ToSingle(value)); break; case PgDataType.Currency: ! packet.Write(size); ! packet.Write(Convert.ToInt32(Convert.ToSingle(value) * 100)); break; case PgDataType.Date: ! packet.Write(size); packet.WriteDate(Convert.ToDateTime(value)); break; *************** *** 419,444 **** case PgDataType.Point: ! packet.WriteInt(size); ! packet.WritePoint((PgPoint)value); break; case PgDataType.Circle: ! packet.WriteInt(size); ! packet.WriteCircle((PgCircle)value); break; case PgDataType.Line: ! packet.WriteInt(size); ! packet.WriteLine((PgLine)value); break; case PgDataType.LSeg: ! packet.WriteInt(size); ! packet.WriteLSeg((PgLSeg)value); break; case PgDataType.Box: ! packet.WriteInt(size); ! packet.WriteBox((PgBox)value); break; --- 451,476 ---- case PgDataType.Point: ! packet.Write(size); ! packet.Write((PgPoint)value); break; case PgDataType.Circle: ! packet.Write(size); ! packet.Write((PgCircle)value); break; case PgDataType.Line: ! packet.Write(size); ! packet.Write((PgLine)value); break; case PgDataType.LSeg: ! packet.Write(size); ! packet.Write((PgLSeg)value); break; case PgDataType.Box: ! packet.Write(size); ! packet.Write((PgBox)value); break; *************** *** 446,451 **** PgPolygon polygon = (PgPolygon)value; ! packet.WriteInt((size * polygon.Points.Length) + 4); ! packet.WritePolygon(polygon); break; --- 478,483 ---- PgPolygon polygon = (PgPolygon)value; ! packet.Write((int)((size * polygon.Points.Length) + 4)); ! packet.Write(polygon); break; *************** *** 453,458 **** PgPath path = (PgPath)value; ! packet.WriteInt((size * path.Points.Length) + 5); ! packet.WritePath(path); break; } --- 485,490 ---- PgPath path = (PgPath)value; ! packet.Write((int)((size * path.Points.Length) + 5)); ! packet.Write(path); break; } Index: PgCodes.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgCodes.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgCodes.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgCodes.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 69,74 **** // Format codes ! public const int TEXT_FORMAT = 0; ! public const int BINARY_FORMAT = 1; // Date & Time codes --- 69,74 ---- // Format codes ! public const short TEXT_FORMAT = 0; ! public const short BINARY_FORMAT = 1; // Date & Time codes Index: PgClientNotificationEventArgs.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Protocol/PgClientNotificationEventArgs.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgClientNotificationEventArgs.cs 8 Sep 2005 18:41:55 -0000 1.1 --- PgClientNotificationEventArgs.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 54,65 **** #region · Constructors · ! public PgClientNotificationEventArgs( ! int processID, ! string condition, ! string addtional) { this.processID = processID; this.condition = condition; ! this.aditional = aditional; } --- 54,62 ---- #region · Constructors · ! public PgClientNotificationEventArgs(int processID, string condition, string addtional) { this.processID = processID; this.condition = condition; ! this.aditional = addtional; } |
From: Carlos G. Á. <car...@us...> - 2005-09-09 21:35:09
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5092/Data/PostgreSqlClient Modified Files: PgCommand.cs PgCommandBuilder.cs PgConnection.cs PgConnectionInternal.cs PgDataAdapter.cs PgDataReader.cs PgErrorCollection.cs PgException.cs PgParameter.cs PgParameterCollection.cs PgTransaction.cs Log Message: Started the reorganization of the CVS module Index: PgConnectionInternal.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgConnectionInternal.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgConnectionInternal.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgConnectionInternal.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 22,28 **** using System.Text; using System.Text.RegularExpressions; - - using Mono.Security.Protocol.Tls; - using PostgreSql.Data.Protocol; using PostgreSql.Data.DbSchema; --- 22,25 ---- *************** *** 124,129 **** this.pooled = true; this.database = new PgDbClient(); ! this.owningConnection = owningConnection; ! if (connectionString != null) { --- 121,125 ---- this.pooled = true; this.database = new PgDbClient(); ! if (connectionString != null) { *************** *** 140,145 **** try { - this.database.SslConnection = new SslConnectionCallback(OnSslConnection); - this.database.Settings = this.Options; this.database.Connect(); --- 136,139 ---- *************** *** 347,363 **** #endregion - - #region SSL Callbacks - - private void OnSslConnection() - { - // Server certificate validation - this.database.SslClientStream.ServerCertValidationDelegate = new CertificateValidationCallback(owningConnection.OnServerCertificateValidation); - - // Client certificate selection - this.database.SslClientStream.ClientCertSelectionDelegate = new CertificateSelectionCallback(owningConnection.OnClientCertificateSelection); - } - - #endregion } } \ No newline at end of file --- 341,344 ---- Index: PgDataReader.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgDataReader.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgDataReader.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgDataReader.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 31,35 **** namespace PostgreSql.Data.PostgreSqlClient { ! public sealed class PgDataReader : MarshalByRefObject, IEnumerable, IDataReader, IDisposable, IDataRecord { #region · Fields · --- 31,35 ---- namespace PostgreSql.Data.PostgreSqlClient { ! public sealed class PgDataReader : DbDataReader { #region · Fields · *************** *** 49,52 **** --- 49,66 ---- #endregion + #region · Indexers · + + public override object this[int i] + { + get { return this.GetValue(i); } + } + + public override object this[string name] + { + get { return this.GetValue(this.GetOrdinal(name)); } + } + + #endregion + #region · Constructors · *************** *** 71,74 **** --- 85,89 ---- #region · Finalizer · + /// <include file='Doc/en_EN/FbDataReader.xml' path='doc/class[@name="FbDataReader"]/destructor[@name="Finalize"]/*'/> ~PgDataReader() { *************** *** 78,84 **** #endregion ! #region · IDisposable Methods · ! void IDisposable.Dispose() { this.Dispose(true); --- 93,99 ---- #endregion ! #region · IDisposable methods · ! public override void Dispose() { this.Dispose(true); *************** *** 96,104 **** // release any managed resources this.Close(); - - this.command = null; - this.connection = null; - this.row = null; - this.schemaTable= null; } --- 111,114 ---- *************** *** 108,112 **** { } ! this.disposed = true; } --- 118,122 ---- { } ! this.disposed = true; } *************** *** 115,141 **** #endregion ! #region IDataReader Properties & Methods ! public int Depth { get { return 0; } } ! public bool IsClosed { get { return !this.open; } } ! public int RecordsAffected { get { return this.IsClosed ? this.recordsAffected : -1; } } ! public bool HasRows { get { return this.command.Statement.HasRows; } } ! public void Close() { if (!this.open) --- 125,151 ---- #endregion ! #region · IDataReader Properties & Methods · ! public override int Depth { get { return 0; } } ! public override bool IsClosed { get { return !this.open; } } ! public override int RecordsAffected { get { return this.IsClosed ? this.recordsAffected : -1; } } ! public override bool HasRows { get { return this.command.Statement.HasRows; } } ! public override void Close() { if (!this.open) *************** *** 170,179 **** } ! public bool NextResult() { return false; } ! public bool Read() { bool read = false; --- 180,189 ---- } ! public override bool NextResult() { return false; } ! public override bool Read() { bool read = false; *************** *** 207,213 **** #endregion ! #region GetSchemaTable Method ! public DataTable GetSchemaTable() { if (schemaTable == null) --- 217,223 ---- #endregion ! #region · GetSchemaTable Method · ! public override DataTable GetSchemaTable() { if (schemaTable == null) *************** *** 355,380 **** #endregion ! #region Indexers ! ! public object this[int i] ! { ! get { return this.GetValue(i); } ! } ! ! public object this[string name] ! { ! get { return this.GetValue(this.GetOrdinal(name)); } ! } ! ! #endregion ! ! #region IDataRecord Properties & Methods ! public int FieldCount { get { return this.command.Statement.RowDescriptor.Fields.Length; } } ! public String GetName(int i) { this.CheckIndex(i); --- 365,376 ---- #endregion ! #region · IDataRecord Properties & Methods · ! public override int FieldCount { get { return this.command.Statement.RowDescriptor.Fields.Length; } } ! public override String GetName(int i) { this.CheckIndex(i); *************** *** 384,388 **** [EditorBrowsable(EditorBrowsableState.Never)] ! public String GetDataTypeName(int i) { this.CheckIndex(i); --- 380,384 ---- [EditorBrowsable(EditorBrowsableState.Never)] ! public override string GetDataTypeName(int i) { this.CheckIndex(i); *************** *** 391,395 **** } ! public Type GetFieldType(int i) { this.CheckIndex(i); --- 387,391 ---- } ! public override Type GetFieldType(int i) { this.CheckIndex(i); *************** *** 398,402 **** } ! public object GetValue(int i) { this.CheckPosition(); --- 394,398 ---- } ! public override object GetValue(int i) { this.CheckPosition(); *************** *** 406,414 **** } ! public int GetValues(object[] values) { this.CheckPosition(); ! for (int i = 0; i < FieldCount; i++) { values[i] = GetValue(i); --- 402,410 ---- } ! public override int GetValues(object[] values) { this.CheckPosition(); ! for (int i = 0; i < this.FieldCount; i++) { values[i] = GetValue(i); *************** *** 418,422 **** } ! public int GetOrdinal(string name) { if (this.IsClosed) --- 414,418 ---- } ! public override int GetOrdinal(string name) { if (this.IsClosed) *************** *** 425,429 **** } ! for (int i = 0; i < this.command.Statement.RowDescriptor.Fields.Length; i++) { if (this.CultureAwareCompare(command.Statement.RowDescriptor.Fields[i].FieldName, name)) --- 421,425 ---- } ! for (int i = 0; i < this.FieldCount; i++) { if (this.CultureAwareCompare(command.Statement.RowDescriptor.Fields[i].FieldName, name)) *************** *** 436,440 **** } ! public bool GetBoolean(int i) { this.CheckPosition(); --- 432,436 ---- } ! public override bool GetBoolean(int i) { this.CheckPosition(); *************** *** 444,448 **** } ! public byte GetByte(int i) { this.CheckPosition(); --- 440,444 ---- } ! public override byte GetByte(int i) { this.CheckPosition(); *************** *** 452,461 **** } ! public long GetBytes( ! int i, ! long dataIndex, ! byte[] buffer, ! int bufferIndex, ! int length) { int bytesRead = 0; --- 448,452 ---- } ! public override long GetBytes(int i, long dataIndex, byte[] buffer, int bufferIndex, int length) { int bytesRead = 0; *************** *** 498,502 **** [EditorBrowsable(EditorBrowsableState.Never)] ! public char GetChar(int i) { this.CheckPosition(); --- 489,493 ---- [EditorBrowsable(EditorBrowsableState.Never)] ! public override char GetChar(int i) { this.CheckPosition(); *************** *** 506,515 **** } ! public long GetChars( ! int i, ! long dataIndex, ! char[] buffer, ! int bufferIndex, ! int length) { this.CheckPosition(); --- 497,501 ---- } ! public override long GetChars(int i, long dataIndex, char[] buffer, int bufferIndex, int length) { this.CheckPosition(); *************** *** 555,564 **** } ! public Guid GetGuid(int i) { throw new NotSupportedException("Guid datatype is not supported"); } ! public Int16 GetInt16(int i) { this.CheckPosition(); --- 541,550 ---- } ! public override Guid GetGuid(int i) { throw new NotSupportedException("Guid datatype is not supported"); } ! public override Int16 GetInt16(int i) { this.CheckPosition(); *************** *** 568,572 **** } ! public Int32 GetInt32(int i) { this.CheckPosition(); --- 554,558 ---- } ! public override Int32 GetInt32(int i) { this.CheckPosition(); *************** *** 576,580 **** } ! public Int64 GetInt64(int i) { this.CheckPosition(); --- 562,566 ---- } ! public override Int64 GetInt64(int i) { this.CheckPosition(); *************** *** 584,588 **** } ! public float GetFloat(int i) { this.CheckPosition(); --- 570,574 ---- } ! public override float GetFloat(int i) { this.CheckPosition(); *************** *** 592,596 **** } ! public double GetDouble(int i) { this.CheckPosition(); --- 578,582 ---- } ! public override double GetDouble(int i) { this.CheckPosition(); *************** *** 600,604 **** } ! public String GetString(int i) { this.CheckPosition(); --- 586,590 ---- } ! public override string GetString(int i) { this.CheckPosition(); *************** *** 608,612 **** } ! public Decimal GetDecimal(int i) { this.CheckPosition(); --- 594,598 ---- } ! public override Decimal GetDecimal(int i) { this.CheckPosition(); *************** *** 616,620 **** } ! public DateTime GetDateTime(int i) { this.CheckPosition(); --- 602,606 ---- } ! public override DateTime GetDateTime(int i) { this.CheckPosition(); *************** *** 708,717 **** } ! public IDataReader GetData(int i) ! { ! throw new NotSupportedException(); ! } ! ! public bool IsDBNull(int i) { this.CheckPosition(); --- 694,698 ---- } ! public override bool IsDBNull(int i) { this.CheckPosition(); *************** *** 730,736 **** #endregion ! #region IEnumerable Methods ! IEnumerator IEnumerable.GetEnumerator() { return new DbEnumerator(this); --- 711,717 ---- #endregion ! #region · IEnumerable Methods · ! public override IEnumerator GetEnumerator() { return new DbEnumerator(this); Index: PgErrorCollection.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgErrorCollection.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgErrorCollection.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgErrorCollection.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 24,29 **** namespace PostgreSql.Data.PostgreSqlClient { ! [Serializable, ! ListBindable(false)] public sealed class PgErrorCollection : ICollection, IEnumerable { --- 24,28 ---- namespace PostgreSql.Data.PostgreSqlClient { ! [Serializable, ListBindable(false)] public sealed class PgErrorCollection : ICollection, IEnumerable { Index: PgParameterCollection.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgParameterCollection.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgParameterCollection.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgParameterCollection.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 19,22 **** --- 19,23 ---- using System; using System.Data; + using System.Data.Common; using System.ComponentModel; using System.Collections; *************** *** 25,68 **** namespace PostgreSql.Data.PostgreSqlClient { ! [ListBindable(false), ! Editor(typeof(Design.PgParameterCollectionEditor), typeof(System.Drawing.Design.UITypeEditor))] ! public sealed class PgParameterCollection : MarshalByRefObject, IDataParameterCollection, IList, ICollection, IEnumerable { #region · Fields · ! private ArrayList parameters = new ArrayList(); #endregion ! #region · Properties · ! object IDataParameterCollection.this[string parameterName] { ! get { return this[parameterName]; } ! set { this[parameterName] = (PgParameter)value; } } ! [Browsable(false), ! DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] ! public PgParameter this[string parameterName] { ! get { return (PgParameter)this[IndexOf(parameterName)]; } ! set { this[IndexOf(parameterName)] = (PgParameter)value; } } ! object IList.this[int parameterIndex] { ! get { return (PgParameter)this.parameters[parameterIndex]; } ! set { this.parameters[parameterIndex] = (PgParameter)value; } } ! [Browsable(false), ! DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] ! public PgParameter this[int parameterIndex] { ! get { return (PgParameter)this.parameters[parameterIndex]; } ! set { this.parameters[parameterIndex] = (PgParameter)value; } } ! #endregion --- 26,88 ---- namespace PostgreSql.Data.PostgreSqlClient { ! [ListBindable(false)] ! [Editor(typeof(Design.PgParameterCollectionEditor), typeof(System.Drawing.Design.UITypeEditor))] ! public sealed class PgParameterCollection : DbParameterCollection { #region · Fields · ! private ArrayList parameters; #endregion ! #region · Indexers · ! [Browsable(false)] ! [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] ! public new PgParameter this[string parameterName] { ! get { return (PgParameter)this[this.IndexOf(parameterName)]; } ! set { this[this.IndexOf(parameterName)] = (PgParameter)value; } } ! [Browsable(false)] ! [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] ! public new PgParameter this[int index] { ! get { return (PgParameter)this.parameters[index]; } ! set { this.parameters[index] = (PgParameter)value; } } ! #endregion ! ! #region · DbParameterCollection Properties · ! ! [Browsable(false)] ! [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] ! public override int Count { ! get { return this.parameters.Count; } } ! public override bool IsFixedSize { ! get { return this.parameters.IsFixedSize; } } ! ! public override bool IsReadOnly ! { ! get { return this.parameters.IsReadOnly; } ! } ! ! public override bool IsSynchronized ! { ! get { return this.parameters.IsSynchronized; } ! } ! ! public override object SyncRoot ! { ! get { return this.parameters.SyncRoot; } ! } ! #endregion *************** *** 71,158 **** internal PgParameterCollection() { } #endregion ! #region · IList Properties · ! bool IList.IsFixedSize { ! get { return this.parameters.IsFixedSize; } } ! bool IList.IsReadOnly { ! get { return this.parameters.IsReadOnly; } } #endregion ! #region · ICollection Properties · ! [Browsable(false), ! DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] ! public int Count { ! get { return this.parameters.Count; } } ! ! bool ICollection.IsSynchronized { ! get { return this.parameters.IsSynchronized; } } ! object ICollection.SyncRoot { ! get { return this.parameters.SyncRoot; } } ! #endregion ! ! #region · ICollection Methods · ! public void CopyTo(Array array, int index) { ! this.parameters.CopyTo(array, index); } ! #endregion ! #region · IList Methods · ! public void Clear() { ! this.parameters.Clear(); } ! #endregion ! #region · IEnumerable Methods · ! public IEnumerator GetEnumerator() ! { ! return this.parameters.GetEnumerator(); } ! #endregion ! #region · Methods · ! public bool Contains(object value) { return this.parameters.Contains(value); } ! public bool Contains(string parameterName) { return (-1 != this.IndexOf(parameterName)); } ! public int IndexOf(object value) { return this.parameters.IndexOf(value); } ! public int IndexOf(string parameterName) { int index = 0; --- 91,224 ---- internal PgParameterCollection() { + this.parameters = ArrayList.Synchronized(new ArrayList()); } #endregion ! #region · DbParameterCollection Protected methods · ! protected override DbParameter GetParameter(string parameterName) { ! return this[parameterName]; } ! protected override DbParameter GetParameter(int index) { ! return this[index]; ! } ! ! protected override void SetParameter(int index, DbParameter value) ! { ! this[index] = (PgParameter)value; ! } ! ! protected override void SetParameter(string parameterName, DbParameter value) ! { ! this[parameterName] = (PgParameter)value; } #endregion ! #region · DbParameterCollection overriden methods · ! public override void CopyTo(Array array, int index) { ! this.parameters.CopyTo(array, index); } ! ! public override void Clear() { ! this.parameters.Clear(); } ! public override IEnumerator GetEnumerator() { ! return this.parameters.GetEnumerator(); } ! public override void AddRange(Array values) ! { ! foreach (PgParameter parameter in values) ! { ! this.Add(parameter); ! } ! } ! public PgParameter Add(string parameterName, object value) { ! return this.Add(new PgParameter(parameterName, value)); } ! public PgParameter Add(string parameterName, PgDbType providerType) ! { ! return this.Add(new PgParameter(parameterName, providerType)); ! } ! public PgParameter Add(string parameterName, PgDbType providerType, int size) ! { ! return this.Add(new PgParameter(parameterName, providerType, size)); ! } ! public PgParameter Add(string parameterName, PgDbType providerType, int size, string sourceColumn) { ! return this.Add(new PgParameter(parameterName, providerType, size, sourceColumn)); } ! public PgParameter Add(PgParameter value) ! { ! lock (this.parameters.SyncRoot) ! { ! if (value == null) ! { ! throw new ArgumentException("The value parameter is null."); ! } ! if (value.Parent != null) ! { ! throw new ArgumentException("The PgParameter specified in the value parameter is already added to this or another FbParameterCollection."); ! } ! if (value.ParameterName == null || value.ParameterName.Length == 0) ! { ! //value.ParameterName = this.GenerateParameterName(); ! } ! else ! { ! if (this.IndexOf(value) != -1) ! { ! throw new ArgumentException("PgParameterCollection already contains PgParameter with ParameterName '" + value.ParameterName + "'."); ! } ! } ! this.parameters.Add(value); ! return value; ! } } ! public override int Add(object value) ! { ! if (!(value is PgParameter)) ! { ! throw new InvalidCastException("The parameter passed was not a PgParameter."); ! } ! return this.IndexOf(this.Add(value as PgParameter)); ! } ! public override bool Contains(object value) { return this.parameters.Contains(value); } ! public override bool Contains(string parameterName) { return (-1 != this.IndexOf(parameterName)); } ! public override int IndexOf(object value) { return this.parameters.IndexOf(value); } ! public override int IndexOf(string parameterName) { int index = 0; *************** *** 160,168 **** foreach (PgParameter item in this.parameters) { ! if (this.CultureAwareCompare(item.ParameterName, parameterName)) { return index; } - index++; } --- 226,233 ---- foreach (PgParameter item in this.parameters) { ! if (item.ParameterName == parameterName) { return index; } index++; } *************** *** 171,180 **** } ! public void Insert(int index, object value) { this.parameters.Insert(index, value); } ! public void Remove(object value) { if (!(value is PgParameter)) --- 236,245 ---- } ! public override void Insert(int index, object value) { this.parameters.Insert(index, value); } ! public override void Remove(object value) { if (!(value is PgParameter)) *************** *** 182,186 **** throw new InvalidCastException("The parameter passed was not a PgParameter."); } - if (!this.Contains(value)) { --- 247,250 ---- *************** *** 189,269 **** this.parameters.Remove(value); - } - - public void RemoveAt(int index) - { - this.parameters.RemoveAt(index); - } ! public void RemoveAt(string parameterName) ! { ! this.RemoveAt(IndexOf(parameterName)); } ! public int Add(object value) { ! if (!(value is PgParameter)) ! { ! throw new InvalidCastException("The parameter passed was not a PgParameter."); ! } ! ! return this.parameters.Add((PgParameter)value); } ! public PgParameter Add(PgParameter param) { ! if (param.ParameterName != null) ! { ! this.parameters.Add(param); ! ! return param; ! } ! else { ! throw new ArgumentException("parameter must be named"); } - } - - public PgParameter Add(string parameterName, PgDbType PgType) - { - PgParameter param = new PgParameter(parameterName, PgType); - - return Add(param); - } - - public PgParameter Add(string parameterName, object value) - { - PgParameter param = new PgParameter(parameterName, value); ! return Add(param); ! } ! ! public PgParameter Add(string parameterName, PgDbType PgType, int size) ! { ! PgParameter param = new PgParameter(parameterName, PgType, size); ! ! return Add(param); ! } ! ! public PgParameter Add(string parameterName, PgDbType PgType, int size, string sourceColumn) ! { ! PgParameter param = new PgParameter(parameterName, PgType, size, sourceColumn); ! ! return Add(param); ! } ! ! #endregion ! ! #region · Private Methods · ! ! private bool CultureAwareCompare(string strA, string strB) ! { ! return CultureInfo.CurrentCulture.CompareInfo.Compare( ! strA, ! strB, ! CompareOptions.IgnoreKanaType | CompareOptions.IgnoreWidth | ! CompareOptions.IgnoreCase) == 0 ? true : false; } ! #endregion } --- 253,276 ---- this.parameters.Remove(value); ! ((PgParameter)value).Parent = null; } ! public override void RemoveAt(string parameterName) { ! this.RemoveAt(this.IndexOf(parameterName)); } ! public override void RemoveAt(int index) { ! if (index < 0 || index > this.Count) { ! throw new IndexOutOfRangeException("The specified index does not exist."); } ! this[index].Parent = null; ! this.parameters.RemoveAt(index); } ! #endregion } Index: PgCommandBuilder.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgCommandBuilder.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgCommandBuilder.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgCommandBuilder.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 27,831 **** namespace PostgreSql.Data.PostgreSqlClient { ! public sealed class PgCommandBuilder : Component ! { ! #region · Fields · ! ! private PgDataAdapter dataAdapter; ! private PgCommand insertCommand; ! private PgCommand updateCommand; ! private PgCommand deleteCommand; ! private DataTable schemaTable; ! private string sqlInsert; ! private string sqlUpdate; ! private string sqlDelete; ! private string separator; ! private string whereClausule1; ! private string whereClausule2; ! private string setClausule; ! private string tableName; ! private bool hasPrimaryKey; ! private bool hasUniqueKey; ! private string quotePrefix; ! private string quoteSuffix; ! private bool disposed; ! ! private PgRowUpdatingEventHandler adapterHandler; ! ! #endregion ! ! #region · Properties · ! ! [DefaultValue(null)] ! public PgDataAdapter DataAdapter ! { ! get { return this.dataAdapter; } ! set ! { ! this.dataAdapter = value; ! ! // Registers the CommandBuilder as a listener for RowUpdating events that are ! // generated by the PgDataAdapter specified in this property. ! if (this.dataAdapter != null) ! { ! this.adapterHandler = new PgRowUpdatingEventHandler(this.RowUpdatingHandler); ! this.dataAdapter.RowUpdating += this.adapterHandler; ! } ! } ! } ! ! [Browsable(false), ! DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] ! public string QuotePrefix ! { ! get { return this.quotePrefix; } ! set ! { ! if (this.insertCommand != null || ! this.updateCommand != null || ! this.deleteCommand != null) ! { ! throw new InvalidOperationException("This property cannot be changed after an insert, update, or delete command has been generated."); ! } ! ! this.quotePrefix = value; ! } ! } ! ! [Browsable(false), ! DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] ! public string QuoteSuffix ! { ! get { return this.quoteSuffix; } ! set ! { ! if (this.insertCommand != null || ! this.updateCommand != null || ! this.deleteCommand != null) ! { ! throw new InvalidOperationException("This property cannot be changed after an insert, update, or delete command has been generated."); ! } ! ! this.quoteSuffix = value; ! } ! } ! ! #endregion ! ! #region · Internal Properties · ! ! internal PgCommand SelectCommand ! { ! get ! { ! if (this.dataAdapter.SelectCommand != null) ! { ! return this.dataAdapter.SelectCommand; ! } ! ! return null; ! } ! } ! ! #endregion ! ! #region · Constructors · ! ! public PgCommandBuilder() : base() ! { ! this.sqlInsert = "INSERT INTO {0} ({1}) VALUES ({2})"; ! this.sqlUpdate = "UPDATE {0} SET {1} WHERE ( {2} )"; ! this.sqlDelete = "DELETE FROM {0} WHERE ( {1} )"; ! this.whereClausule1 = "(({0} IS NULL AND ${1} = NULL) OR ({0} = ${2}))"; ! // this.whereClausule2 = "({0} = ${1})"; ! // this.setClausule = "{0} = ${1}"; ! this.whereClausule2 = "({0} = {1})"; ! this.setClausule = "{0} = {1}"; ! this.separator = ", "; ! this.quotePrefix = String.Empty; ! this.quoteSuffix = String.Empty; ! ! GC.SuppressFinalize(this); ! } ! ! public PgCommandBuilder(PgDataAdapter adapter) : this() ! { ! this.DataAdapter = adapter; ! } ! ! #endregion ! ! #region · IDisposable Methods · ! ! protected override void Dispose(bool disposing) ! { ! if (!this.disposed) ! { ! try ! { ! if (disposing) ! { ! this.RefreshSchema(); ! ! if (this.adapterHandler != null) ! { ! this.dataAdapter.RowUpdating -= this.adapterHandler; ! } ! ! this.sqlInsert = null; ! this.sqlUpdate = null; ! this.sqlDelete = null; ! this.whereClausule1 = null; ! this.whereClausule2 = null; ! this.setClausule = null; ! this.separator = null; ! this.quotePrefix = null; ! this.quoteSuffix = null; ! } ! ! // release any unmanaged resources ! ! this.disposed = true; ! } ! finally ! { ! base.Dispose(disposing); ! } ! } ! } ! ! #endregion ! ! #region · Static Methods · ! ! public static void DeriveParameters(PgCommand command) ! { ! if (command.CommandType != CommandType.StoredProcedure) ! { ! throw new InvalidOperationException("The command text is not a valid stored procedure name."); ! } ! command.Parameters.Clear(); ! DataTable spSchema = command.Connection.GetSchema("Functions", new string[] { null, command.CommandText.ToLower() }); ! ! if (spSchema.Rows.Count != 0) ! { ! int[] parameterTypes = (int[])spSchema.Rows[0]["ARGUMENTS"]; ! int parameterCount = (short)spSchema.Rows[0]["ARGUMENT_NUMBER"]; ! for (int i = 0; i < parameterCount; i++) ! { ! PgParameter parameter = command.Parameters.Add( ! "@ip" + i.ToString(), ! (PgDbType)PgDbClient.Types[parameterTypes[i]].DataType); ! parameter.Direction = ParameterDirection.Input; ! } ! ! int returnType = (int)spSchema.Rows[0]["RETURN_TYPE"]; ! if (returnType != 0) ! { ! PgParameter parameter = command.Parameters.Add( ! "@op0", ! PgDbClient.Types[returnType]); ! parameter.Direction = ParameterDirection.Output; ! } ! } ! } ! #endregion ! #region · Methods · ! ! public PgCommand GetInsertCommand() ! { ! if (this.insertCommand == null) ! { ! this.BuildInsertCommand(null, null); ! } ! ! return this.insertCommand; ! } ! public PgCommand GetUpdateCommand() ! { ! if (this.updateCommand == null) ! { ! this.BuildUpdateCommand(null, null); ! } ! ! return this.updateCommand; ! } ! public PgCommand GetDeleteCommand() ! { ! if (this.deleteCommand == null) ! { ! this.BuildDeleteCommand(null, null); ! } ! ! return this.deleteCommand; ! } ! ! public void RefreshSchema() ! { ! if (this.dataAdapter != null) ! { ! if (this.dataAdapter.InsertCommand == this.insertCommand) ! { ! this.dataAdapter.InsertCommand = null; ! } ! if (this.dataAdapter.DeleteCommand == this.deleteCommand) ! { ! this.dataAdapter.DeleteCommand = null; ! } ! if (this.dataAdapter.UpdateCommand == this.updateCommand) ! { ! this.dataAdapter.UpdateCommand = null; ! } ! } ! if (this.insertCommand != null) ! { ! this.insertCommand.Dispose(); ! } ! if (this.updateCommand != null) ! { ! this.updateCommand.Dispose(); ! } ! if (this.deleteCommand != null) ! { ! this.deleteCommand.Dispose(); ! } ! if (this.schemaTable != null) ! { ! this.schemaTable.Dispose(); ! } ! this.schemaTable = null; ! this.insertCommand = null; ! this.updateCommand = null; ! this.deleteCommand = null; ! } #endregion ! #region Build Command Methods ! ! private PgCommand BuildInsertCommand(DataRow row, DataTableMapping tableMapping) ! { ! StringBuilder sql = new StringBuilder(); ! StringBuilder fields = new StringBuilder(); ! StringBuilder values = new StringBuilder(); ! ! this.BuildSchemaTable(); ! ! // Create a new command ! this.CreateCommand(ref this.insertCommand); ! ! int i = 1; ! foreach (DataRow schemaRow in schemaTable.Rows) ! { ! if (this.IsUpdatable(schemaRow, row, tableMapping)) ! { ! if (fields.Length > 0) ! { ! fields.Append(this.separator); ! } ! if (values.Length > 0) ! { ! values.Append(this.separator); ! } ! ! PgParameter parameter = this.CreateParameter( ! schemaRow, ! i, ! false); ! ! if (row != null && tableMapping != null) ! { ! DataColumn column = this.GetDataColumn( ! schemaRow["BaseColumnName"].ToString(), ! tableMapping, ! row); ! ! if (column != null) ! { ! parameter.Value = row[column]; ! } ! } ! ! i++; ! ! // Build Field name and append it to the string ! fields.Append(this.GetQuotedIdentifier(schemaRow["BaseColumnName"])); ! ! // Build value name and append it to the string ! values.Append(parameter.ParameterName); ! ! this.insertCommand.Parameters.Add(parameter); ! } ! } ! ! sql.AppendFormat( ! this.sqlInsert, ! this.GetQuotedIdentifier(tableName), ! fields.ToString(), ! values.ToString()); ! ! this.insertCommand.CommandText = sql.ToString(); ! ! return this.insertCommand; ! } ! ! private PgCommand BuildUpdateCommand(DataRow row, DataTableMapping tableMapping) ! { ! StringBuilder sql = new StringBuilder(); ! StringBuilder sets = new StringBuilder(); ! StringBuilder where = new StringBuilder(); ! ! this.BuildSchemaTable(); ! ! if (!this.hasPrimaryKey && !this.hasUniqueKey) ! { ! throw new InvalidOperationException("Dynamic SQL generation for the UpdateCommand is not supported against a SelectCommand that does not return any key column information."); ! } ! ! // Create a new command ! this.CreateCommand(ref this.updateCommand); ! ! int i = 1; ! foreach (DataRow schemaRow in schemaTable.Rows) ! { ! if (this.IsUpdatable(schemaRow, row, tableMapping)) ! { ! if (sets.Length > 0) ! { ! sets.Append(separator); ! } ! ! PgParameter parameter = this.CreateParameter(schemaRow, i, false); ! ! // Build Field name and append it to the string ! sets.AppendFormat( ! this.setClausule, ! this.GetQuotedIdentifier(schemaRow["BaseColumnName"]), ! parameter.ParameterName); ! ! if (row != null && tableMapping != null) ! { ! DataColumn column = this.GetDataColumn( ! schemaRow["BaseColumnName"].ToString(), ! tableMapping, ! row); ! ! if (column != null) ! { ! parameter.Value = row[column]; ! } ! } ! ! this.updateCommand.Parameters.Add(parameter); ! ! i++; ! } ! } ! ! // Build where clausule ! foreach (DataRow schemaRow in schemaTable.Rows) ! { ! if (this.IncludedInWhereClause(schemaRow)) ! { ! if (where.Length > 0) ! { ! where.Append(" AND "); ! } ! ! string quotedId = this.GetQuotedIdentifier(schemaRow["BaseColumnName"]); ! ! PgParameter parameter = this.CreateParameter(schemaRow, i, true); ! ! where.AppendFormat( ! this.whereClausule2, ! quotedId, ! parameter.ParameterName); ! ! if (row != null && tableMapping != null) ! { ! DataColumn column = this.GetDataColumn( ! schemaRow["BaseColumnName"].ToString(), ! tableMapping, ! row); ! ! if (column != null) ! { ! parameter.Value = row[column, DataRowVersion.Original]; ! } ! } ! ! this.updateCommand.Parameters.Add(parameter); ! ! i++; ! } ! } ! ! sql.AppendFormat( ! this.sqlUpdate, ! this.GetQuotedIdentifier(tableName), ! sets.ToString(), ! where.ToString()); ! ! this.updateCommand.CommandText = sql.ToString(); ! ! return this.updateCommand; ! } ! ! private PgCommand BuildDeleteCommand(DataRow row, DataTableMapping tableMapping) ! { ! StringBuilder sql = new StringBuilder(); ! StringBuilder where = new StringBuilder(); ! string dsColumnName = String.Empty; ! ! this.BuildSchemaTable(); ! ! if (!this.hasPrimaryKey && !this.hasUniqueKey) ! { ! throw new InvalidOperationException("Dynamic SQL generation for the DeleteCommand is not supported against a SelectCommand that does not return any key column information."); ! } ! ! // Create a new command ! this.CreateCommand(ref this.deleteCommand); ! ! // Build where clausule ! int i = 1; ! foreach (DataRow schemaRow in schemaTable.Rows) ! { ! if (this.IncludedInWhereClause(schemaRow)) ! { ! if (where.Length > 0) ! { ! where.Append(" AND "); ! } ! ! string quotedId = this.GetQuotedIdentifier(schemaRow["BaseColumnName"]); ! ! PgParameter parameter = this.CreateParameter(schemaRow, i, true); ! ! where.AppendFormat( ! this.whereClausule2, ! quotedId, ! parameter.ParameterName); ! ! if (row != null && tableMapping != null) ! { ! DataColumn column = this.GetDataColumn( ! schemaRow["BaseColumnName"].ToString(), ! tableMapping, ! row); ! ! if (column != null) ! { ! parameter.Value = row[column, DataRowVersion.Original]; ! } ! } ! ! this.deleteCommand.Parameters.Add(parameter); ! ! i++; ! } ! } ! ! sql.AppendFormat( ! this.sqlDelete, ! this.GetQuotedIdentifier(tableName), ! where.ToString()); ! ! this.deleteCommand.CommandText = sql.ToString(); ! ! return this.deleteCommand; ! } ! ! private PgParameter CreateParameter( ! DataRow schemaRow, ! int index, ! bool isWhereParameter) ! { ! PgParameter parameter = new PgParameter(String.Format("@p{0}", index), (PgDbType)schemaRow["ProviderType"]); ! ! parameter.Size = Convert.ToInt32(schemaRow["ColumnSize"]); ! if (schemaRow["NumericPrecision"] != DBNull.Value) ! { ! parameter.Precision = Convert.ToByte(schemaRow["NumericPrecision"]); ! } ! if (schemaRow["NumericScale"] != DBNull.Value) ! { ! parameter.Precision = Convert.ToByte(schemaRow["NumericScale"]); ! } ! parameter.SourceColumn = Convert.ToString(schemaRow["BaseColumnName"]); ! ! if (isWhereParameter) ! { ! parameter.SourceVersion = DataRowVersion.Original; ! } ! else ! { ! parameter.SourceVersion = DataRowVersion.Current; ! } ! ! return parameter; ! } ! ! private bool IsUpdatable( ! DataRow schemaRow, ! DataRow row, ! DataTableMapping tableMapping) ! { ! if (row != null && tableMapping != null) ! { ! DataColumn column = this.GetDataColumn( ! schemaRow["BaseColumnName"].ToString(), ! tableMapping, ! row); ! ! if (column != null) ! { ! if (column.Expression != null && column.Expression.Length != 0) ! { ! return false; ! } ! if (column.AutoIncrement) ! { ! return false; ! } ! if (column.ReadOnly) ! { ! return false; ! } ! } ! } ! ! if ((bool) schemaRow["IsExpression"]) ! { ! return false; ! } ! if ((bool) schemaRow["IsAutoIncrement"]) ! { ! return false; ! } ! if ((bool) schemaRow["IsRowVersion"]) ! { ! return false; ! } ! if ((bool) schemaRow["IsReadOnly"]) ! { ! return false; ! } ! ! return true; ! } ! private bool IncludedInWhereClause(DataRow schemaRow) ! { ! PgDbType pgDbType = (PgDbType)schemaRow["ProviderType"]; ! if (!(bool)schemaRow["IsKey"]) ! { ! return false; ! } ! if (pgDbType == PgDbType.Binary) ! { ! return false; ! } ! if (pgDbType == PgDbType.Array) ! { ! return false; ! } ! return true; ! } ! private void BuildSchemaTable() ! { ! bool mustClose = false; ! if (this.SelectCommand == null) ! { ! throw new InvalidOperationException("The DataAdapter.SelectCommand property needs to be initialized."); ! } ! if (this.SelectCommand.Connection == null) ! { ! throw new InvalidOperationException("The DataAdapter.SelectCommand.Connection property needs to be initialized."); ! } ! if (this.schemaTable == null) ! { ! if (this.SelectCommand.Connection.State == ConnectionState.Closed) ! { ! mustClose = true; ! this.SelectCommand.Connection.Open(); ! } ! try ! { ! PgDataReader reader = SelectCommand.ExecuteReader(CommandBehavior.SchemaOnly); ! schemaTable = reader.GetSchemaTable(); ! reader.Close(); ! this.CheckSchemaTable(); ! } ! catch ! { ! throw; ! } ! finally ! { ! if (mustClose) ! { ! this.SelectCommand.Connection.Close(); ! } ! } ! } ! } ! private void CheckSchemaTable() ! { ! tableName = String.Empty; ! hasPrimaryKey = false; ! hasUniqueKey = false; ! foreach (DataRow schemaRow in schemaTable.Rows) ! { ! if (tableName.Length == 0) ! { ! tableName = (string)schemaRow["BaseSchemaName"] + "." + ! (string)schemaRow["BaseTableName"]; ! } ! if (!(bool)schemaRow["IsExpression"] && tableName != (string)schemaRow["BaseSchemaName"] + "." + (string)schemaRow["BaseTableName"]) ! { ! throw new InvalidOperationException("Dynamic SQL generation is not supported against multiple base tables."); ! } ! if ((bool)schemaRow["IsKey"]) ! { ! hasPrimaryKey = true; ! } ! if ((bool)schemaRow["IsUnique"]) ! { ! hasUniqueKey = true; ! } ! } ! } ! private string GetQuotedIdentifier(object identifier) ! { ! return quotePrefix + identifier.ToString() + quoteSuffix; ! } ! private void CreateCommand(ref PgCommand command) ! { ! if (command == null) ! { ! command = this.SelectCommand.Connection.CreateCommand(); ! } ! command.Transaction = this.SelectCommand.Transaction; ! command.CommandType = CommandType.Text; ! // None is the Default value for automatically generated commands ! command.UpdatedRowSource = UpdateRowSource.None; ! command.Parameters.Clear(); ! } ! private DataColumn GetDataColumn( ! string columnName, ! DataTableMapping tableMapping, ! DataRow row) ! { ! DataColumn dataColumn = null; ! // Get the DataColumnMapping that matches ! // the given column name ! DataColumnMapping columnMapping = tableMapping.GetColumnMappingBySchemaAction( ! columnName, ! this.dataAdapter.MissingMappingAction); ! if (columnMapping != null) ! { ! // Get the DataColumn for the given column name ! dataColumn = columnMapping.GetDataColumnBySchemaAction( ! row.Table, ! null, ! this.dataAdapter.MissingSchemaAction); ! } ! return dataColumn; ! } ! #endregion ! #region Event Handler Methods private void RowUpdatingHandler(object sender, PgRowUpdatingEventArgs e) { ! if (e.Status != UpdateStatus.Continue) ! { ! return; ! } ! ! // Check that we can really build a new command. ! // If the command passed in the FbRowUpdatingEventArgs ! // is different than the one existent in the CommabdBuilder ! // we can't build a new command ! if (e.Command != null) ! { ! PgCommand command = null; ! ! switch (e.StatementType) ! { ! case StatementType.Insert: ! command = this.insertCommand; ! break; ! ! case StatementType.Update: ! command = this.updateCommand; ! break; ! ! case StatementType.Delete: ! deleteCommand = this.deleteCommand; ! break; ! } ! ! if (command != e.Command) ! { ! return; ! } ! } ! ! try ! { ! switch (e.StatementType) ! { ! case StatementType.Insert: ! e.Command = this.BuildInsertCommand(e.Row, e.TableMapping); ! break; ! ! case StatementType.Update: ! e.Command = this.BuildUpdateCommand(e.Row, e.TableMapping); ! break; ! ! case StatementType.Delete: ! e.Command = this.BuildDeleteCommand(e.Row, e.TableMapping); ! break; ! } ! } ! catch (Exception exception) ! { ! e.Errors = exception; ! e.Status = UpdateStatus.ErrorsOccurred; ! } } #endregion ! } } --- 27,177 ---- namespace PostgreSql.Data.PostgreSqlClient { ! public sealed class PgCommandBuilder : DbCommandBuilder ! { ! #region · Fields · ! private PgRowUpdatingEventHandler rowUpdatingHandler; ! #endregion ! #region · Properties · ! [DefaultValue(null)] ! public new PgDataAdapter DataAdapter ! { ! get { return (PgDataAdapter)base.DataAdapter; } ! set { base.DataAdapter = value; } ! } ! #endregion ! #region · Constructors · ! public PgCommandBuilder() ! : this(null) ! { ! } ! public PgCommandBuilder(PgDataAdapter adapter) ! : base() ! { ! this.DataAdapter = adapter; ! this.ConflictOption = ConflictOption.OverwriteChanges; ! } ! #endregion ! #region · Static Methods · ! /// <include file='Doc/en_EN/FbCommandBuilder.xml' path='doc/class[@name="FbCommandBuilder"]/method[@name="DeriveParameters(PgCommand)"]/*'/> ! public static void DeriveParameters(PgCommand command) ! { ! } #endregion ! #region · DbCommandBuilder methods · ! public new PgCommand GetInsertCommand() ! { ! return base.GetInsertCommand() as PgCommand; ! } ! public new PgCommand GetUpdateCommand() ! { ! return base.GetUpdateCommand() as PgCommand; ! } ! public new PgCommand GetUpdateCommand(bool useColumnsForParameterNames) ! { ! return base.GetUpdateCommand(useColumnsForParameterNames) as PgCommand; ! } ! public new PgCommand GetDeleteCommand() ! { ! return base.GetDeleteCommand() as PgCommand; ! } ! public new PgCommand GetDeleteCommand(bool useColumnsForParameterNames) ! { ! return base.GetDeleteCommand(useColumnsForParameterNames) as PgCommand; ! } ! public override string QuoteIdentifier(string unquotedIdentifier) ! { ! if (unquotedIdentifier == null) ! { ! throw new ArgumentNullException("Unquoted identifier parameter cannot be null"); ! } ! return String.Format(base.QuotePrefix, unquotedIdentifier, base.QuoteSuffix); ! } ! public override string UnquoteIdentifier(string quotedIdentifier) ! { ! if (quotedIdentifier == null) ! { ! throw new ArgumentNullException("Quoted identifier parameter cannot be null"); ! } ! string unquotedIdentifier = quotedIdentifier.Trim(); ! if (unquotedIdentifier.StartsWith(base.QuotePrefix)) ! { ! unquotedIdentifier = unquotedIdentifier.Remove(0, 1); ! } ! if (unquotedIdentifier.EndsWith(base.QuoteSuffix)) ! { ! unquotedIdentifier = unquotedIdentifier.Remove(unquotedIdentifier.Length - 1, 1); ! } ! return unquotedIdentifier; ! } ! #endregion ! #region · Protected DbCommandBuilder methods · ! protected override void ApplyParameterInfo(DbParameter p, DataRow row, StatementType statementType, bool whereClause) ! { ! } ! protected override string GetParameterName(int parameterOrdinal) ! { ! return String.Format("@p{0}", parameterOrdinal); ! } ! protected override string GetParameterName(string parameterName) ! { ! return String.Format("@{0}", parameterName); ! } ! protected override string GetParameterPlaceholder(int parameterOrdinal) ! { ! return this.GetParameterName(parameterOrdinal); ! } ! protected override void SetRowUpdatingHandler(DbDataAdapter adapter) ! { ! if (!(adapter is PgDataAdapter)) ! { ! throw new InvalidOperationException("adapter needs to be a PgDataAdapter"); ! } ! this.rowUpdatingHandler = new PgRowUpdatingEventHandler(this.RowUpdatingHandler); ! ((PgDataAdapter)adapter).RowUpdating += this.rowUpdatingHandler; ! } ! #endregion ! #region · Event Handlers · private void RowUpdatingHandler(object sender, PgRowUpdatingEventArgs e) { ! base.RowUpdatingHandler(e); } #endregion ! } ! } Index: PgParameter.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/PostgreSqlClient/PgParameter.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgParameter.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgParameter.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 19,22 **** --- 19,23 ---- using System; using System.Data; + using System.Data.Common; using System.ComponentModel; *************** *** 25,45 **** namespace PostgreSql.Data.PostgreSqlClient { ! [ParenthesizePropertyName(true), ! TypeConverter(typeof(Design.PgParameterConverter))] ! public sealed class PgParameter : MarshalByRefObject, IDbDataParameter, IDataParameter, ICloneable { #region · Fields · ! ParameterDirection direction; ! DataRowVersion sourceVersion; ! bool isNullable; ! string parameterName; ! string sourceColumn; ! object value; ! byte precision; ! byte scale; ! int size; ! PgDbType pgDbType; ! bool inferType; #endregion --- 26,48 ---- namespace PostgreSql.Data.PostgreSqlClient { ! [ParenthesizePropertyName(true)] ! [TypeConverter(typeof(Design.PgParameterConverter))] ! public sealed class PgParameter : DbParameter, ICloneable { #region · Fields · ! private ParameterDirection direction; ! private DataRowVersion sourceVersion; ! private bool isNullable; ! private string parameterName; ! private string sourceColumn; ! private object value; ! private byte precision; ! private byte scale; ! private int size; ! private PgDbType providerType; ! private bool inferType; ! private string sourceColumnNullMapping; ! private PgParameterCollection parent; #endregion *************** *** 47,58 **** #region · Properties · - string IDataParameter.ParameterName - { - get { return this.ParameterName; } - set { this.ParameterName = value; } - } - [DefaultValue("")] ! public string ParameterName { get { return this.parameterName; } --- 50,55 ---- #region · Properties · [DefaultValue("")] ! public override string ParameterName { get { return this.parameterName; } *************** *** 60,64 **** } ! [Category("Data"), DefaultValue((byte)0)] public byte Precision { --- 57,62 ---- } ! [Category("Data")] ! [DefaultValue((byte)0)] public byte Precision { *************** *** 67,71 **** } ! [Category("Data"), DefaultValue((byte)0)] public byte Scale { --- 65,70 ---- } ! [Category("Data")] ! [DefaultValue((byte)0)] public byte Scale { *************** *** 74,79 **** } ! [Category("Data"), DefaultValue(0)] ! public int Size { get { return this.size; } --- 73,79 ---- } ! [Category("Data")] ! [DefaultValue(0)] ! public override int Size { get { return this.size; } *************** *** 81,108 **** } ! [Browsable(false), ! Category("Data"), ! RefreshProperties(RefreshProperties.All), ! DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] ! public DbType DbType { ! get { return this.PgDbTypeToDbType(this.pgDbType); } ! set { this.pgDbType = this.DbTypeToPgType(value); } } ! [RefreshProperties(RefreshProperties.All), ! Category("Data"), ! DefaultValue(PgDbType.VarChar)] public PgDbType PgDbType { ! get { return this.pgDbType; } ! set ! { ! this.pgDbType = value; ! } } ! [Category("Data"), DefaultValue(ParameterDirection.Input)] ! public ParameterDirection Direction { get { return this.direction; } --- 81,106 ---- } ! [Browsable(false)] ! [Category("Data")] ! [RefreshProperties(RefreshProperties.All)] ! [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] ! public override DbType DbType { ! get { return this.PgDbTypeToDbType(this.providerType); } ! set { this.providerType = this.DbTypeToPgType(value); } } ! [RefreshProperties(RefreshProperties.All)] ! [Category("Data")] ! [DefaultValue(PgDbType.VarChar)] public PgDbType PgDbType { ! get { return this.providerType; } ! set { this.providerType = value; } } ! [Category("Data")] ! [DefaultValue(ParameterDirection.Input)] ! public override ParameterDirection Direction { get { return this.direction; } *************** *** 110,118 **** } ! [Browsable(false), ! DesignOnly(true), ! DefaultValue(false), ! EditorBrowsable(EditorBrowsableState.Advanced)] ! public bool IsNullable { get { return this.isNullable; } --- 108,116 ---- } ! [Browsable(false)] ! [DesignOnly(true)] ! [DefaultValue(false)] ! [EditorBrowsable(EditorBrowsableState.Advanced)] ! public override bool IsNullable { get { return this.isNullable; } *************** *** 120,125 **** } ! [Category("Data"), DefaultValue("")] ! public string SourceColumn { get { return this.sourceColumn; } --- 118,124 ---- } ! [Category("Data")] ! [DefaultValue("")] ! public override string SourceColumn { get { return this.sourceColumn; } *************** *** 127,132 **** } ! [Category("Data"), DefaultValue(DataRowVersion.Current)] ! public DataRowVersion SourceVersion { get { return this.sourceVersion; } --- 126,132 ---- } ! [Category("Data")] ! [DefaultValue(DataRowVersion.Current)] ! public override DataRowVersion SourceVersion { get { return this.sourceVersion; } *************** *** 134,141 **** } ! [Category("Data"), ! TypeConverter(typeof(StringConverter)), ! DefaultValue(null)] ! public object Value { get { return this.value; } --- 134,141 ---- } ! [Category("Data")] ! [TypeConverter(typeof(StringConverter))] ! [DefaultValue(null)] ! public override object Value { get { return this.value; } *************** *** 154,157 **** --- 154,179 ---- } + public override int Offset + { + get { throw new Exception("The method or operation is not implemented."); } + set { throw new Exception("The method or operation is not implemented."); } + } + + public override bool SourceColumnNullMapping + { + get { throw new Exception("The method or operation is not implemented."); } + set { throw new Exception("The method or operation is not implemented."); } + } + + #endregion + + #region · Internal Properties · + + internal PgParameterCollection Parent + { + get { return this.parent; } + set { this.parent = value; } + } + #endregion *************** *** 163,167 **** this.sourceVersion = DataRowVersion.Current; this.isNullable = false; ! this.pgDbType = PgDbType.VarChar; this.inferType = true; } --- 185,189 ---- this.sourceVersion = DataRowVersion.Current; this.isNullable = false; ! this.providerType = PgDbType.VarChar; this.inferType = true; } *************** *** 178,182 **** this.inferType = false; this.parameterName = parameterName; ! this.pgDbType = dbType; } --- 200,204 ---- this.inferType = false; this.parameterName = parameterName; ! this.providerType = dbType; } *************** *** 185,189 **** this.inferType = false; this.parameterName = parameterName; ! this.pgDbType = dbType; this.size = size; } --- 207,211 ---- this.inferType = false; this.parameterName = parameterName; ! this.providerType = dbType; this.size = size; } *************** *** 197,201 **** this.inferType = false; this.parameterName = parameterName; ! this.pgDbType = dbType; this.size = size; this.sourceColumn = sourceColumn; --- 219,223 ---- this.inferType = false; this.parameterName = parameterName; ! this.providerType = dbType; this.size = size; this.sourceColumn = sourceColumn; *************** *** 217,221 **** this.inferType = false; this.parameterName = parameterName; ! this.pgDbType = dbType; this.size = size; this.direction = direction; --- 239,243 ---- this.inferType = false; this.parameterName = parameterName; ! this.providerType = dbType; this.size = size; this.direction = direction; *************** *** 230,250 **** #endregion ! #region · ICloneable Method · object ICloneable.Clone() { ! return new PgParameter( ! this.parameterName, ! this.PgDbType, ! this.size, ! this.direction, ! this.isNullable, ! this.precision, ! this.scale, ! this.sourceColumn, ! this.sourceVersion, ! this.value); } ! #endregion --- 252,262 ---- #endregion ! #region · ICloneable Methods · object ICloneable.Clone() { ! throw new NotImplementedException(); } ! #endregion *************** *** 265,269 **** string returnValue = String.Empty; ! switch (this.pgDbType) { case PgDbType.Array: --- 277,281 ---- string returnValue = String.Empty; ! switch (this.providerType) { case PgDbType.Array: *************** *** 385,388 **** --- 397,409 ---- #endregion + #region · Protected Methods · + + public override void ResetDbType() + { + throw new Exception("The method or operation is not implemented."); + } + + #endregion + #region · Private Methods · *************** *** 397,405 **** { case TypeCode.Byte: ! this.pgDbType = PgDbType.Byte; break; case TypeCode.Boolean: ! this.pgDbType = PgDbType.Boolean; break; --- 418,426 ---- { case TypeCode.Byte: ! this.providerType = PgDbType.Byte; break; case TypeCode.Boolean: ! this.providerType = PgDbType.Boolean; break; *************** *** 410,442 **** case TypeCode.String: case TypeCode.Char: ! this.pgDbType = PgDbType.Char; break; case TypeCode.Int16: ! this.pgDbType = PgDbType.Int2; break; case Typ... [truncated message content] |
From: Carlos G. Á. <car...@us...> - 2005-09-09 21:35:09
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Design/ParameterCollection In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5092/Data/Design/ParameterCollection Modified Files: PgParameterCollectionEditor.cs PgParameterConverter.cs Log Message: Started the reorganization of the CVS module Index: PgParameterConverter.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Design/ParameterCollection/PgParameterConverter.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgParameterConverter.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgParameterConverter.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 23,26 **** --- 23,27 ---- using System.Globalization; using System.Reflection; + using PostgreSql.Data.PostgreSqlClient; namespace PostgreSql.Data.Design *************** *** 43,48 **** CultureInfo culture, object value, Type destinationType) { ! if (destinationType == typeof(InstanceDescriptor) && ! value is PgParameter) { PgParameter param = (PgParameter)value; --- 44,48 ---- CultureInfo culture, object value, Type destinationType) { ! if (destinationType == typeof(InstanceDescriptor) && value is PgParameter) { PgParameter param = (PgParameter)value; Index: PgParameterCollectionEditor.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Design/ParameterCollection/PgParameterCollectionEditor.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgParameterCollectionEditor.cs 8 Sep 2005 18:41:54 -0000 1.1 --- PgParameterCollectionEditor.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 20,30 **** using System.Data; using System.ComponentModel; using System.ComponentModel.Design.Serialization; using System.Globalization; using System.Reflection; namespace PostgreSql.Data.Design { ! internal class PgParameterCollectionEditor : System.ComponentModel.Design.CollectionEditor { #region · Fields · --- 20,32 ---- using System.Data; using System.ComponentModel; + using System.ComponentModel.Design; using System.ComponentModel.Design.Serialization; using System.Globalization; using System.Reflection; + using PostgreSql.Data.PostgreSqlClient; namespace PostgreSql.Data.Design { ! internal class PgParameterCollectionEditor : CollectionEditor { #region · Fields · |
From: Carlos G. Á. <car...@us...> - 2005-09-09 21:35:09
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/DbSchema In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5092/Data/DbSchema Modified Files: PgDbSchema.cs PgFunctionPrivilegesSchema.cs PgTablePrivilegesSchema.cs PgViewPrivilegesSchema.cs Log Message: Started the reorganization of the CVS module Index: PgDbSchema.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/DbSchema/PgDbSchema.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgDbSchema.cs 8 Sep 2005 18:37:50 -0000 1.1 --- PgDbSchema.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 22,25 **** --- 22,26 ---- using System.Text.RegularExpressions; using System.Collections; + using PostgreSql.Data.PostgreSqlClient; namespace PostgreSql.Data.DbSchema *************** *** 99,103 **** #endregion ! #region Abstract Methods public abstract void AddTables(); --- 100,104 ---- #endregion ! #region · Abstract Methods · public abstract void AddTables(); *************** *** 320,324 **** #endregion ! #region Protected Methods protected void AddPrivilegesColumns(DataTable table) --- 321,325 ---- #endregion ! #region · Protected Methods · protected void AddPrivilegesColumns(DataTable table) Index: PgTablePrivilegesSchema.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/DbSchema/PgTablePrivilegesSchema.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgTablePrivilegesSchema.cs 8 Sep 2005 18:37:50 -0000 1.1 --- PgTablePrivilegesSchema.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 20,24 **** using System.Data; using System.Text; ! using System.Text.RegularExpressions; namespace PostgreSql.Data.DbSchema --- 20,24 ---- using System.Data; using System.Text; ! using PostgreSql.Data.PostgreSqlClient; namespace PostgreSql.Data.DbSchema Index: PgFunctionPrivilegesSchema.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/DbSchema/PgFunctionPrivilegesSchema.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgFunctionPrivilegesSchema.cs 8 Sep 2005 18:37:50 -0000 1.1 --- PgFunctionPrivilegesSchema.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 20,23 **** --- 20,24 ---- using System.Data; using System.Text; + using PostgreSql.Data.PostgreSqlClient; namespace PostgreSql.Data.DbSchema Index: PgViewPrivilegesSchema.cs =================================================================== RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/DbSchema/PgViewPrivilegesSchema.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** PgViewPrivilegesSchema.cs 8 Sep 2005 18:37:50 -0000 1.1 --- PgViewPrivilegesSchema.cs 9 Sep 2005 21:35:00 -0000 1.2 *************** *** 20,23 **** --- 20,24 ---- using System.Data; using System.Text; + using PostgreSql.Data.PostgreSqlClient; namespace PostgreSql.Data.DbSchema |
From: Carlos G. Á. <car...@us...> - 2005-09-08 18:46:03
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/builds/win32 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8388/win32 Log Message: Directory /cvsroot/pgsqlclient/pgsqlclient_10/builds/win32 added to the repository |
From: Carlos G. Á. <car...@us...> - 2005-09-08 18:45:40
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/builds In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8329/builds Log Message: Directory /cvsroot/pgsqlclient/pgsqlclient_10/builds added to the repository |
From: Carlos G. Á. <car...@us...> - 2005-09-08 18:45:20
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/UnitTests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8269 Added Files: AssemblyInfo.cs PgArrayTest.cs PgBaseTest.cs PgCommandBuilderTest.cs PgCommandTest.cs PgConnectionTest.cs PgDataAdapterTest.cs PgDatabaseSchemaTest.cs PgDataReaderTest.cs PgGeometicTypesTest.cs PgTransactionTest.cs PostgreSql.Data.PgSqlClient.UnitTests.dll.config Log Message: Started the reorganization of the CVS module --- NEW FILE: PgGeometicTypesTest.cs --- /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * Copyright (c) 2003-2004 Carlos Guzman Alvarez * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Data; using NUnit.Framework; using PostgreSql.Data.PgSqlClient; using PostgreSql.Data.PgTypes; namespace PostgreSql.Data.PgSqlClient.UnitTests { [TestFixture] public class PgGeometricTypesTest : PgBaseTest { [Test] public void PointTest() { PgCommand command = new PgCommand("select point_field from public.geometric_table where pk = @pk", Connection); try { command.Parameters.Add("@pk", PgDbType.Int4).Value = 50; PgPoint point = (PgPoint)command.ExecuteScalar(); Console.WriteLine("Point value: {0}", point.ToString()); Assertion.AssertEquals("Invalid X coord in point", 50, point.X); Assertion.AssertEquals("Invalid Y coord in point", 60, point.Y); } catch (Exception) { throw; } finally { command.Dispose(); } } [Test] public void BoxTest() { PgCommand command = new PgCommand("select box_field from public.geometric_table where pk = @pk", Connection); try { command.Parameters.Add("@pk", PgDbType.Int4).Value = 70; PgBox box = (PgBox)command.ExecuteScalar(); Console.WriteLine("Box value: {0}", box.ToString()); Assertion.AssertEquals("Invalid X coord in Lower Left corner", 0, box.LowerLeft.X); Assertion.AssertEquals("Invalid Y coord in Lower Left corner", 70, box.LowerLeft.Y); Assertion.AssertEquals("Invalid X coord in Upper Right corner", 70, box.UpperRight.X); Assertion.AssertEquals("Invalid Y coord in Upper Right corner", 70, box.UpperRight.Y); } catch (Exception) { throw; } finally { command.Dispose(); } } [Test] public void CircleTest() { PgCommand command = new PgCommand("select circle_field from public.geometric_table where pk = @pk", Connection); try { command.Parameters.Add("@pk", PgDbType.Int4).Value = 30; PgCircle circle = (PgCircle)command.ExecuteScalar(); Console.WriteLine("Circle value: {0}", circle.ToString()); Assertion.AssertEquals("Invalid X coord in circle", 30, circle.Center.X); Assertion.AssertEquals("Invalid Y coord in circle", 0, circle.Center.Y); Assertion.AssertEquals("Invalid RADIUS coord in circle", 30, circle.Radius); } catch (Exception) { throw; } finally { command.Dispose(); } } [Test] public void LineSegmentTest() { PgCommand command = new PgCommand("select lseg_field from public.geometric_table where pk = @pk", Connection); try { command.Parameters.Add("@pk", PgDbType.Int4).Value = 20; PgLSeg lseg = (PgLSeg)command.ExecuteScalar(); Console.WriteLine("LSeg value: {0}", lseg.ToString()); Assertion.AssertEquals("Invalid X coord in start point", -1, lseg.StartPoint.X); Assertion.AssertEquals("Invalid Y coord in start point", 0, lseg.StartPoint.Y); Assertion.AssertEquals("Invalid X coord in end point", 1, lseg.EndPoint.X); Assertion.AssertEquals("Invalid Y coord in end point", 0, lseg.EndPoint.Y); } catch (Exception) { throw; } finally { command.Dispose(); } } [Test] public void PathTest() { PgCommand command = new PgCommand("select path_field from public.geometric_table where pk = @pk", Connection); try { command.Parameters.Add("@pk", PgDbType.Int4).Value = 10; PgPath path = (PgPath)command.ExecuteScalar(); Console.WriteLine("Path value: {0}", path.ToString()); Assertion.AssertEquals("Invalid X coord in path point 0", 0, path.Points[0].X); Assertion.AssertEquals("Invalid Y coord in path point 0", 0, path.Points[0].Y); Assertion.AssertEquals("Invalid X coord in path point 1", 1, path.Points[1].X); Assertion.AssertEquals("Invalid Y coord in path point 1", 0, path.Points[1].Y); } catch (Exception) { throw; } finally { command.Dispose(); } } [Test] public void PolygonTest() { PgCommand command = new PgCommand("select polygon_field from public.geometric_table where pk = @pk", Connection); try { command.Parameters.Add("@pk", PgDbType.Int4).Value = 10; PgPolygon polygon = (PgPolygon)command.ExecuteScalar(); Console.WriteLine("Polygon value: {0}", polygon.ToString()); Assertion.AssertEquals("Invalid X coord in polygon point 0", 1, polygon.Points[0].X); Assertion.AssertEquals("Invalid Y coord in polygon point 0", 1, polygon.Points[0].Y); Assertion.AssertEquals("Invalid X coord in polygon point 1", 0, polygon.Points[1].X); Assertion.AssertEquals("Invalid Y coord in polygon point 1", 0, polygon.Points[1].Y); } catch (Exception) { throw; } finally { command.Dispose(); } } [Ignore("Test not implemented.")] public void BoxArrayTest() { } [Ignore("Test not implemented.")] public void PointArrayTest() { } [Ignore("Test not implemented.")] public void LineSegmentArrayTest() { } [Ignore("Test not implemented.")] public void PathArrayTest() { } [Ignore("Test not implemented.")] public void PolygonArrayTest() { } [Ignore("Test not implemented.")] public void CircleArrayTest() { } } } --- NEW FILE: PgDataAdapterTest.cs --- /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * Copyright (c) 2003-2004 Carlos Guzman Alvarez * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Data; using PostgreSql.Data.PgSqlClient; using NUnit.Framework; namespace PostgreSql.Data.PgSqlClient.UnitTests { [TestFixture] public class PgDataAdapterTest : PgBaseTest { [Test] public void FillTest() { PgCommand command = new PgCommand("SELECT * FROM public.test_table WHERE date_field = @date_field", Connection); PgDataAdapter adapter = new PgDataAdapter(command); adapter.SelectCommand.Parameters.Add("@date_field", PgDbType.Date, 4, "date_field").Value = DateTime.Now; PgCommandBuilder builder = new PgCommandBuilder(adapter); DataSet ds = new DataSet(); adapter.Fill(ds, "public.test_table"); Console.WriteLine(); Console.WriteLine("DataAdapter - Fill Method - Test"); foreach (DataTable table in ds.Tables) { foreach (DataColumn col in table.Columns) { Console.Write(col.ColumnName + "\t\t"); } Console.WriteLine(); foreach (DataRow row in table.Rows) { for (int i = 0; i < table.Columns.Count; i++) { Console.Write(row[i] + "\t\t"); } Console.WriteLine(""); } } adapter.Dispose(); builder.Dispose(); command.Dispose(); } [Test] public void FillMultipleTest() { PgCommand command = new PgCommand("SELECT * FROM public.test_table WHERE date_field = @date_field", Connection); PgDataAdapter adapter = new PgDataAdapter(command); adapter.SelectCommand.Parameters.Add("@date_field", PgDbType.Date, 4, "date_field").Value = DateTime.Now; PgCommandBuilder builder = new PgCommandBuilder(adapter); DataSet ds1 = new DataSet(); DataSet ds2 = new DataSet(); adapter.Fill(ds1, "public.test_table"); adapter.Fill(ds2, "public.test_table"); adapter.Dispose(); builder.Dispose(); command.Dispose(); } [Test] public void InsertTest() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table", Connection, transaction); PgDataAdapter adapter = new PgDataAdapter(command); PgCommandBuilder builder = new PgCommandBuilder(adapter); DataSet ds = new DataSet(); adapter.Fill(ds, "public.test_table"); DataRow newRow = ds.Tables["public.test_table"].NewRow(); newRow["int4_field"] = 100; newRow["char_field"] = "PostgreSQL"; newRow["varchar_field"] = "PostgreSQL CLient"; newRow["int8_field"] = 100000; newRow["int2_field"] = 100; newRow["double_field"] = 100.01; newRow["date_field"] = DateTime.Now; newRow["time_Field"] = DateTime.Now; newRow["timestamp_field"] = DateTime.Now; ds.Tables["public.test_table"].Rows.Add(newRow); adapter.Update(ds, "public.test_table"); adapter.Dispose(); builder.Dispose(); command.Dispose(); transaction.Commit(); } [Test] public void UpdateCharTest() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table WHERE int4_field = @int4_field", Connection, transaction); PgDataAdapter adapter = new PgDataAdapter(command); adapter.SelectCommand.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 1; PgCommandBuilder builder = new PgCommandBuilder(adapter); DataSet ds = new DataSet(); adapter.Fill(ds, "public.test_table"); ds.Tables["public.test_table"].Rows[0]["char_field"] = "PostgreSQL"; adapter.Update(ds, "public.test_table"); adapter.Dispose(); builder.Dispose(); command.Dispose(); transaction.Commit(); } [Test] public void UpdateVarCharTest() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table WHERE int4_field = @int4_field", Connection, transaction); PgDataAdapter adapter = new PgDataAdapter(command); adapter.SelectCommand.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 10; PgCommandBuilder builder = new PgCommandBuilder(adapter); DataSet ds = new DataSet(); adapter.Fill(ds, "public.test_table"); ds.Tables["public.test_table"].Rows[0]["varchar_field"] = "PostgreSQL Client"; adapter.Update(ds, "public.test_table"); adapter.Dispose(); builder.Dispose(); command.Dispose(); transaction.Commit(); } [Test] public void UpdateInt2Test() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table WHERE int4_field = @int4_field", Connection, transaction); PgDataAdapter adapter = new PgDataAdapter(command); adapter.SelectCommand.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 40; PgCommandBuilder builder = new PgCommandBuilder(adapter); DataSet ds = new DataSet(); adapter.Fill(ds, "public.test_table"); ds.Tables["public.test_table"].Rows[0]["int2_field"] = System.Int16.MaxValue; adapter.Update(ds, "public.test_table"); adapter.Dispose(); builder.Dispose(); command.Dispose(); transaction.Commit(); command = new PgCommand("SELECT int2_field FROM public.test_table WHERE int4_field = @int4_field", Connection); command.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 40; short val = (short)command.ExecuteScalar(); Assertion.AssertEquals("int2_field has not correct value", System.Int16.MaxValue, val); } [Test] public void UpdateInt8Test() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table WHERE int4_field = @int4_field", Connection, transaction); PgDataAdapter adapter = new PgDataAdapter(command); adapter.SelectCommand.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 20; PgCommandBuilder builder = new PgCommandBuilder(adapter); DataSet ds = new DataSet(); adapter.Fill(ds, "public.test_table"); ds.Tables["public.test_table"].Rows[0]["int8_field"] = System.Int32.MaxValue; adapter.Update(ds, "public.test_table"); adapter.Dispose(); builder.Dispose(); command.Dispose(); transaction.Commit(); command = new PgCommand("SELECT int8_field FROM public.test_table WHERE int4_field = @int4_field", Connection); command.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 20; long val = (long)command.ExecuteScalar(); Assertion.AssertEquals("int8_field has not correct value", System.Int32.MaxValue, val); } [Test] public void UpdateDoubleTest() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table WHERE int4_field = @int4_field", Connection, transaction); PgDataAdapter adapter = new PgDataAdapter(command); adapter.SelectCommand.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 50; PgCommandBuilder builder = new PgCommandBuilder(adapter); DataSet ds = new DataSet(); adapter.Fill(ds, "public.test_table"); ds.Tables["public.test_table"].Rows[0]["double_field"] = System.Int32.MaxValue; adapter.Update(ds, "public.test_table"); adapter.Dispose(); builder.Dispose(); command.Dispose(); transaction.Commit(); command = new PgCommand("SELECT double_field FROM public.test_table WHERE int4_field = @int4_field", Connection); command.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 50; double val = (double)command.ExecuteScalar(); Assertion.AssertEquals("double_field has not correct value", System.Int32.MaxValue, val); } [Test] public void UpdateMoneyField() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table WHERE int4_field = @int4_field", Connection, transaction); PgDataAdapter adapter = new PgDataAdapter(command); adapter.SelectCommand.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 27; PgCommandBuilder builder = new PgCommandBuilder(adapter); DataSet ds = new DataSet(); adapter.Fill(ds, "public.test_table"); ds.Tables["public.test_table"].Rows[0]["money_field"] = 200.20; adapter.Update(ds, "public.test_table"); adapter.Dispose(); builder.Dispose(); command.Dispose(); transaction.Commit(); command = new PgCommand("SELECT money_field FROM public.test_table WHERE int4_field = @int4_field", Connection); command.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 27; float val = (float)command.ExecuteScalar(); Assertion.AssertEquals("money_field has not correct value", 200.20, val); } [Test] public void UpdateNumericTest() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table WHERE int4_field = @int4_field", Connection, transaction); PgDataAdapter adapter = new PgDataAdapter(command); adapter.SelectCommand.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 60; PgCommandBuilder builder = new PgCommandBuilder(adapter); DataSet ds = new DataSet(); adapter.Fill(ds, "public.test_table"); ds.Tables["public.test_table"].Rows[0]["numeric_field"] = System.Int16.MaxValue; adapter.Update(ds, "public.test_table"); adapter.Dispose(); builder.Dispose(); command.Dispose(); transaction.Commit(); command = new PgCommand("SELECT numeric_field FROM public.test_table WHERE int4_field = @int4_field", Connection); command.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 60; decimal val = (decimal)command.ExecuteScalar(); if (val != (decimal)System.Int16.MaxValue) { Assertion.Fail("numeric_field has not correct value"); } } [Test] public void UpdateDateTest() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table WHERE int4_field = @int4_field", Connection, transaction); PgDataAdapter adapter = new PgDataAdapter(command); adapter.SelectCommand.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 70; PgCommandBuilder builder = new PgCommandBuilder(adapter); DataSet ds = new DataSet(); adapter.Fill(ds, "public.test_table"); DateTime dt = DateTime.Now; ds.Tables["public.test_table"].Rows[0]["date_field"] = dt; adapter.Update(ds, "public.test_table"); adapter.Dispose(); builder.Dispose(); command.Dispose(); transaction.Commit(); command = new PgCommand("SELECT date_field FROM public.test_table WHERE int4_field = @int4_field", Connection); command.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 70; DateTime val = (DateTime)command.ExecuteScalar(); Assertion.AssertEquals("date_field has not correct day", dt.Day, val.Day); Assertion.AssertEquals("date_field has not correct month", dt.Month, val.Month); Assertion.AssertEquals("date_field has not correct year", dt.Year, val.Year); } [Test] public void UpdateTimeTest() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table WHERE int4_field = @int4_field", Connection, transaction); PgDataAdapter adapter = new PgDataAdapter(command); adapter.SelectCommand.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 80; PgCommandBuilder builder = new PgCommandBuilder(adapter); DataSet ds = new DataSet(); adapter.Fill(ds, "public.test_table"); DateTime dt = DateTime.Now; ds.Tables["public.test_table"].Rows[0]["time_field"] = dt; adapter.Update(ds, "public.test_table"); adapter.Dispose(); builder.Dispose(); command.Dispose(); transaction.Commit(); command = new PgCommand("SELECT time_field FROM public.test_table WHERE int4_field = @int4_field", Connection); command.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 80; DateTime val = (DateTime)command.ExecuteScalar(); Assertion.AssertEquals("time_field has not correct hour", dt.Hour, val.Hour); Assertion.AssertEquals("time_field has not correct minute", dt.Minute, val.Minute); Assertion.AssertEquals("time_field has not correct second", dt.Second, val.Second); } [Test] public void UpdateTimeStampTest() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table WHERE int4_field = @int4_field", Connection, transaction); PgDataAdapter adapter = new PgDataAdapter(command); adapter.SelectCommand.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 90; PgCommandBuilder builder = new PgCommandBuilder(adapter); DataSet ds = new DataSet(); adapter.Fill(ds, "public.test_table"); DateTime dt = DateTime.Now; ds.Tables["public.test_table"].Rows[0]["timestamp_field"] = dt; adapter.Update(ds, "public.test_table"); adapter.Dispose(); builder.Dispose(); command.Dispose(); transaction.Commit(); command = new PgCommand("SELECT timestamp_field FROM public.test_table WHERE int4_field = @int4_field", Connection); command.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 90; DateTime val = (DateTime)command.ExecuteScalar(); Assertion.AssertEquals("timestamp_field has not correct day", dt.Day, val.Day); Assertion.AssertEquals("timestamp_field has not correct month", dt.Month, val.Month); Assertion.AssertEquals("timestamp_field has not correct year", dt.Year, val.Year); Assertion.AssertEquals("timestamp_field has not correct hour", dt.Hour, val.Hour); Assertion.AssertEquals("timestamp_field has not correct minute", dt.Minute, val.Minute); Assertion.AssertEquals("timestamp_field has not correct second", dt.Second, val.Second); } [Test] public void DeleteTest() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table WHERE int4_field = @int4_field", Connection, transaction); PgDataAdapter adapter = new PgDataAdapter(command); adapter.SelectCommand.Parameters.Add("@int4_field", PgDbType.Int4, 4, "int4_field").Value = 35; PgCommandBuilder builder = new PgCommandBuilder(adapter); DataSet ds = new DataSet(); adapter.Fill(ds, "public.test_table"); ds.Tables["public.test_table"].Rows[0].Delete(); adapter.Update(ds, "public.test_table"); adapter.Dispose(); builder.Dispose(); command.Dispose(); transaction.Commit(); } } } --- NEW FILE: PgCommandBuilderTest.cs --- /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * Copyright (c) 2003-2004 Carlos Guzman Alvarez * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Data; using PostgreSql.Data.PgSqlClient; using NUnit.Framework; namespace PostgreSql.Data.PgSqlClient.UnitTests { [TestFixture] public class PgCommandBuilderTest : PgBaseTest { [Test] public void GetInsertCommandTest() { PgCommand command = new PgCommand("select * from public.test_table where int4_field = @int4_field and varchar_field = @varchar_field", Connection); PgDataAdapter adapter = new PgDataAdapter(command); PgCommandBuilder builder = new PgCommandBuilder(adapter); Console.WriteLine(); Console.WriteLine("\r\nPgCommandBuilder - GetInsertCommand Method Test"); Console.WriteLine(builder.GetInsertCommand().CommandText); builder.Dispose(); adapter.Dispose(); command.Dispose(); } [Test] public void GetUpdateCommandTest() { PgCommand command = new PgCommand("select * from public.test_table where int4_field = @int4_field and varchar_field = @varchar_field", Connection); PgDataAdapter adapter = new PgDataAdapter(command); PgCommandBuilder builder = new PgCommandBuilder(adapter); Console.WriteLine(); Console.WriteLine("\r\nPgCommandBuilder - GetUpdateCommand Method Test"); Console.WriteLine(builder.GetUpdateCommand().CommandText); builder.Dispose(); adapter.Dispose(); command.Dispose(); } [Test] public void GetDeleteCommandTest() { PgCommand command = new PgCommand("select * from public.test_table where int4_field = @int4_field and varchar_field = @varchar_field", Connection); PgDataAdapter adapter = new PgDataAdapter(command); PgCommandBuilder builder = new PgCommandBuilder(adapter); Console.WriteLine(); Console.WriteLine("PgCommandBuilder - GetDeleteCommand Method Test"); Console.WriteLine( builder.GetDeleteCommand().CommandText ); builder.Dispose(); adapter.Dispose(); command.Dispose(); } [Test] public void RefreshSchemaTest() { PgCommand command = new PgCommand("select * from public.test_table where int4_field = @int4_field and varchar_field = @varchar_field", Connection); PgDataAdapter adapter = new PgDataAdapter(command); PgCommandBuilder builder = new PgCommandBuilder(adapter); Console.WriteLine(); Console.WriteLine("\r\nPgCommandBuilder - RefreshSchema Method Test - Commands for original SQL statement: "); Console.WriteLine(builder.GetInsertCommand().CommandText); Console.WriteLine(builder.GetUpdateCommand().CommandText); Console.WriteLine(builder.GetDeleteCommand().CommandText); adapter.SelectCommand.CommandText = "select int4_field, date_field from public.test_table where int4_field = @int4_field"; builder.RefreshSchema(); Console.WriteLine(); Console.WriteLine("\r\nPgCommandBuilder - RefreshSchema Method Test - Commands for new SQL statement: "); Console.WriteLine(builder.GetInsertCommand().CommandText); Console.WriteLine(builder.GetUpdateCommand().CommandText); Console.WriteLine(builder.GetDeleteCommand().CommandText); builder.Dispose(); adapter.Dispose(); command.Dispose(); } [Test] public void CommandBuilderWithExpressionFieldTest() { PgCommand command = new PgCommand("select public.test_table.*, 0 AS EXPR_VALUE from public.test_table where int4_field = @int4_field and varchar_field = @varchar_field", Connection); PgDataAdapter adapter = new PgDataAdapter(command); PgCommandBuilder builder = new PgCommandBuilder(adapter); Console.WriteLine(); Console.WriteLine("PgCommandBuilder - CommandBuilderWithExpressionFieldTest"); Console.WriteLine(builder.GetUpdateCommand().CommandText); builder.Dispose(); adapter.Dispose(); command.Dispose(); } [Test] public void DeriveParameters() { PgCommandBuilder builder = new PgCommandBuilder(); PgCommand command = new PgCommand("DeriveCount", Connection); command.CommandType = CommandType.StoredProcedure; PgCommandBuilder.DeriveParameters(command); Console.WriteLine("\r\nPgCommandBuilder - DeriveParameters static Method Test"); for (int i = 0; i < command.Parameters.Count; i++) { Console.WriteLine("Parameter name: {0}\tParameter Source Column:{1}\tDirection:{2}", command.Parameters[i].ParameterName, command.Parameters[i].SourceColumn, command.Parameters[i].Direction); } } [Test] public void DeriveParameters2() { PgTransaction transaction = Connection.BeginTransaction(); PgCommandBuilder builder = new PgCommandBuilder(); PgCommand command = new PgCommand("DeriveCount", Connection, transaction); command.CommandType = CommandType.StoredProcedure; PgCommandBuilder.DeriveParameters(command); Console.WriteLine("\r\nPgCommandBuilder - DeriveParameters static Method Test"); for (int i = 0; i < command.Parameters.Count; i++) { Console.WriteLine("Parameter name: {0}\tParameter Source Column:{1}\tDirection:{2}", command.Parameters[i].ParameterName, command.Parameters[i].SourceColumn, command.Parameters[i].Direction); } transaction.Commit(); } [Test] public void TestWithClosedConnection() { Connection.Close(); PgCommand command = new PgCommand("select * from public.test_table where int4_field = @int4_field and varchar_field = @varchar_field", Connection); PgDataAdapter adapter = new PgDataAdapter(command); PgCommandBuilder builder = new PgCommandBuilder(adapter); Console.WriteLine(); Console.WriteLine("\r\nPgCommandBuilder - RefreshSchema Method Test - Commands for original SQL statement: "); Console.WriteLine(builder.GetInsertCommand().CommandText); Console.WriteLine(builder.GetUpdateCommand().CommandText); Console.WriteLine(builder.GetDeleteCommand().CommandText); adapter.SelectCommand.CommandText = "select int4_field, date_field from public.test_table where int4_field = @int4_field"; builder.RefreshSchema(); Console.WriteLine(); Console.WriteLine("\r\nPgCommandBuilder - RefreshSchema Method Test - Commands for new SQL statement: "); Console.WriteLine(builder.GetInsertCommand().CommandText); Console.WriteLine(builder.GetUpdateCommand().CommandText); Console.WriteLine(builder.GetDeleteCommand().CommandText); builder.Dispose(); adapter.Dispose(); command.Dispose(); } } } --- NEW FILE: PgDatabaseSchemaTest.cs --- /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * Copyright (c) 2003-2004 Carlos Guzman Alvarez * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Data; using PostgreSql.Data.PgSqlClient; using NUnit.Framework; namespace PostgreSql.Data.PgSqlClient.UnitTests { [TestFixture] public class PgDatabaseSchemaTest : PgBaseTest { [Test] public void Aggregates() { DataTable aggregates = Connection.GetSchema("Aggregates", null); } [Test] public void Casts() { DataTable casts = Connection.GetSchema("Casts", null); } [Test] public void CheckConstraints() { DataTable checkConstraints = Connection.GetSchema("CheckConstraints", null); } [Test] public void CheckConstraintsByTable() { DataTable checkConstraintsByTable = Connection.GetSchema("CheckConstraintsByTable", null); } [Test] public void Columns() { DataTable columns = Connection.GetSchema("Columns", null); } [Test] public void Databases() { DataTable databases = Connection.GetSchema("Database", null); } [Test] public void Domains() { DataTable domains = Connection.GetSchema("Domains", null); } [Test] public void ForeignKeys() { DataTable foreignKeys = Connection.GetSchema("ForeignKeys", null); } [Test] public void FunctionPrivileges() { DataTable functionPrivileges = Connection.GetSchema("FunctionPrivileges", null); } [Test] public void Functions() { DataTable functions = Connection.GetSchema("Functions", null); } [Test] public void Groups() { DataTable groups = Connection.GetSchema("Groups", null); } [Test] public void Indexes() { DataTable indexes = Connection.GetSchema("Indexes", null); } [Test] public void PrimaryKeys() { DataTable primaryKeys = Connection.GetSchema("PrimaryKeys", null); } [Test] public void ProviderTypes() { DataTable providerTypes = Connection.GetSchema("ProviderTypes", null); } [Test] public void Schemata() { DataTable schemata = Connection.GetSchema("Schemata", null); } [Test] public void SqlLanguages() { DataTable sqlLanguages = Connection.GetSchema("SqlLanguages", null); } [Test] [Ignore("Not implemented.")] public void Statistics() { DataTable statistics = Connection.GetSchema("Statistics", null); } [Test] public void TableConstraint() { DataTable tableConstraint = Connection.GetSchema("TableConstraint", null); } [Test] public void TablePrivileges() { DataTable tablePrivileges = Connection.GetSchema("TablePrivileges", null); } [Test] [Ignore("Not implemented.")] public void TableStatistics() { DataTable tableStatistics = Connection.GetSchema("TableStatistics", null); } [Test] public void Tables() { DataTable tables = Connection.GetSchema("Tables", null); } [Test] [Ignore("Not implemented.")] public void TablesInfo() { DataTable tablesInfo = Connection.GetSchema("TablesInfo", null); } [Test] [Ignore("Not implemented.")] public void TriggerParameters() { DataTable triggerParameters = Connection.GetSchema("TriggerParameters", null); } [Test] [Ignore("Not implemented.")] public void TriggerPrivileges() { DataTable triggerPrivileges = Connection.GetSchema("TriggerPrivileges", null); } [Test] public void Triggers() { DataTable triggers = Connection.GetSchema("Triggers", null); } [Test] [Ignore("Not implemented.")] public void UsagePrivileges() { DataTable usagePrivileges = Connection.GetSchema("UsagePrivileges", null); } [Test] [Ignore("Not implemented.")] public void ViewColumnUsage() { DataTable viewColumnUsage = Connection.GetSchema("ViewColumnUsage", null); } [Test] public void ViewPrivileges() { DataTable viewPrivileges = Connection.GetSchema("ViewPrivileges", null); } [Test] public void Views() { DataTable views = Connection.GetSchema("Views", null); } } } --- NEW FILE: AssemblyInfo.cs --- /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * Copyright (c) 2003-2004 Carlos Guzman Alvarez * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System.Reflection; using System.Runtime.CompilerServices; [assembly: AssemblyTitle("ADO.NET Data provider for PostgreSQL 7.4+")] [assembly: AssemblyDescription("ADO.NET Data provider for PostgreSQL 7.4+")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("PgSqlClient - ADO.NET Data provider for PostgreSQL 7.4+")] [assembly: AssemblyCopyright("2003 - Carlos Guzmán Álvarez")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] [assembly: AssemblyVersion("1.0.*")] [assembly: AssemblyDelaySign(false)] [assembly: AssemblyKeyFile("")] [assembly: AssemblyKeyName("")] --- NEW FILE: PgBaseTest.cs --- /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * Copyright (c) 2003-2004 Carlos Guzman Alvarez * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Text; using System.Data; using System.Configuration; using NUnit.Framework; using PostgreSql.Data.PgSqlClient; using PostgreSql.Data.PgTypes; namespace PostgreSql.Data.PgSqlClient.UnitTests { public class PgBaseTest { private PgConnection connection; public PgConnection Connection { get { return connection; } } public PgBaseTest() { } [SetUp] public void SetUp() { try { dropDatabase(); } catch{} createDatabase(); // Build the connection string StringBuilder connString = new StringBuilder(); connString.AppendFormat( "User={0};Password={1};Database={2};DataSource={3};Port={4};SSL={5}", ConfigurationSettings.AppSettings["User"], ConfigurationSettings.AppSettings["Password"], ConfigurationSettings.AppSettings["Database"], ConfigurationSettings.AppSettings["DataSource"], ConfigurationSettings.AppSettings["Port"], ConfigurationSettings.AppSettings["SSL"]); connection = new PgConnection(connString.ToString()); connection.StateChange += new StateChangeEventHandler(stateChange); connection.Open(); createTables(); createFunctions(); } [TearDown] public void TearDown() { connection.Close(); } private void stateChange(object sender, StateChangeEventArgs e) { Console.WriteLine("Connection state changed from {0} to {1}", e.OriginalState, e.CurrentState); } private void createDatabase() { StringBuilder connString = new StringBuilder(); connString.AppendFormat( "User={0};Password={1};Database={2};DataSource={3};Port={4};SSL={5}", ConfigurationSettings.AppSettings["User"], ConfigurationSettings.AppSettings["Password"], String.Empty, ConfigurationSettings.AppSettings["DataSource"], ConfigurationSettings.AppSettings["Port"], ConfigurationSettings.AppSettings["SSL"]); PgConnection connection = new PgConnection(connString.ToString()); connection.Open(); #warning "Create dtabase here" /* connection.CreateDatabase( ConfigurationSettings.AppSettings["Database"], null, null, null, "UNICODE"); */ connection.Close(); } private void dropDatabase() { StringBuilder connString = new StringBuilder(); connString.AppendFormat( "User={0};Password={1};Database={2};DataSource={3};Port={4};SSL={5}", ConfigurationSettings.AppSettings["User"], ConfigurationSettings.AppSettings["Password"], String.Empty, ConfigurationSettings.AppSettings["DataSource"], ConfigurationSettings.AppSettings["Port"], ConfigurationSettings.AppSettings["SSL"]); PgConnection connection = new PgConnection(connString.ToString()); connection.Open(); StringBuilder commandText = new StringBuilder(); commandText.AppendFormat( "drop database {0}", ConfigurationSettings.AppSettings["Database"]); PgCommand command = new PgCommand(commandText.ToString(), connection); command.ExecuteNonQuery(); command.Dispose(); connection.Close(); } private void createTables() { StringBuilder commandText = new StringBuilder(); // Table for general purpouse tests commandText.Append("CREATE TABLE public.test_table("); commandText.Append("int4_field int4 NOT NULL,"); commandText.Append("char_field char(10),"); commandText.Append("varchar_field varchar(30),"); commandText.Append("single_field float4,"); commandText.Append("double_field float8,"); commandText.Append("date_field date,"); commandText.Append("time_field time,"); commandText.Append("timestamp_field timestamp,"); commandText.Append("blob_field bytea,"); commandText.Append("bool_field bool,"); commandText.Append("int2_field int2,"); commandText.Append("int8_field int8,"); commandText.Append("money_field money,"); commandText.Append("numeric_field numeric(8,2),"); commandText.Append("bool_array bool[],"); commandText.Append("int2_array int2[],"); commandText.Append("int4_array int4[],"); commandText.Append("int8_array int8[],"); commandText.Append("mint2_array int2[][],"); commandText.Append("serial_field serial NOT NULL,"); commandText.Append("macaddr_field macaddr,"); commandText.Append("inet_field inet,"); commandText.Append("name_field name,"); commandText.Append("CONSTRAINT test_table_pkey PRIMARY KEY (int4_field)"); commandText.Append(") WITH OIDS;"); PgCommand command = new PgCommand(commandText.ToString(), connection); command.ExecuteNonQuery(); commandText = new StringBuilder(); // Table for Geometric types tests commandText.Append("CREATE TABLE public.geometric_table("); commandText.Append("pk int4 NOT NULL,"); commandText.Append("point_field point,"); commandText.Append("box_field box,"); commandText.Append("circle_field circle,"); commandText.Append("lseg_field lseg,"); commandText.Append("path_field path,"); commandText.Append("polygon_field polygon,"); commandText.Append("point_array point[],"); commandText.Append("box_array box[],"); commandText.Append("circle_array circle[],"); commandText.Append("lseg_array lseg[],"); commandText.Append("path_array path[],"); commandText.Append("polygon_array polygon[],"); commandText.Append("line_field line,"); commandText.Append("line_array line[],"); commandText.Append("CONSTRAINT geometric_test_pkey PRIMARY KEY (pk)"); commandText.Append(") WITH OIDS;"); command.CommandText = commandText.ToString(); command.ExecuteNonQuery(); command.Dispose(); insertTestData(); insertGeometricTestData(); } private void createFunctions() { // Create language functions StringBuilder commandText = new StringBuilder(); commandText.Append("CREATE OR REPLACE FUNCTION public.plpgsql_call_handler()"); commandText.Append("RETURNS language_handler AS"); commandText.Append("'$libdir/plpgsql', 'plpgsql_call_handler'"); commandText.Append("LANGUAGE 'c' VOLATILE;"); PgCommand command = new PgCommand(commandText.ToString(), connection); command.ExecuteNonQuery(); // Create languages commandText = new StringBuilder(); try { commandText.Append("CREATE TRUSTED PROCEDURAL LANGUAGE 'plpgsql' HANDLER plpgsql_call_handler;"); command = new PgCommand(commandText.ToString(), connection); command.ExecuteNonQuery(); } catch { } // Create test function public.TestCount() commandText = new StringBuilder(); commandText.Append("CREATE OR REPLACE FUNCTION public.TestCount()"); commandText.Append("RETURNS int8 AS"); commandText.Append("'"); commandText.Append("select count(*) from test_table;"); commandText.Append("'"); commandText.Append("LANGUAGE 'sql' VOLATILE;"); command = new PgCommand(commandText.ToString(), connection); command.ExecuteNonQuery(); // Create test function public.DeriveCount() commandText = new StringBuilder(); commandText.Append("CREATE OR REPLACE FUNCTION public.DeriveCount(int4)"); commandText.Append("RETURNS int8 AS"); commandText.Append("'"); commandText.Append("select count(*) from test_table where int4_field < $1;"); commandText.Append("'"); commandText.Append("LANGUAGE 'sql' VOLATILE;"); command.CommandText = commandText.ToString(); command.ExecuteNonQuery(); // Create test function public.DeleteRows() commandText = new StringBuilder(); commandText.Append("CREATE OR REPLACE FUNCTION public.DeleteRows(int4)\r\n"); commandText.Append("RETURNS BOOLEAN AS '\r\n"); commandText.Append("DECLARE\r\n"); commandText.Append("\t\trows INTEGER;\r\n"); commandText.Append("BEGIN\r\n"); commandText.Append("DELETE FROM public.test_table WHERE int4_field > $1;\r\n"); commandText.Append("GET DIAGNOSTICS rows = ROW_COUNT;\r\n"); commandText.Append("IF rows > 0 THEN\r\n"); commandText.Append("\t\tRETURN TRUE;\r\n"); commandText.Append("ELSE\r\n"); commandText.Append("\t\tRETURN FALSE;\r\n"); commandText.Append("END IF;\r\n"); commandText.Append("END;\r\n"); commandText.Append("'\r\n"); commandText.Append("LANGUAGE 'plpgsql' VOLATILE;"); command.CommandText = commandText.ToString(); command.ExecuteNonQuery(); command.Dispose(); } private void insertTestData() { string commandText = "insert into public.test_table values(@int4_field, @char_field, @varchar_field, @single_field, @double_field, @date_Field, @time_field, @timestamp_field, @blob_field, @bool_field)"; PgTransaction transaction = connection.BeginTransaction(); PgCommand command = new PgCommand(commandText, connection, transaction); try { // Add command parameters command.Parameters.Add("@int4_field", PgDbType.Int4); command.Parameters.Add("@char_field", PgDbType.Char); command.Parameters.Add("@varchar_field", PgDbType.VarChar); command.Parameters.Add("@single_field", PgDbType.Float); command.Parameters.Add("@double_field", PgDbType.Double); command.Parameters.Add("@date_field", PgDbType.Date); command.Parameters.Add("@time_field", PgDbType.Time); command.Parameters.Add("@timestamp_field", PgDbType.Timestamp); command.Parameters.Add("@blob_field", PgDbType.Binary); command.Parameters.Add("@bool_field", PgDbType.Boolean); for (int i = 0; i < 100; i++) { command.Parameters["@int4_field"].Value = i; command.Parameters["@char_field"].Value = "IRow " + i.ToString(); command.Parameters["@varchar_field"].Value = "IRow Number" + i.ToString(); command.Parameters["@single_field"].Value = (float)(i + 10)/5; command.Parameters["@double_field"].Value = Math.Log(i, 10); command.Parameters["@date_field"].Value = DateTime.Now; command.Parameters["@time_field"].Value = DateTime.Now; command.Parameters["@timestamp_field"].Value = DateTime.Now; command.Parameters["@blob_field"].Value = Encoding.Default.GetBytes("IRow " + i.ToString()); command.Parameters["@bool_field"].Value = true; command.ExecuteNonQuery(); } // Commit transaction transaction.Commit(); } catch (PgException) { transaction.Rollback(); throw; } finally { command.Dispose(); } } private void insertGeometricTestData() { string commandText = "insert into public.geometric_table values(@pk, @point, @box, @circle, @lseg, @path, @polygon)"; PgTransaction transaction = connection.BeginTransaction(); PgCommand command = new PgCommand(commandText, connection, transaction); try { // Add command parameters command.Parameters.Add("@pk", PgDbType.Int4); command.Parameters.Add("@point", PgDbType.Point); command.Parameters.Add("@box", PgDbType.Box); command.Parameters.Add("@circle", PgDbType.Circle); command.Parameters.Add("@lseg", PgDbType.LSeg); command.Parameters.Add("@path", PgDbType.Path); command.Parameters.Add("@polygon", PgDbType.Polygon); for (int i = 0; i < 100; i++) { command.Parameters["@pk"].Value = i; command.Parameters["@point"].Value = new PgPoint(i, i + 10); command.Parameters["@box"].Value = new PgBox(new PgPoint(0,i), new PgPoint(i, i)); command.Parameters["@circle"].Value = new PgCircle(new PgPoint(i, 0), i); command.Parameters["@lseg"].Value = new PgLSeg(new PgPoint(-1,0), new PgPoint(1,0)); command.Parameters["@path"].Value = new PgPath(false, new PgPoint[]{new PgPoint(0,0), new PgPoint(1,0)}); command.Parameters["@polygon"].Value= new PgPolygon(new PgPoint[]{new PgPoint(1,1), new PgPoint(0,0)}); command.ExecuteNonQuery(); } // Commit transaction transaction.Commit(); } catch (PgException) { transaction.Rollback(); throw; } finally { command.Dispose(); } } } } --- NEW FILE: PgArrayTest.cs --- /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * Copyright (c) 2003-2004 Carlos Guzman Alvarez * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Data; using System.Security.Cryptography; using PostgreSql.Data.PgSqlClient; using NUnit.Framework; namespace PostgreSql.Data.PgSqlClient.UnitTests { [TestFixture] public class PgArrayTest : PgBaseTest { private int testArrayLength = 100; [Test] public void Int2ArrayTest() { int id_value = System.DateTime.Now.Millisecond; string selectText = "SELECT int2_array FROM public.test_table WHERE int4_field = " + id_value.ToString(); string insertText = "INSERT INTO public.test_table (int4_field, int2_array) values (@int4_field, @int2_array)"; byte[] bytes = new byte[this.testArrayLength*2]; RNGCryptoServiceProvider rng = new RNGCryptoServiceProvider(); rng.GetBytes(bytes); short[] insert_values = new short[this.testArrayLength]; Buffer.BlockCopy(bytes, 0, insert_values, 0, bytes.Length); Console.WriteLine("Executing insert command"); PgCommand command = new PgCommand(insertText, Connection); command.Parameters.Add("@int4_field", PgDbType.Int4).Value = id_value; command.Parameters.Add("@int2_array", PgDbType.Array).Value = insert_values; int updated = command.ExecuteNonQuery(); Assertion.AssertEquals("Invalid number of inserted rows", updated, 1); Console.WriteLine("Checking inserted values"); // Check that inserted values are correct PgCommand select = new PgCommand(selectText, Connection); PgDataReader reader = select.ExecuteReader(); if (reader.Read()) { if (!reader.IsDBNull(0)) { short[] select_values = new short[insert_values.Length]; System.Array.Copy((System.Array)reader.GetValue(0), select_values, select_values.Length); for (int i = 0; i < insert_values.Length; i++) { if (insert_values[i] != select_values[i]) { throw new Exception("differences at index " + i.ToString()); } } } } Console.WriteLine("Finishing test"); reader.Close(); } } } --- NEW FILE: PgCommandTest.cs --- /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * Copyright (c) 2003-2004 Carlos Guzman Alvarez * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Data; using PostgreSql.Data.PgSqlClient; using NUnit.Framework; namespace PostgreSql.Data.PgSqlClient.UnitTests { [TestFixture] public class PgCommandTest : PgBaseTest { [Test] public void ExecuteNonQueryTest() { Console.WriteLine("\r\nPgCommandTest.ExecuteNonQueryTest"); string commandText = "update public.test_table set char_field = @char_field, varchar_field = @varchar_field where int4_field = @int4_field"; PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand(commandText, Connection, transaction); try { // Add command parameters command.Parameters.Add("@char_field", PgDbType.Char); command.Parameters.Add("@varchar_field", PgDbType.VarChar); command.Parameters.Add("@int4_field", PgDbType.Int4); for (int i = 0; i < 100; i++) { command.Parameters["@char_field"].Value = "Row " + i.ToString(); command.Parameters["@varchar_field"].Value = "Row Number" + i.ToString(); command.Parameters["@int4_field"].Value = i; command.ExecuteNonQuery(); } // Commit transaction transaction.Commit(); ExecuteReaderTest(); } catch (PgException) { transaction.Rollback(); throw; } finally { command.Dispose(); } } [Test] public void ExecuteReaderTest() { Console.WriteLine("\r\nPgCommandTest.ExecuteReaderTest"); PgCommand command = new PgCommand("SELECT * FROM public.test_table ORDER BY date_field", Connection); PgDataReader reader = command.ExecuteReader(); for (int i = 0; i < reader.FieldCount; i++) { Console.Write("{0}\t\t", reader.GetName(i)); } Console.Write("\r\n"); while (reader.Read()) { object[] values = new object[reader.FieldCount]; reader.GetValues(values); for (int i = 0; i < values.Length; i++) { Console.Write("{0}\t\t", values[i]); } Console.Write("\r\n"); } reader.Close(); command.Dispose(); } [Test] public void ExecuteScalarTest() { PgCommand command = Connection.CreateCommand(); command.CommandText = "SELECT char_field FROM public.test_table where int4_field = @int4_field"; command.Parameters.Add("@int4_field", 2); string charFieldValue = command.ExecuteScalar().ToString(); Console.WriteLine("Scalar value: {0}", charFieldValue); command.Dispose(); } [Test] public void PrepareTest() { PgCommand command = Connection.CreateCommand(); command.CommandText = "SELECT char_field FROM public.test_table where int4_field = @int4_field"; command.Parameters.Add("@int4_field", 2); command.Prepare(); command.Dispose(); } [Test] public void NamedParametersTest() { PgCommand command = Connection.CreateCommand(); command.CommandText = "SELECT char_field FROM public.test_table where int4_field = @int4_field or char_field = @char_field"; command.Parameters.Add("@int4_field", 2); command.Parameters.Add("@char_field", "IRow 20"); PgDataReader reader = command.ExecuteReader(); int count = 0; while (reader.Read()) { Console.WriteLine(reader.GetValue(0)); count++; } Console.WriteLine("\r\n Record fetched {0} \r\n", count); reader.Close(); command.Dispose(); } [Test] public void ExecuteStoredProcTest() { PgCommand command = new PgCommand("TestCount", Connection); command.CommandType = CommandType.StoredProcedure; command.Parameters.Add("@CountResult", PgDbType.Int8).Direction = ParameterDirection.Output; command.ExecuteNonQuery(); Console.WriteLine("ExecuteStoredProcTest - Count result {0}", command.Parameters[0].Value); command.Dispose(); } [Test] public void RecordsAffectedTest() { // Execute a SELECT command PgCommand selectCommand = new PgCommand("SELECT * FROM public.test_table WHERE int4_field = 100", Connection); int recordsAffected = selectCommand.ExecuteNonQuery(); Console.WriteLine("\r\nRecords Affected by SELECT command: {0}", recordsAffected); selectCommand.Dispose(); Assertion.Assert(recordsAffected == -1); // Execute a DELETE command PgCommand deleteCommand = new PgCommand("DELETE FROM public.test_table WHERE int4_field = 45", Connection); recordsAffected = deleteCommand.ExecuteNonQuery(); Console.WriteLine("\r\nRecords Affected by DELETE command: {0}", recordsAffected); deleteCommand.Dispose(); Assertion.Assert(recordsAffected == 1); } [Test] public void TestError782096() { Console.WriteLine("\r\nPgCommandTest.TestError782096"); PgCommand command = new PgCommand("SELECT * FROM public.test_table ORDER BY date_field", Connection); PgDataReader reader = command.ExecuteReader(); for (int i = 0; i < reader.FieldCount; i++) { Console.Write("{0}\t\t", reader.GetName(i)); } Console.Write("\r\n"); while (reader.Read()) { object[] values = new object[reader.FieldCount]; reader.GetValues(values); for (int i = 0; i < values.Length; i++) { Console.Write("{0}\t\t", values[i]); } Console.Write("\r\n"); } command.Dispose(); reader.Close(); } } } --- NEW FILE: PgDataReaderTest.cs --- /* PgSqlClient - ADO.NET Data Provider for PostgreSQL 7.4+ * Copyright (c) 2003-2004 Carlos Guzman Alvarez * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ using System; using System.Data; using PostgreSql.Data.PgSqlClient; using NUnit.Framework; namespace PostgreSql.Data.PgSqlClient.UnitTests { [TestFixture] public class PgDataReaderTest : PgBaseTest { [Test] public void ReadTest() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table", Connection, transaction); Console.WriteLine("\r\nDataReader - Read Method - Test"); PgDataReader reader = command.ExecuteReader(); while (reader.Read()) { for (int i = 0; i < reader.FieldCount; i++) { Console.Write(reader.GetValue(i) + "\t"); } Console.WriteLine(); } reader.Close(); command.Dispose(); transaction.Rollback(); } [Test] public void GetValuesTest() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table", Connection, transaction); Console.WriteLine("\r\nDataReader - Read Method - Test"); PgDataReader reader = command.ExecuteReader(); while (reader.Read()) { object[] values = new object[reader.FieldCount]; reader.GetValues(values); for(int i = 0; i < values.Length; i++) { Console.Write(values[i] + "\t"); } Console.WriteLine(); } reader.Close(); transaction.Rollback(); command.Dispose(); } [Test] public void IndexerByIndexTest() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table", Connection, transaction); Console.WriteLine("\r\nDataReader - Read Method - Test"); PgDataReader reader = command.ExecuteReader(); while (reader.Read()) { for (int i = 0; i < reader.FieldCount; i++) { Console.Write(reader[i] + "\t"); } Console.WriteLine(); } reader.Close(); transaction.Rollback(); command.Dispose(); } [Test] public void IndexerByNameTest() { PgTransaction transaction = Connection.BeginTransaction(); PgCommand command = new PgCommand("SELECT * FROM public.test_table", Connection, transaction); Console.WriteLine("\r\nDataReader - Read Method - Test"); PgDataReader reader = command.ExecuteReader(); while (reader.Read()) { for (int i = 0; i < reader.FieldCount; i++) { Console.Write(reader[reader.GetName(i)] + "\t"); } Console.WriteLine(); }... [truncated message content] |
From: Carlos G. Á. <car...@us...> - 2005-09-08 18:44:52
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/UnitTests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8095/UnitTests Log Message: Directory /cvsroot/pgsqlclient/pgsqlclient_10/source/UnitTests added to the repository |
From: Carlos G. Á. <car...@us...> - 2005-09-08 18:43:58
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7910 Removed Files: Mono.Security.Tls.snk Log Message: Started the reorganization of the CVS module --- Mono.Security.Tls.snk DELETED --- |
From: Carlos G. Á. <car...@us...> - 2005-09-08 18:43:12
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Resources/ToolBox In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7717 Added Files: PgCommand.bmp PgConnection.bmp PgDataAdapter.bmp Log Message: Started the reorganization of the CVS module --- NEW FILE: PgConnection.bmp --- (This appears to be a binary file; contents omitted.) --- NEW FILE: PgCommand.bmp --- (This appears to be a binary file; contents omitted.) --- NEW FILE: PgDataAdapter.bmp --- (This appears to be a binary file; contents omitted.) |
From: Carlos G. Á. <car...@us...> - 2005-09-08 18:42:48
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Resources/ToolBox In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7584/ToolBox Log Message: Directory /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Resources/ToolBox added to the repository |
From: Carlos G. Á. <car...@us...> - 2005-09-08 18:42:26
|
Update of /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Resources In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7482/Resources Log Message: Directory /cvsroot/pgsqlclient/pgsqlclient_10/source/PostgreSql/Data/Resources added to the repository |