indexing
     status: "See notice at end of class"
     date: "$Date$"
     revision: "$Revision$"
     access: status, error
     product: eiffelstore
     database: all_bases

class interface
     DB_STATUS

create

     make
                 -- Create implementation handle.

feature -- Status report

     error_code: INTEGER
                 -- Error code prompted by database server

     error_message: STRING
                 -- SQL error message prompted by database server

     found: BOOLEAN
                 -- Is there any record matching the last
                 -- selection condition used ?

     is_connected: BOOLEAN
                 -- Has connection to the data base server succeeded?

     is_error_updated: BOOLEAN
                 -- Has an Oracle/ODBC function been called since last update which may have
                 -- updated error status?

     warning_message: STRING
                 -- SQL warning message prompted by database server
     
feature -- Status setting

     reset
                 -- Reset database error status.
           ensure
                 no_error: error_code_stored = 0
                 no_message_error: error_message_stored.is_equal ("")
                 no_message_warning: warning_message_stored.is_equal ("")

     set (new_value: INTEGER)
                 -- Should be removed!

     set_connect (new_value: BOOLEAN)
                 -- Change state of connection.
           ensure
                 is_connected_reset: is_connected = new_value
     
invariant

     has_handle: implementation /= void
           -- from ANY
     reflexive_equality: standard_is_equal (Current)
     reflexive_conformance: conforms_to (Current)

end -- class DB_STATUS