INDEX CLUSTER FEATURES SHORT FRAMES NO FRAMES

indexing

title: "Represents the notion of transaction"
project: "Visual Eiffel"
revision: "$Revision: 1.1 $"
copyright: "Copyright (C) 1996-2005 Object Tools Group"
license: "http://visual-eiffel.com/license"
cluster: dale
class TRANSACTION
inherit

DALE_SERVER
redefine
copy,
is_equal
end
creation {SESSION}

attach_to_session
creation {DATABASE}

attach_to_database
feature -- Attributes:

session: SESSION

database: DATABASE

language_support: INTEGER
feature -- Commands:

commit
-- commit transaction
require
attached: is_attached

rollback
-- rollback transaction
require
attached: is_attached
feature -- Queries:

default_isolation_level: INTEGER
-- returns current isolation level bitmask
require
attached_to_database: is_attached_to_database
ensure
valid_isolation_level (Result)

isolation_level: INTEGER
-- returns current isolation level bitmask
require
attached_to_database: is_attached_to_database
ensure
valid_isolation_level (Result)

autocommit_mode: BOOLEAN
-- returns current autocommit mode
require
attached_to_database: is_attached_to_database

is_attached_to_database: BOOLEAN
-- returns True if it is attached to a database

is_attached_to_session: BOOLEAN
-- returns True if it is attached to a database

is_attached: BOOLEAN
-- returns True if attached to a session or a database
feature -- Settings:

set_isolation_level (lev: INTEGER)
-- set isolation level
require
valid_level: valid_isolation_level (lev)
attached_to_database: is_attached_to_database

set_autocommit_mode (f: BOOLEAN)
-- set autocommit mode
require
attached_to_database: is_attached_to_database
feature -- Validations:

valid_language_support (ls: INTEGER): BOOLEAN
-- ...

valid_isolation_level (lev: INTEGER): BOOLEAN
-- is this isolation level valid?
feature -- Redefinitions from ANY:

copy (other: like Current)
-- redefined from ANY

is_equal (other: like Current): BOOLEAN
-- redefined from ANY
feature {SESSION}

attach_to_session (s: SESSION)
-- creation procedure
require
valid_session: s /= void and then s.is_attached
feature {DATABASE}

attach_to_database (db: DATABASE; ls: INTEGER)
-- creation procedure
require
valid_database: db /= void and then db.is_connected
valid_language_support: valid_language_support (ls)
end -- class TRANSACTION

INDEX CLUSTER FEATURES SHORT FRAMES NO FRAMES