2 // OracleDataAdapter.cs
4 // Part of the Mono class libraries at
5 // mcs/class/System.Data.OracleClient/System.Data.OracleClient
7 // Assembly: System.Data.OracleClient.dll
8 // Namespace: System.Data.OracleClient
10 // Author: Tim Coleman <tim@timcoleman.com>
12 // Parts transferred from System.Data.SqlClient/SqlDataAdapter.cs
14 // Rodrigo Moya (rodrigo@ximian.com)
15 // Daniel Morgan (danmorg@sc.rr.com)
16 // Tim Coleman (tim@timcoleman.com)
18 // Copyright (C) Tim Coleman, 2003
19 // (C) Ximian, Inc 2002
21 // Licensed under the MIT/X11 License.
25 using System.ComponentModel;
27 using System.Data.Common;
29 namespace System.Data.OracleClient {
30 public sealed class OracleDataAdapter : DbDataAdapter, IDbDataAdapter
34 bool disposed = false;
35 OracleCommand deleteCommand;
36 OracleCommand insertCommand;
37 OracleCommand selectCommand;
38 OracleCommand updateCommand;
44 public OracleDataAdapter ()
45 : this (new OracleCommand ())
49 public OracleDataAdapter (OracleCommand selectCommand)
53 SelectCommand = selectCommand;
57 public OracleDataAdapter (string selectCommandText, OracleConnection selectConnection)
58 : this (new OracleCommand (selectCommandText, selectConnection))
62 public OracleDataAdapter (string selectCommandText, string selectConnectionString)
63 : this (selectCommandText, new OracleConnection (selectConnectionString))
71 public OracleCommand DeleteCommand {
72 get { return deleteCommand; }
73 set { deleteCommand = value; }
76 public OracleCommand InsertCommand {
77 get { return insertCommand; }
78 set { insertCommand = value; }
81 public OracleCommand SelectCommand {
82 get { return selectCommand; }
83 set { selectCommand = value; }
86 public OracleCommand UpdateCommand {
87 get { return updateCommand; }
88 set { updateCommand = value; }
91 IDbCommand IDbDataAdapter.DeleteCommand {
92 get { return DeleteCommand; }
94 if (!(value is OracleCommand))
95 throw new ArgumentException ();
96 DeleteCommand = (OracleCommand) value;
100 IDbCommand IDbDataAdapter.InsertCommand {
101 get { return InsertCommand; }
103 if (!(value is OracleCommand))
104 throw new ArgumentException ();
105 InsertCommand = (OracleCommand) value;
109 IDbCommand IDbDataAdapter.SelectCommand {
110 get { return SelectCommand; }
112 if (!(value is OracleCommand))
113 throw new ArgumentException ();
114 SelectCommand = (OracleCommand) value;
118 IDbCommand IDbDataAdapter.UpdateCommand {
119 get { return UpdateCommand; }
121 if (!(value is OracleCommand))
122 throw new ArgumentException ();
123 UpdateCommand = (OracleCommand) value;
128 ITableMappingCollection IDataAdapter.TableMappings {
129 get { return TableMappings; }
132 #endregion // Properties
136 protected override RowUpdatedEventArgs CreateRowUpdatedEvent (DataRow dataRow, IDbCommand command, StatementType statementType, DataTableMapping tableMapping)
138 return new OracleRowUpdatedEventArgs (dataRow, command, statementType, tableMapping);
142 protected override RowUpdatingEventArgs CreateRowUpdatingEvent (DataRow dataRow, IDbCommand command, StatementType statementType, DataTableMapping tableMapping)
144 return new OracleRowUpdatingEventArgs (dataRow, command, statementType, tableMapping);
147 protected override void Dispose (bool disposing)
151 // Release managed resources
153 // Release unmanaged resources
158 protected override void OnRowUpdated (RowUpdatedEventArgs value)
160 if (RowUpdated != null)
161 RowUpdated (this, (OracleRowUpdatedEventArgs) value);
164 protected override void OnRowUpdating (RowUpdatingEventArgs value)
166 if (RowUpdating != null)
167 RowUpdating (this, (OracleRowUpdatingEventArgs) value);
170 #endregion // Methods
172 #region Events and Delegates
174 public event OracleRowUpdatedEventHandler RowUpdated;
175 public event OracleRowUpdatingEventHandler RowUpdating;
177 #endregion // Events and Delegates