Automatic generation produced by ISE Eiffel
note status: "See notice at end of class." date: "$Date: 2012-05-03 00:14:01 -0700 (Thu, 03 May 2012) $" revision: "$Revision: 88681 $" access: perform_select, search, retrieve product: eiffelstore database: all_bases class interface DB_SELECTION create make -- Create an interface object to query active base. require database_set: is_database_set feature -- Access affected_row_count: INTEGER_32 -- The number of rows changed, deleted, or inserted by the last statement require -- from DB_EXPRESSION is_affected_row_count_supported: is_affected_row_count_supported generating_type: TYPE [detachable DB_SELECTION] -- Type of current object -- (type of which it is a direct instance) -- (from ANY) ensure -- from ANY generating_type_not_void: Result /= Void generator: STRING_8 -- Name of current object's generating class -- (base class of the type of which it is a direct instance) -- (from ANY) ensure -- from ANY generator_not_void: Result /= Void generator_not_empty: not Result.is_empty is_affected_row_count_supported: BOOLEAN -- Is affected_row_count supported? last_parsed_query_32: detachable STRING_32 -- Last parsed SQL query Manager: DATABASE_SESSION_MANAGER -- The session manager -- (from DATABASE_SESSION_MANAGER_ACCESS) feature -- Comparison frozen deep_equal (a: detachable ANY; b: like arg #1): BOOLEAN -- Are `a' and `b' either both void -- or attached to isomorphic object structures? -- (from ANY) ensure -- from ANY shallow_implies_deep: standard_equal (a, b) implies Result both_or_none_void: (a = Void) implies (Result = (b = Void)) same_type: (Result and (a /= Void)) implies (b /= Void and then a.same_type (b)) symmetric: Result implies deep_equal (b, a) frozen equal (a: detachable ANY; b: like arg #1): BOOLEAN -- Are `a' and `b' either both void or attached -- to objects considered equal? -- (from ANY) ensure -- from ANY definition: Result = (a = Void and b = Void) or else ((a /= Void and b /= Void) and then a.is_equal (b)) frozen is_deep_equal (other: attached DB_SELECTION): BOOLEAN -- Are `Current' and `other' attached to isomorphic object structures? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY shallow_implies_deep: standard_is_equal (other) implies Result same_type: Result implies same_type (other) symmetric: Result implies other.is_deep_equal (Current) is_equal (other: attached DB_SELECTION): BOOLEAN -- Is `other' attached to an object considered -- equal to current object? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY symmetric: Result implies other ~ Current consistent: standard_is_equal (other) implies Result frozen standard_equal (a: detachable ANY; b: like arg #1): BOOLEAN -- Are `a' and `b' either both void or attached to -- field-by-field identical objects of the same type? -- Always uses default object comparison criterion. -- (from ANY) ensure -- from ANY definition: Result = (a = Void and b = Void) or else ((a /= Void and b /= Void) and then a.standard_is_equal (b)) frozen standard_is_equal (other: attached DB_SELECTION): BOOLEAN -- Is `other' attached to an object of the same type -- as current object, and field-by-field identical to it? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY same_type: Result implies same_type (other) symmetric: Result implies other.standard_is_equal (Current) feature -- Status report after: BOOLEAN -- Is the container after? require container_exists: container /= Void conforms_to (other: ANY): BOOLEAN -- Does type of current object conform to type -- of `other' (as per Eiffel: The Language, chapter 13)? -- (from ANY) require -- from ANY other_not_void: other /= Void container: detachable LIST [DB_RESULT] -- Stored cursors. cursor: detachable DB_RESULT -- Cursor pointing to last fetched query result error_code: INTEGER_32 -- Error code of last transaction -- (from DB_STATUS_USE) error_message_32: STRING_32 -- SQL error message prompted by database server -- (from DB_STATUS_USE) exhausted: BOOLEAN -- Is there any more resulting row? -- (from DB_STATUS_USE) ht: detachable DB_STRING_HASH_TABLE [detachable ANY] -- (from STRING_HDL) note option: stable ht_order: detachable ARRAYED_LIST [READABLE_STRING_32] -- (from STRING_HDL) note option: stable immediate_execution: BOOLEAN -- Are requests immediately executed? -- (default is `no'). -- (from DB_EXEC_USE) is_allocatable: BOOLEAN -- Can `Current' be added to other concurrently opened selections? is_connected: BOOLEAN -- Has connection to the database server succeeded? -- (from DB_STATUS_USE) is_executable: BOOLEAN -- Is the query executable? is_exiting: BOOLEAN -- Is exit condition of load_result iteration loop met? ensure Result implies (not is_ok or else exhausted or else (attached stop_condition as le_stop_condition and then le_stop_condition.found)) is_mapped (key: READABLE_STRING_32): BOOLEAN -- Is `key' mapped to an Eiffel entity? -- (from STRING_HDL) require -- from STRING_HDL ht_not_void: ht /= Void keys_exists: key /= Void is_ok: BOOLEAN -- Is last SQL statement ok ? -- (from DB_STATUS_USE) is_tracing: BOOLEAN -- Is trace option for SQL queries on? -- (from DB_EXEC_USE) last_query_32: detachable STRING_32 -- Last SQL statement used -- (from DB_EXPRESSION) mapped_value (key: READABLE_STRING_32): ANY -- Value mapped with `key' -- (from STRING_HDL) require -- from STRING_HDL ht_not_void: ht /= Void key_exists: key /= Void key_mapped: is_mapped (key) ensure -- from STRING_HDL result_exists: Result /= Void object: detachable ANY -- Eiffel object to be filled in by cursor_to_object same_type (other: ANY): BOOLEAN -- Is type of current object identical to type of `other'? -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY definition: Result = (conforms_to (other) and other.conforms_to (Current)) stop_condition: detachable ACTION -- Object providing an `execute' routine called -- after each load_result iteration step trace_output: FILE -- Trace destination file -- (from DB_EXEC_USE) warning_message_32: STRING_32 -- SQL warning message prompted by database server -- (from DB_STATUS_USE) feature -- Status setting clear_all -- Remove all mapped keys. -- (from STRING_HDL) require -- from STRING_HDL ht_not_void: ht /= Void ht_order_not_void: ht_order /= Void cursor_to_object -- Assign object attributes with cursor field values. require cursor_exists: cursor /= Void object_exists: object /= Void forth -- Move cursor to next element of container. require else container_exists: container /= Void ensure then container_attached: (attached container as le_container) and (attached old container as le_old_container) container_index_moved: le_container.index = le_old_container.index + 1 cursor_updated: not after implies cursor = le_container.item no_object_convert -- Do not transform cursor into an Eiffel object -- while reading in selection results. ensure object = Void object_convert (ref: ANY) -- Set object with `reference', reference to an Eiffel -- object to be filled in with cursor field values. -- Use this before load_result for performance. require reference_exists: ref /= Void ensure object_set: object = ref reset -- Reset is_ok, `error_code_stored',`error_message_stored' and warning_message after error occurred. -- (from DB_STATUS_USE) ensure -- from DB_STATUS_USE is_ok: is_ok no_error: error_code = 0 and error_message_32.is_empty and warning_message_32.is_empty reset_cursor (c: DB_RESULT) -- Reset cursor with `c'. require arguments_exists: c /= Void connected: is_connected ensure cursor_reset: cursor = c set_action (action: ACTION) -- Set stop_condition with `action'. require action_exists: action /= Void ensure stop_condition_set: stop_condition = action set_container (one_container: like container) -- Make results of selection query persist in container. require container_exists: one_container /= Void ensure container_set: container = one_container set_immediate -- Set queries to be executed with a -- `EXECUTE IMMEDIATE' SQL statement. -- (from DB_EXEC_USE) ensure -- from DB_EXEC_USE execution_status: immediate_execution set_map_name (n: detachable ANY; key: READABLE_STRING_32) -- Store item `n' with key `key'. -- `n' can be `Void'. -- (from STRING_HDL) require -- from STRING_HDL ht_not_void: ht /= Void ht_order_not_void: ht_order /= Void key_exists: key /= Void not_key_in_table: not is_mapped (key) ensure -- from STRING_HDL count_valid: ht.count = old (ht.count) + 1 count_valid: ht_order.count = old (ht_order.count) + 1 mapped: is_mapped (key) set_query (query: READABLE_STRING_GENERAL) -- Set last_query_32 with query. -- (from DB_EXPRESSION) require -- from DB_EXPRESSION query_not_void: query /= Void ensure -- from DB_EXPRESSION last_query_32_changed: attached last_query_32 as lt_s and then lt_s.same_string (query.as_string_32) set_trace -- Trace queries sent to database server. -- (from DB_EXEC_USE) ensure -- from DB_EXEC_USE trace_status: is_tracing start -- Set cursor on first element of container. require else container_exists: container /= Void ensure then container_attached: attached container as le_container container_on_first: le_container.isfirst cursor_updated: cursor = le_container.item unset_action -- Reset stop_condition to Void. ensure stop_condition_void: stop_condition = Void unset_container -- Do not store in container results of selection. require container_exists: container /= Void ensure container_is_void: container = Void unset_immediate -- Set queries to be executed with a -- `PREPARE' followed by a `EXECUTE' SQL statement. -- (from DB_EXEC_USE) ensure -- from DB_EXEC_USE execution_status: not immediate_execution unset_map_name (key: READABLE_STRING_32) -- Remove item associated with key `key'. -- (from STRING_HDL) require -- from STRING_HDL ht_not_void: ht /= Void ht_order_not_void: ht_order /= Void key_exists: key /= Void item_exists: is_mapped (key) ensure -- from STRING_HDL count_valid: ht.count = old (ht.count) - 1 count_valid: ht_order.count = old (ht_order.count) - 1 unset_trace -- Do not trace queries sent to database server. -- (from DB_EXEC_USE) ensure -- from DB_EXEC_USE trace_status: not is_tracing feature -- Duplication copy (other: attached DB_SELECTION) -- Update current object using fields of object attached -- to `other', so as to yield equal objects. -- (from ANY) require -- from ANY other_not_void: other /= Void type_identity: same_type (other) ensure -- from ANY is_equal: Current ~ other frozen deep_copy (other: attached DB_SELECTION) -- Effect equivalent to that of: -- copy (`other' . deep_twin) -- (from ANY) require -- from ANY other_not_void: other /= Void ensure -- from ANY deep_equal: deep_equal (Current, other) frozen deep_twin: attached DB_SELECTION -- New object structure recursively duplicated from Current. -- (from ANY) ensure -- from ANY deep_twin_not_void: Result /= Void deep_equal: deep_equal (Current, Result) frozen standard_copy (other: attached DB_SELECTION) -- Copy every field of `other' onto corresponding field -- of current object. -- (from ANY) require -- from ANY other_not_void: other /= Void type_identity: same_type (other) ensure -- from ANY is_standard_equal: standard_is_equal (other) frozen standard_twin: attached DB_SELECTION -- New object field-by-field identical to `other'. -- Always uses default copying semantics. -- (from ANY) ensure -- from ANY standard_twin_not_void: Result /= Void equal: standard_equal (Result, Current) frozen twin: attached DB_SELECTION -- New object equal to `Current' -- twin calls copy; to change copying/twining semantics, redefine copy. -- (from ANY) ensure -- from ANY twin_not_void: Result /= Void is_equal: Result ~ Current feature -- Basic operations frozen as_attached: attached DB_SELECTION -- Attached version of Current -- (Can be used during transitional period to convert -- non-void-safe classes to void-safe ones.) -- (from ANY) frozen default: detachable DB_SELECTION -- Default value of object's type -- (from ANY) frozen default_pointer: POINTER -- Default value of type `POINTER' -- (Avoid the need to write `p'.default for -- some `p' of type `POINTER'.) -- (from ANY) default_rescue -- Process exception for routines with no Rescue clause. -- (Default: do nothing.) -- (from ANY) frozen do_nothing -- Execute a null action. -- (from ANY) execute_query -- Execute query with last_query. require -- from DB_EXPRESSION is_executable: is_executable load_result -- Iterate through selection results, -- load container if requested and call action routine -- for each iteration step until `exit_condition' is met. require connected: is_connected is_ok: is_ok ensure cursor_not_void: cursor /= Void exit_condition_met: is_exiting next -- Move to next element matching the query. require connected: is_connected query (s: READABLE_STRING_GENERAL) -- Select stored objects using `s' and make -- them retrievable using load_result. require connected: is_connected argument_exists: s /= Void argument_is_not_empty: not s.is_empty is_ok: is_ok is_allocatable: is_allocatable ensure last_query_changed: attached last_query_32 as l_s and then l_s.same_string_general (s) terminate -- Clear database cursor. require connected: is_connected ensure is_allocatable: is_allocatable wipe_out -- Clear selection results. ensure container_is_empty: attached container as le_container implies le_container.is_empty object_model_void: object = Void cursor_void: cursor = Void feature -- Markers fixme (comment: STRING_8) -- Mark code that has to be "fixed" with `comment'. -- (from REFACTORING_HELPER) require -- from REFACTORING_HELPER comment_not_void: comment /= Void to_implement (comment: STRING_8) -- Mark code that has to be "implemented" with `comment'. -- (from REFACTORING_HELPER) require -- from REFACTORING_HELPER comment_not_void: comment /= Void to_implement_assertion (comment: STRING_8): BOOLEAN -- Mark assertion that has to be "implemented" with `comment'. -- (from REFACTORING_HELPER) require -- from REFACTORING_HELPER comment_not_void: comment /= Void feature -- Output Io: STD_FILES -- Handle to standard file setup -- (from ANY) ensure -- from ANY io_not_void: Result /= Void out: STRING_8 -- New string containing terse printable representation -- of current object -- (from ANY) ensure -- from ANY out_not_void: Result /= Void print (o: detachable ANY) -- Write terse external representation of `o' -- on standard output. -- (from ANY) frozen tagged_out: STRING_8 -- New string containing terse printable representation -- of current object -- (from ANY) ensure -- from ANY tagged_out_not_void: Result /= Void feature -- Platform Operating_environment: OPERATING_ENVIRONMENT -- Objects available from the operating system -- (from ANY) ensure -- from ANY operating_environment_not_void: Result /= Void feature -- Qeury is_database_set: BOOLEAN -- Is database set? -- (from HANDLE_USE) invariant -- from ANY reflexive_equality: standard_is_equal (Current) reflexive_conformance: conforms_to (Current) note copyright: "Copyright (c) 1984-2012, Eiffel Software and others" license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)" source: "[ Eiffel Software 5949 Hollister Ave., Goleta, CA 93117 USA Telephone 805-685-1006, Fax 805-685-6869 Website http://www.eiffel.com Customer support http://support.eiffel.com ]" end -- class DB_SELECTION -- Generated by Eiffel Studio --
For more details: docs.eiffel.com