30#include <com/sun/star/sdbc/ColumnSearch.hpp>
31#include <com/sun/star/sdbc/ColumnValue.hpp>
32#include <com/sun/star/sdbc/ResultSetType.hpp>
33#include <com/sun/star/sdbc/SQLException.hpp>
34#include <com/sun/star/sdbc/TransactionIsolation.hpp>
49 OSL_ENSURE(_pCon,
"MacabDatabaseMetaData::MacabDatabaseMetaData: No connection set!");
532 return "sdbc:address:macab:";
577 return TransactionIsolation::NONE;
664 case ResultSetType::FORWARD_ONLY:
665 case ResultSetType::SCROLL_INSENSITIVE:
675 case ResultSetType::FORWARD_ONLY:
676 case ResultSetType::SCROLL_INSENSITIVE:
743 static constexpr OUStringLiteral aTable =
u"TABLE";
751 pResult->setRows(std::vector(aRows));
808 pResult->setRows(std::vector(aRows));
823 const Any&,
const OUString&,
const OUString&,
832 const OUString& tableNamePattern,
833 const OUString& columnNamePattern)
839 aRecords =
m_xConnection->getAddressBook()->getMacabRecordsMatch(tableNamePattern);
842 if(aRecords !=
nullptr)
845 sTableName = aRecords->
getName();
864 sal_Int32 nPosition = 1;
869 for ( aField = aHeader->
begin();
870 aField != aHeader->
end();
871 ++aField, ++nPosition)
879 switch((*aField)->type)
881 case kABStringProperty:
885 aRows.push_back(aRow);
887 case kABDateProperty:
890 aRows.push_back(aRow);
892 case kABIntegerProperty:
896 aRows.push_back(aRow);
898 case kABRealProperty:
902 aRows.push_back(aRow);
911 pResult->setRows(std::move(aRows));
926 static constexpr OUStringLiteral aTable =
u"TABLE";
927 bool bTableFound =
false;
928 const OUString*
p = types.getConstArray(),
929 * pEnd =
p + types.getLength();
935 else while (
p < pEnd)
937 if (
match(*
p, aTable,
'\0'))
953 std::vector<MacabGroup *> xGroups =
m_xConnection->getAddressBook()->getMacabGroups();
954 sal_Int32
i, nGroups;
955 nGroups = xGroups.size();
965 for(
i = 0;
i < nGroups;
i++)
972 pResult->setRows(std::vector(aRows));
977 const Any&,
const OUString&,
978 const OUString&,
const OUString& )
984 const Any&,
const OUString&,
991 const Any&,
const OUString&,
const OUString& table )
1014 aRows.push_back(aRow);
1016 pResult->setRows(std::move(aRows));
1021 const Any&,
const OUString&,
const OUString& )
1027 const Any&,
const OUString&,
const OUString& )
1033 const Any&,
const OUString&,
const OUString& )
1039 const Any&,
const OUString&,
const OUString&,
1046 const Any&,
const OUString&,
const OUString&, sal_Int32,
1053 const Any&,
const OUString&,
const OUString& )
1059 const Any&,
const OUString&,
1060 const OUString&,
const Any&,
1061 const OUString&,
const OUString& )
1068 OSL_FAIL(
"Not implemented yet!");
1069 throw SQLException();
#define MACAB_DRIVER_VERSION
#define MACAB_DRIVER_VERSION_MINOR
#define MACAB_DRIVER_VERSION_MAJOR
ORowSetValueDecorator decorates an ORowSetValue so the value is "refcounted".
OUString const & getName() const
MacabHeader * getHeader() const
OUString CFStringToOUString(const CFStringRef sOrig)
bool match(const sal_Unicode *pWild, const sal_Unicode *pStr, const sal_Unicode cEscape)
Reference< XConnection > m_xConnection