kexi

KexiDB::Object Class Reference

#include <object.h>

Inheritance diagram for KexiDB::Object:

KexiDB::Connection KexiDB::Cursor KexiDB::DatabaseProperties KexiDB::Driver KexiDB::DriverManager KexiMigration::KexiMigrate KexiMigration::MigrateManager KexiPart::Manager KexiProject KexiProjectSet List of all members.

Detailed Description

Prototype of KexiDB object, handles result of last operation.

Definition at line 34 of file object.h.


Public Member Functions

bool error () const
const QString & errorMsg () const
int errorNum () const
int previousServerResult () const
QString previousServerResultName () const
void debugError ()
virtual void clearError ()
virtual QString serverErrorMsg ()
virtual int serverResult ()
virtual QString serverResultName ()
QString msgTitle () const
const QString recentSQLString () const

Protected Member Functions

 Object (MessageHandler *handler=0)
virtual ~Object ()
virtual void setError (int code=ERR_OTHER, const QString &msg=QString::null)
virtual void setError (const QString &msg)
virtual void setError (const QString &title, const QString &msg)
void setError (KexiDB::Object *obj, const QString &prependMessage=QString::null)
virtual void setError (KexiDB::Object *obj, int code, const QString &prependMessage=QString::null)
virtual int askQuestion (const QString &message, KMessageBox::DialogType dlgType, KMessageBox::ButtonCode defaultResult, const KGuiItem &buttonYes=KStdGuiItem::yes(), const KGuiItem &buttonNo=KStdGuiItem::no(), const QString &dontShowAskAgainName=QString::null, int options=KMessageBox::Notify, MessageHandler *msgHandler=0)
virtual void drv_clearServerResult ()

Protected Attributes

QString m_sql
QString m_errorSql
int m_serverResult
QString m_serverResultName
QString m_serverErrorMsg
QString m_errMsg

Friends

class MessageTitle

Member Function Documentation

int Object::askQuestion ( const QString &  message,
KMessageBox::DialogType  dlgType,
KMessageBox::ButtonCode  defaultResult,
const KGuiItem &  buttonYes = KStdGuiItem::yes(),
const KGuiItem &  buttonNo = KStdGuiItem::no(),
const QString &  dontShowAskAgainName = QString::null,
int  options = KMessageBox::Notify,
MessageHandler msgHandler = 0 
) [protected, virtual]

Interactively asks a question. Console or GUI can be used for this, depending on installed message handler. For GUI version, KMessageBox class is used. See KexiDB::MessageHandler::askQuestion() for details.

Definition at line 174 of file object.cpp.

void Object::clearError (  )  [virtual]

Clears error flag. Also calls drv_clearServerResult(). You can reimplement this method in subclasses to clear even more members, but remember to also call Object::clearError().

Reimplemented in KexiDB::Connection.

Definition at line 131 of file object.cpp.

void Object::debugError (  ) 

Sends errorMsg() to debug output.

Definition at line 159 of file object.cpp.

virtual void KexiDB::Object::drv_clearServerResult (  )  [inline, protected, virtual]

Clears number of last server operation's result stored as a single integer. Formally, this integer should be set to value that means "NO ERRORS" or "OK". This method is called by clearError(). For reimplementation. By default does nothing.

See also:
serverErrorMsg()

Reimplemented in KexiDB::Cursor, KexiDB::DriverManager, KexiDB::MySqlConnection, KexiDB::MySqlCursor, KexiDB::pqxxSqlConnection, KexiDB::pqxxSqlCursor, KexiDB::SQLiteConnection, KexiDB::SQLiteCursor, and KexiMigration::MigrateManager.

Definition at line 158 of file object.h.

bool KexiDB::Object::error (  )  const [inline]

Returns:
true if there was error during last operation on the object.

Reimplemented in KexiProject.

Definition at line 38 of file object.h.

const QString& KexiDB::Object::errorMsg (  )  const [inline]

Returns:
(localized) error message if there was error during last operation on the object, else: 0.

Definition at line 42 of file object.h.

