00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #include "kexidbdriver.h"
00021 #include "kexidbdrivermanager.h"
00022
00023 #include "kexidbconnection.h"
00024 #include "kexidbconnectiondata.h"
00025
00026 #include <qvaluelist.h>
00027 #include <qptrlist.h>
00028 #include <kdebug.h>
00029
00030 #include <kexidb/connection.h>
00031
00032 using namespace Kross::KexiDB;
00033
00034 KexiDBDriver::KexiDBDriver(::KexiDB::Driver* driver)
00035 : Kross::Api::Class<KexiDBDriver>("KexiDBDriver", KexiDBDriverManager::self())
00036 , m_driver(driver)
00037 {
00038
00039
00040 this->addProxyFunction< Kross::Api::ProxyValue<Kross::Api::Variant,bool> >
00041 ("isValid", driver, &::KexiDB::Driver::isValid );
00042
00043
00044 this->addProxyFunction< Kross::Api::ProxyValue<Kross::Api::Variant,int> >
00045 ("versionMajor", driver, &::KexiDB::Driver::versionMajor );
00046
00047
00048 this->addProxyFunction< Kross::Api::ProxyValue<Kross::Api::Variant,int> >
00049 ("versionMinor", driver, &::KexiDB::Driver::versionMinor );
00050
00051
00052
00053 this->addProxyFunction< Kross::Api::ProxyValue<Kross::Api::Variant,QString>, Kross::Api::ProxyValue<Kross::Api::Variant,const QString&> >
00054 ("escapeString", driver, (QString(::KexiDB::Driver::*)(const QString&)const) &::KexiDB::Driver::escapeString);
00055
00056
00057 this->addProxyFunction< Kross::Api::ProxyValue<Kross::Api::Variant,bool> >
00058 ("isFileDriver", driver, &::KexiDB::Driver::isFileDriver );
00059
00060
00061
00062 this->addProxyFunction< Kross::Api::ProxyValue<Kross::Api::Variant,QString> >
00063 ("fileDBDriverMimeType", driver, &::KexiDB::Driver::fileDBDriverMimeType );
00064
00065
00066
00067 this->addProxyFunction< Kross::Api::ProxyValue<Kross::Api::Variant,bool>, Kross::Api::ProxyValue<Kross::Api::Variant,const QString&> >
00068 ("isSystemObjectName", driver, &::KexiDB::Driver::isSystemObjectName );
00069
00070
00071
00072 this->addProxyFunction< Kross::Api::ProxyValue<Kross::Api::Variant,bool>, Kross::Api::ProxyValue<Kross::Api::Variant,const QString&> >
00073 ("isSystemDatabaseName", driver, &::KexiDB::Driver::isSystemDatabaseName );
00074
00075
00076
00077 this->addProxyFunction< Kross::Api::ProxyValue<Kross::Api::Variant,bool>, Kross::Api::ProxyValue<Kross::Api::Variant,const QString&> >
00078 ("isSystemFieldName", driver, &::KexiDB::Driver::isSystemFieldName );
00079
00080
00081
00082
00083
00084 this->addProxyFunction<
00085 Kross::Api::ProxyValue<Kross::Api::Variant,QString>,
00086 Kross::Api::ProxyValue<Kross::Api::Variant,const QString&>,
00087 Kross::Api::ProxyValue<Kross::Api::Variant,const QVariant&>
00088 > ("valueToSQL", driver, (QString(::KexiDB::Driver::*)(const QString&,const QVariant&)const) &::KexiDB::Driver::valueToSQL );
00089
00090
00091 this->addProxyFunction<
00092 Kross::Api::ProxyValue<Kross::KexiDB::KexiDBConnection, ::KexiDB::Connection* >,
00093 Kross::Api::ProxyValue<Kross::KexiDB::KexiDBConnectionData, ::KexiDB::ConnectionData& > >
00094 ("createConnection", driver, &::KexiDB::Driver::createConnection );
00095
00096
00097 this->addProxyFunction<
00098 Kross::Api::ProxyValue< Kross::Api::ListT<Kross::KexiDB::KexiDBConnection, ::KexiDB::Connection>, const QPtrList< ::KexiDB::Connection> > >
00099 ("connectionsList", driver, &::KexiDB::Driver::connectionsList );
00100 }
00101
00102 KexiDBDriver::~KexiDBDriver()
00103 {
00104 }
00105
00106 const QString KexiDBDriver::getClassName() const
00107 {
00108 return "Kross::KexiDB::KexiDBDriver";
00109 }
00110