160 <a href="BaseRowSet.html"><code>BaseRowSet</code></a> abstract class. For example, a 161 <code>CachedRowSet</code> implementation must implement the <code>CachedRowSet</code> 162 interface and extend the <code>BaseRowSet</code> abstract class. The 163 <code>BaseRowSet</code> class provides the standard architecture on which all 164 <code>RowSet</code> implementations should be built, regardless of whether the 165 <code>RowSet</code> objects exist in a connected or disconnected environment. 166 The <code>BaseRowSet</code> abstract class provides any <code>RowSet</code> implementation 167 with its base functionality, including property manipulation and event notification 168 that is fully compliant with <a href="http://java.sun.com/products/javabeans">JavaBeans</a> 169 component requirements. As an example, all implementations provided in the 170 reference implementations (contained in the <code>com.sun.rowset</code> package) use 171 the <code>BaseRowSet</code> class as a basis for their implementations. 172 <P> 173 The following table illustrates the features that the <code>BaseRowSet</code> 174 abstract class provides. 175 <blockquote> 176 <table class="striped" style="vertical-align:top; width:75%"> 177 <caption>Features in <code>BaseRowSet</code></caption> 178 <thead> 179 <tr> 180 <th>Feature</th> 181 <th>Details</th> 182 </tr> 183 </thead> 184 <tbody> 185 <tr> 186 <td>Properties</td> 187 <td>Provides standard JavaBeans property manipulation 188 mechanisms to allow applications to get and set <code>RowSet</code> command and 189 property values. Refer to the documentation of the <code>javax.sql.RowSet</code> 190 interface (available in the JDBC 3.0 specification) for more details on 191 the standard <code>RowSet</code> properties.</td> 192 </tr> 193 <tr> 194 <td>Event notification</td> 195 <td>Provides standard JavaBeans event notifications 196 to registered event listeners. Refer to the documentation of <code>javax.sql.RowSetEvent</code> 197 interface (available in the JDBC 3.0 specification) for 198 more details on how to register and handle standard RowSet events generated 199 by compliant implementations.</td> 200 </tr> 201 <tr> 202 <td>Setters for a RowSet object's command</td> 203 <td>Provides a complete set of setter methods 204 for setting RowSet command parameters.</td> 205 </tr> 206 <tr> 207 <td>Streams</td> 208 <td>Provides fields for storing of stream instances 209 in addition to providing a set of constants for stream type designation.</td> 210 </tr> 211 </tbody> 212 </table> 213 </blockquote> 214 215 <li><b>3.3 Connected RowSet Requirements</b> 216 <p> 217 The <code>JdbcRowSet</code> describes a <code>RowSet</code> object that <b>must</b> always 218 be connected to the originating data source. Implementations of the <code>JdbcRowSet</code> 219 should ensure that this connection is provided solely by a JDBC driver. 220 Furthermore, <code>RowSet</code> objects that are implementations of the 221 <code>JdbcRowSet</code> interface and are therefore operating in a connected environment 222 do not use the <code>SyncFactory</code> to obtain a <code>RowSetReader</code> object 223 or a <code>RowSetWriter</code> object. They can safely rely on the JDBC driver to 224 supply their needs by virtue of the presence of an underlying updatable and scrollable 225 <code>ResultSet</code> implementation. 226 227 <li> | 160 <a href="BaseRowSet.html"><code>BaseRowSet</code></a> abstract class. For example, a 161 <code>CachedRowSet</code> implementation must implement the <code>CachedRowSet</code> 162 interface and extend the <code>BaseRowSet</code> abstract class. The 163 <code>BaseRowSet</code> class provides the standard architecture on which all 164 <code>RowSet</code> implementations should be built, regardless of whether the 165 <code>RowSet</code> objects exist in a connected or disconnected environment. 166 The <code>BaseRowSet</code> abstract class provides any <code>RowSet</code> implementation 167 with its base functionality, including property manipulation and event notification 168 that is fully compliant with <a href="http://java.sun.com/products/javabeans">JavaBeans</a> 169 component requirements. As an example, all implementations provided in the 170 reference implementations (contained in the <code>com.sun.rowset</code> package) use 171 the <code>BaseRowSet</code> class as a basis for their implementations. 172 <P> 173 The following table illustrates the features that the <code>BaseRowSet</code> 174 abstract class provides. 175 <blockquote> 176 <table class="striped" style="vertical-align:top; width:75%"> 177 <caption>Features in <code>BaseRowSet</code></caption> 178 <thead> 179 <tr> 180 <th scope="col">Feature</th> 181 <th scope="col">Details</th> 182 </tr> 183 </thead> 184 <tbody> 185 <tr> 186 <th scope="row">Properties</th> 187 <td>Provides standard JavaBeans property manipulation 188 mechanisms to allow applications to get and set <code>RowSet</code> command and 189 property values. Refer to the documentation of the <code>javax.sql.RowSet</code> 190 interface (available in the JDBC 3.0 specification) for more details on 191 the standard <code>RowSet</code> properties.</td> 192 </tr> 193 <tr> 194 <th scope="row">Event notification</th> 195 <td>Provides standard JavaBeans event notifications 196 to registered event listeners. Refer to the documentation of <code>javax.sql.RowSetEvent</code> 197 interface (available in the JDBC 3.0 specification) for 198 more details on how to register and handle standard RowSet events generated 199 by compliant implementations.</td> 200 </tr> 201 <tr> 202 <th scope="row">Setters for a RowSet object's command</th> 203 <td>Provides a complete set of setter methods 204 for setting RowSet command parameters.</td> 205 </tr> 206 <tr> 207 <th scope="row">Streams</th> 208 <td>Provides fields for storing of stream instances 209 in addition to providing a set of constants for stream type designation.</td> 210 </tr> 211 </tbody> 212 </table> 213 </blockquote> 214 215 <li><b>3.3 Connected RowSet Requirements</b> 216 <p> 217 The <code>JdbcRowSet</code> describes a <code>RowSet</code> object that <b>must</b> always 218 be connected to the originating data source. Implementations of the <code>JdbcRowSet</code> 219 should ensure that this connection is provided solely by a JDBC driver. 220 Furthermore, <code>RowSet</code> objects that are implementations of the 221 <code>JdbcRowSet</code> interface and are therefore operating in a connected environment 222 do not use the <code>SyncFactory</code> to obtain a <code>RowSetReader</code> object 223 or a <code>RowSetWriter</code> object. They can safely rely on the JDBC driver to 224 supply their needs by virtue of the presence of an underlying updatable and scrollable 225 <code>ResultSet</code> implementation. 226 227 <li> |