int KexiDB::Object::errorNum (  )  const [inline]

Returns:
error number of if there was error during last operation on the object, else: 0.

Definition at line 46 of file object.h.

QString KexiDB::Object::msgTitle (  )  const [inline]

Returns:
message title that sometimes is provided and prepended to the main warning/error message. Used by MessageHandler.

Definition at line 100 of file object.h.

int KexiDB::Object::previousServerResult (  )  const [inline]

Returns:
previous server result number, for error displaying purposes.

Definition at line 49 of file object.h.

const QString KexiDB::Object::recentSQLString (  )  const [inline]

Returns:
sql string of actually executed SQL statement, usually using drv_executeSQL(). If there was error during executing SQL statement, before, that string is returned instead.

Definition at line 105 of file object.h.

QString Object::serverErrorMsg (  )  [virtual]

KexiDB library offers detailed error numbers using errorNum() and detailed error i18n'd messages using errorMsg() - these informations are not engine-dependent (almost). Use this in your application to give users more information on what's up.

This method returns (non-i18n'd !) engine-specific error message, if there was any error during last server-side operation, otherwise null string. Reimplement this for your driver

Reimplemented in KexiDB::Cursor, KexiDB::DriverManager, KexiDB::MySqlConnection, KexiDB::MySqlCursor, KexiDB::pqxxSqlConnection, KexiDB::SQLiteConnection, KexiDB::SQLiteCursor, and KexiMigration::MigrateManager.

Definition at line 144 of file object.cpp.

int Object::serverResult (  )  [virtual]

Returns:
engine-specific last server-side operation result number. Use this in your application to give users more information on what's up.
Reimplement this for your driver - default implementation just returns 0. Note that this result value is not the same as the one returned by errorNum() (Object::m_errno member)
See also:
serverErrorMsg(), drv_clearServerResult()

Reimplemented in KexiDB::Cursor, KexiDB::DriverManager, KexiDB::MySqlConnection, KexiDB::MySqlCursor, KexiDB::pqxxSqlConnection, KexiDB::SQLiteConnection, KexiDB::SQLiteCursor, and KexiMigration::MigrateManager.

Definition at line 149 of file object.cpp.

QString Object::serverResultName (  )  [virtual]

Returns:
engine-specific last server-side operation result name, (name for serverResult()). Use this in your application to give users more information on what's up.
Reimplement this for your driver - default implementation just returns null string. Note that this result name is not the same as the error message returned by serverErorMsg() or erorMsg()
See also:
serverErrorMsg(), drv_clearServerResult()

Reimplemented in KexiDB::Cursor, KexiDB::DriverManager, KexiDB::MySqlConnection, KexiDB::MySqlCursor, KexiDB::pqxxSqlConnection, KexiDB::SQLiteConnection, KexiDB::SQLiteCursor, and KexiMigration::MigrateManager.

Definition at line 154 of file object.cpp.

void Object::setError ( KexiDB::Object obj,
int  code,
const QString &  prependMessage = QString::null 
) [protected, virtual]

Copies the (localized) error message and code from other KexiDB::Object with custom error code.

Definition at line 96 of file object.cpp.

void Object::setError ( KexiDB::Object obj,
const QString &  prependMessage = QString::null 
) [protected]

Copies the (localized) error message and code from other KexiDB::Object.

Definition at line 91 of file object.cpp.

void KexiDB::Object::setError ( const QString &  msg  )  [protected, virtual]

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Also sets title.

Definition at line 69 of file object.cpp.

void KexiDB::Object::setError ( int  code = ERR_OTHER,
const QString &  msg = QString::null 
) [protected, virtual]

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Sets error code to ERR_OTHER. Use this if you don't care about setting error code.

Definition at line 53 of file object.cpp.


Member Data Documentation

QString KexiDB::Object::m_sql [protected]

used to store of actually executed SQL statement

Definition at line 158 of file object.h.


The documentation for this class was generated from the following files:
KDE Home | KDE Accessibility Home | Description of Access Keys