Repository.mk | 13 RepositoryExternal.mk | 22 bin/distro-install-file-lists | 12 config_host.mk.in | 5 config_host/config_vclplug.h.in | 1 configure.ac | 190 connectivity/Configuration_tdeab.mk | 20 connectivity/Library_tdeab1.mk | 42 connectivity/Library_tdeabdrv1.mk | 56 connectivity/Module_connectivity.mk | 8 connectivity/registry/tdeab/org/openoffice/Office/DataAccess/Drivers.xcu | 37 connectivity/source/drivers/kab/KCatalog.cxx | 104 connectivity/source/drivers/kab/KCatalog.hxx | 55 connectivity/source/drivers/kab/KColumns.cxx | 94 connectivity/source/drivers/kab/KColumns.hxx | 48 connectivity/source/drivers/kab/KConnection.cxx | 319 - connectivity/source/drivers/kab/KConnection.hxx | 138 connectivity/source/drivers/kab/KDEInit.cxx | 149 connectivity/source/drivers/kab/KDEInit.h | 53 connectivity/source/drivers/kab/KDatabaseMetaData.cxx | 1069 ----- connectivity/source/drivers/kab/KDatabaseMetaData.hxx | 206 connectivity/source/drivers/kab/KDriver.cxx | 463 -- connectivity/source/drivers/kab/KDriver.hxx | 197 connectivity/source/drivers/kab/KPreparedStatement.cxx | 326 - connectivity/source/drivers/kab/KPreparedStatement.hxx | 114 connectivity/source/drivers/kab/KResultSet.cxx | 981 ---- connectivity/source/drivers/kab/KResultSet.hxx | 220 - connectivity/source/drivers/kab/KResultSetMetaData.cxx | 177 connectivity/source/drivers/kab/KResultSetMetaData.hxx | 84 connectivity/source/drivers/kab/KServices.cxx | 113 connectivity/source/drivers/kab/KStatement.cxx | 567 -- connectivity/source/drivers/kab/KStatement.hxx | 162 connectivity/source/drivers/kab/KTable.cxx | 81 connectivity/source/drivers/kab/KTable.hxx | 59 connectivity/source/drivers/kab/KTables.cxx | 80 connectivity/source/drivers/kab/KTables.hxx | 55 connectivity/source/drivers/kab/kcondition.cxx | 221 - connectivity/source/drivers/kab/kcondition.hxx | 154 connectivity/source/drivers/kab/kfields.cxx | 89 connectivity/source/drivers/kab/kfields.hxx | 41 connectivity/source/drivers/kab/korder.cxx | 79 connectivity/source/drivers/kab/korder.hxx | 68 connectivity/source/drivers/kab/tdeab1.component | 15 cui/Library_cui.mk | 1 cui/source/options/optgdlg.cxx | 8 desktop/Pagein_common.mk | 1 include/shell/kde_headers.h | 94 include/shell/tde_defines.h | 96 include/shell/tde_headers.h | 84 l10ntools/source/gRun.sh | 4 postprocess/CustomTarget_registry.mk | 3 postprocess/Rdb_services.mk | 6 scp2/AutoInstall.mk | 1 scp2/InstallModule_tde.mk | 18 scp2/InstallScript_setup_osl.mk | 3 scp2/Module_scp2.mk | 3 scp2/source/tde/module_tde.scp | 24 scp2/source/tde/module_tde.ulf | 17 shell/Library_tdebe.mk | 32 shell/Module_shell.mk | 6 shell/source/backends/kdebe/kdeaccess.cxx | 297 - shell/source/backends/kdebe/kdeaccess.hxx | 40 shell/source/backends/kdebe/kdebackend.cxx | 181 shell/source/backends/kdebe/tdebe1.component | 25 solenv/gbuild/CppunitTest.mk | 2 sysui/CustomTarget_share.mk | 2 vcl/CustomTarget_tde_moc.mk | 21 vcl/Executable_tdefilepicker.mk | 51 vcl/Library_vclplug_tde.mk | 86 vcl/Module_vcl.mk | 7 vcl/inc/unx/kde/kdedata.hxx | 110 vcl/unx/kde/FPServiceInfo.hxx | 42 vcl/unx/kde/UnxCommandThread.cxx | 300 - vcl/unx/kde/UnxCommandThread.hxx | 126 vcl/unx/kde/UnxFilePicker.cxx | 910 ---- vcl/unx/kde/UnxFilePicker.hxx | 165 vcl/unx/kde/UnxNotifyThread.cxx | 103 vcl/unx/kde/UnxNotifyThread.hxx | 77 vcl/unx/kde/fpicker/kdecommandthread.cxx | 185 vcl/unx/kde/fpicker/kdecommandthread.hxx | 103 vcl/unx/kde/fpicker/kdefilepicker.cxx | 806 --- vcl/unx/kde/fpicker/kdefilepicker.hxx | 138 vcl/unx/kde/fpicker/kdefpmain.cxx | 109 vcl/unx/kde/fpicker/kdemodalityfilter.cxx | 62 vcl/unx/kde/fpicker/kdemodalityfilter.hxx | 52 vcl/unx/kde/kdedata.cxx | 238 - vcl/unx/kde/salnativewidgets-kde.cxx | 2097 ---------- 87 files changed, 3 insertions(+), 13720 deletions(-)
New commits: commit 4ffdb6750fa7d656d249a745f9c6d5ba98353b14 Author: Michael Stahl <[email protected]> Date: Mon Jun 12 22:25:22 2017 +0200 remove TDE integration (vclplug, address book, config backend) It has ~no users, can't even be built on modern Linuxes, and it annoys folks who want to refactor VCL. Per ESC decision from 2017-06-08, remove --enable-tde and --enable-tdeab. Change-Id: I51ce4786f29f8fcac2e2bb2a654c41fbfbbd8afd Reviewed-on: https://gerrit.libreoffice.org/38718 Tested-by: Jenkins <[email protected]> Reviewed-by: Michael Stahl <[email protected]> diff --git a/Repository.mk b/Repository.mk index 2c2d22e443f6..4854e1e01999 100644 --- a/Repository.mk +++ b/Repository.mk @@ -258,17 +258,6 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,graphicfilter, \ graphicfilter \ )) -$(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,tde, \ - $(if $(ENABLE_TDE),tdebe1) \ - $(if $(USING_X11), \ - $(if $(ENABLE_TDE),vclplug_tde) \ - ) \ -)) - -$(eval $(call gb_Helper_register_executables_for_install,OOO,tde, \ - $(if $(ENABLE_TDE),tdefilepicker) \ -)) - $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,impress, \ animcore \ PresenterScreen \ @@ -423,8 +412,6 @@ $(eval $(call gb_Helper_register_libraries_for_install,OOOLIBS,ooo, \ svxcore \ sw \ syssh \ - $(if $(ENABLE_TDEAB),tdeab1) \ - $(if $(ENABLE_TDEAB),tdeabdrv1) \ textconversiondlgs \ textfd \ tk \ diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk index eb0b3e2c9d40..b821955f21d2 100644 --- a/RepositoryExternal.mk +++ b/RepositoryExternal.mk @@ -2975,28 +2975,6 @@ endef endif # ENABLE_KDE4 -ifeq ($(ENABLE_TDE),TRUE) - -define gb_LinkTarget__use_tde -$(call gb_LinkTarget_add_libs,$(1),\ - $(TDE_LIBS) \ -) - -$(call gb_LinkTarget_set_include,$(1),\ - $$(INCLUDE) \ - $(TDE_CFLAGS) \ -) -endef - -else # ! ENABLE_TDE - -define gb_LinkTarget__use_tde - -endef - -endif # ENABLE_TDE - - # PYTHON # extra python_headers external because pyuno wrapper must not link python ifneq ($(SYSTEM_PYTHON),) diff --git a/bin/distro-install-file-lists b/bin/distro-install-file-lists index 779ad7d6e57f..378f55ce746b 100755 --- a/bin/distro-install-file-lists +++ b/bin/distro-install-file-lists @@ -216,15 +216,6 @@ if test "z$OOO_VENDOR" != "zDebian" ; then cd $FILELISTSDIR - # tde subpackage - test -f $DESTDIR/gid_Module_Optional_Tde && cp $DESTDIR/gid_Module_Optional_Tde tde_list.txt || : - mv_file_between_flists tde_list.txt common_list.txt $INSTALLDIR/program/tdefilepicker - mv_file_between_flists tde_list.txt common_list.txt $INSTALLDIR/program/fps_tdelo.so - mv_file_between_flists tde_list.txt common_list.txt $INSTALLDIR/program/libvclplug_tdel..so - mv_file_between_flists tde_list.txt common_list.txt $INSTALLDIR/program/libtdeab1l..so - mv_file_between_flists tde_list.txt common_list.txt $INSTALLDIR/program/libtdeabdrv1l..so - add_used_directories tde_list.txt common_list.txt - # create kde4 subpackage test -f $DESTDIR/gid_Module_Optional_Kde && cp $DESTDIR/gid_Module_Optional_Kde kde4_list.txt || : mv_file_between_flists kde4_list.txt common_list.txt $INSTALLDIR/program/libvclplug_kde4l..so @@ -404,7 +395,6 @@ else create_package_directory gid_Module_Brand_Prg_Base pkg/libreoffice-base create_package_directory gid_Module_Pyuno pkg/python-uno create_package_directory gid_Module_Optional_Gnome pkg/libreoffice-gnome - create_package_directory gid_Module_Optional_Tde pkg/libreoffice-tde create_package_directory gid_Module_Root_Files_2 pkg/libreoffice-common create_package_directory gid_Module_Root_Files_3 pkg/libreoffice-common @@ -476,7 +466,7 @@ else fi && ( cd pkg/libreoffice-common/$d find -maxdepth 1 \ - -regex '\./\(.*\.so.*\|.*\.bin\|pagein\|tdefilepicker\|msfontextract\|.*\.rdb\|javaldx\|uri-encode\)' \ + -regex '\./\(.*\.so.*\|.*\.bin\|pagein\|msfontextract\|.*\.rdb\|javaldx\|uri-encode\)' \ -exec mv {} $DESTDIR/pkg/libreoffice-core/$d \; ); \ done diff --git a/config_host.mk.in b/config_host.mk.in index da45e1426271..98d3edc06be6 100644 --- a/config_host.mk.in +++ b/config_host.mk.in @@ -168,8 +168,6 @@ export ENABLE_SDREMOTE_BLUETOOTH=@ENABLE_SDREMOTE_BLUETOOTH@ export ENABLE_SILENT_MSI=@ENABLE_SILENT_MSI@ export ENABLE_SYMBOLS=@ENABLE_SYMBOLS@ export ENABLE_SYSTRAY_GTK=@ENABLE_SYSTRAY_GTK@ -export ENABLE_TDE=@ENABLE_TDE@ -export ENABLE_TDEAB=@ENABLE_TDEAB@ export ENABLE_VALGRIND=@ENABLE_VALGRIND@ export ENABLE_VLC=@ENABLE_VLC@ export ENABLE_WERROR=@ENABLE_WERROR@ @@ -562,9 +560,6 @@ export SYSTEM_WPS=@SYSTEM_WPS@ export SYSTEM_ZLIB=@SYSTEM_ZLIB@ export SYSTEM_ZMF=@SYSTEM_ZMF@ export TARFILE_LOCATION=@TARFILE_LOCATION@ -export TDE_CFLAGS=$(gb_SPACE)@TDE_CFLAGS@ -export TDE_LIBS=$(gb_SPACE)@TDE_LIBS@ -export TDE_MOC=$(gb_SPACE)@TDE_MOC@ export TESTINSTALLDIR=@TESTINSTALLDIR@ export THES_SYSTEM_DIR=@THES_SYSTEM_DIR@ export TLS=@TLS@ diff --git a/config_host/config_vclplug.h.in b/config_host/config_vclplug.h.in index 12d90ee704f6..510d0d25229c 100644 --- a/config_host/config_vclplug.h.in +++ b/config_host/config_vclplug.h.in @@ -9,6 +9,5 @@ Settings about which X11 desktops have support enabled. #define ENABLE_GTK 0 #define ENABLE_KDE4 0 -#define ENABLE_TDE 0 #endif diff --git a/configure.ac b/configure.ac index b8496c2f5fb9..d3d1542ba99e 100644 --- a/configure.ac +++ b/configure.ac @@ -640,7 +640,6 @@ solaris*) test_gtk=yes build_gstreamer_1_0=yes build_gstreamer_0_10=yes - test_tde=yes test_freetype=yes _os=SunOS @@ -668,7 +667,6 @@ linux-gnu*|k*bsd*-gnu*) test_gtk=yes build_gstreamer_1_0=yes build_gstreamer_0_10=yes - test_tde=yes test_kde4=yes if test "$enable_fuzzers" != yes; then test_freetype=yes @@ -750,7 +748,6 @@ freebsd*) test_gtk=yes build_gstreamer_1_0=yes build_gstreamer_0_10=yes - test_tde=yes test_kde4=yes test_freetype=yes AC_MSG_CHECKING([the FreeBSD operating system release]) @@ -779,7 +776,6 @@ freebsd*) test_gtk=yes build_gstreamer_1_0=yes build_gstreamer_0_10=yes - test_tde=no test_kde4=yes test_freetype=yes PTHREAD_LIBS="-pthread -lpthread" @@ -795,7 +791,6 @@ aix*) openbsd*) test_gtk=yes - test_tde=yes test_freetype=yes PTHREAD_CFLAGS="-D_THREAD_SAFE" PTHREAD_LIBS="-pthread" @@ -806,7 +801,6 @@ dragonfly*) test_gtk=yes build_gstreamer_1_0=yes build_gstreamer_0_10=yes - test_tde=yes test_kde4=yes test_freetype=yes PTHREAD_LIBS="-pthread" @@ -830,7 +824,6 @@ linux-android*) test_fontconfig=no test_freetype=no test_gtk=no - test_tde=no test_kde4=no test_randr=no test_xrender=no @@ -1263,21 +1256,6 @@ libo_FUZZ_ARG_ENABLE(gio, [Determines whether to use the GIO support.]), ,test "${enable_gio+set}" = set || enable_gio=yes) -AC_ARG_ENABLE(tde, - AS_HELP_STRING([--enable-tde], - [Determines whether to use TQt/TDE vclplug on platforms where TQt and - TDE are available.]), -,) - -AC_ARG_ENABLE(tdeab, - AS_HELP_STRING([--disable-tdeab], - [Disable the TDE address book support.]), -, - if test "$enable_tde" = "yes"; then - enable_tdeab=yes - fi -) - AC_ARG_ENABLE(kde4, AS_HELP_STRING([--enable-kde4], [Determines whether to use Qt4/KDE4 vclplug on platforms where Qt4 and @@ -4619,7 +4597,6 @@ if test "$USING_X11" != TRUE; then test_gtk=no build_gstreamer_1_0=no build_gstreamer_0_10=no - test_tde=no test_kde4=no enable_cairo_canvas=no fi @@ -9787,14 +9764,6 @@ if test "x$enable_gtk" = "xyes"; then fi AC_SUBST(ENABLE_GTK) -ENABLE_TDE="" -if test "x$enable_tde" = "xyes"; then - ENABLE_TDE="TRUE" - AC_DEFINE(ENABLE_TDE) - R="$R tde" -fi -AC_SUBST(ENABLE_TDE) - ENABLE_KDE4="" if test "x$enable_kde4" = "xyes"; then ENABLE_KDE4="TRUE" @@ -10585,7 +10554,7 @@ AC_SUBST(ENABLE_SCRIPTING_JAVASCRIPT) AC_SUBST(SYSTEM_RHINO) AC_SUBST(RHINO_JAR) -# This is only used in KDE3/KDE4/TDE checks to determine if /usr/lib64 +# This is only used in KDE3/KDE4 checks to determine if /usr/lib64 # paths should be added to library search path. So lets put all 64-bit # platforms there. supports_multilib= @@ -10600,135 +10569,6 @@ x86_64 | powerpc64 | powerpc64le | s390x | aarch64 | mips64 | mips64el) esac dnl =================================================================== -dnl Check whether the TQt and TDE libraries are available. -dnl =================================================================== - -TDE_CFLAGS="" -TDE_LIBS="" -if test "$_os" != "OpenBSD"; then - TDE_MOC="moc" -fi -if test "$test_tde" = "yes" -a "$ENABLE_TDE" = "TRUE"; then - dnl Search paths for TQt and TDE - if test -z "$supports_multilib"; then - tqt_incdirs="$QTINC /usr/local/tqt3/include /usr/include/tqt3 /usr/include /usr/X11R6/include/X11/tqt3 /usr/X11R6/include/tqt3 /usr/lib/tqt3/include /usr/lib/tqt3/include /usr/share/tqt3/include /usr/local/include/X11/tqt3 $x_includes" - tqt_libdirs="$QTLIB /usr/local/tqt3/lib /usr/lib/tqt3 /usr/lib /usr/X11R6/lib/X11/tqt3 /usr/X11R6/lib/tqt3 /usr/lib/tqt3/lib /usr/lib/tqt3/lib /usr/share/tqt3/lib /usr/local/lib/tqt3 $x_libraries" - else - tqt_incdirs="$QTINC /usr/local/tqt3/include /usr/include/tqt3 /usr/include /usr/X11R6/include/X11/tqt3 /usr/X11R6/include/tqt3 /usr/lib64/tqt3/include /usr/lib64/tqt3/include /usr/share/tqt3/include /usr/lib/tqt3/include /usr/lib/tqt3/include /usr/local/include/X11/tqt3 $x_includes" - tqt_libdirs="$QTLIB /usr/local/tqt3/lib64 /usr/lib64/tqt3 /usr/lib64 /usr/X11R6/lib64/X11/tqt3 /usr/X11R6/lib64/tqt3 /usr/lib64/tqt3/lib64 /usr/lib64/tqt3/lib64 /usr/share/tqt3/lib64 /usr/local/tqt3/lib /usr/lib/tqt3 /usr/lib /usr/X11R6/lib/X11/tqt3 /usr/X11R6/lib/tqt3 /usr/lib/tqt3/lib /usr/lib/tqt3/lib /usr/share/tqt3/lib /usr/local/lib/tqt3 $x_libraries" - fi - if test -n "$TQTDIR"; then - tqt_incdirs="$TQTDIR/include $tqt_incdirs" - if test -z "$supports_multilib"; then - tqt_libdirs="$TQTDIR/lib $tqt_libdirs" - else - tqt_libdirs="$TQTDIR/lib64 $TQTDIR/lib $tqt_libdirs" - fi - fi - if test -z "$supports_multilib"; then - tde_incdirs="/usr/lib/trinity/include /usr/local/trinity/include /usr/local/include /usr/trinity/include /usr/include/trinity /opt/trinity/include /opt/trinity/include $x_includes" - tde_libdirs="/usr/lib/trinity/lib /usr/local/trinity/lib /usr/trinity/lib /usr/lib/trinity /usr/lib/trinity /usr/X11R6/lib /usr/local/lib /opt/trinity/lib /opt/trinity/lib /usr/X11R6/trinity/lib /usr/lib $x_libraries" - else - tde_incdirs="/usr/lib64/trinity/include /usr/lib/trinity/include /usr/local/trinity/include /usr/local/include /usr/trinity/include /usr/include/trinity /opt/trinity/include /opt/trinity/include $x_includes" - tde_libdirs="/usr/lib64/trinity/lib64 /usr/local/trinity/lib64 /usr/trinity/lib64 /usr/lib64/trinity /usr/lib64/trinity /usr/X11R6/lib64 /usr/local/lib64 /opt/trinity/lib64 /opt/trinity/lib64 /usr/X11R6/trinity/lib64 /usr/lib/trinity/lib /usr/local/trinity/lib /usr/trinity/lib /usr/lib/trinity /usr/lib/trinity /usr/lib /usr/X11R6/lib /usr/local/lib /opt/trinity/lib /opt/trinity/lib /usr/X11R6/trinity/lib /usr/lib64 $x_libraries" - fi - if test -n "$TDEDIR"; then - tde_incdirs="$TDEDIR/include $tde_incdirs" - if test -z "$supports_multilib"; then - tde_libdirs="$TDEDIR/lib $tde_libdirs" - else - tde_libdirs="$TDEDIR/lib64 $TDEDIR/lib $tde_libdirs" - fi - fi - - dnl What to test - tqt_test_include="ntqstyle.h" - tde_test_include="kapp.h" - - if test "$_os" != "OpenBSD"; then - tqt_test_library="libtqt-mt.so" - tde_test_library="libDCOP.so" - else - tqt_test_library="libtqt-mt.so*" - tde_test_library="libDCOP.so*" - fi - - dnl Check for TQt headers - AC_MSG_CHECKING([for TQt headers]) - tqt_incdir="no" - for tde_check in $tqt_incdirs; do - if test -r "$tde_check/$tqt_test_include"; then - tqt_incdir="$tde_check" - break - fi - done - AC_MSG_RESULT([$tqt_incdir]) - if test "x$tqt_incdir" = "xno"; then - AC_MSG_ERROR([TQt headers not found. Please specify the root of -your TQt installation by exporting TQTDIR before running "configure".]) - fi - - dnl Check for TQt libraries - AC_MSG_CHECKING([for TQt libraries]) - tqt_libdir="no" - for tqt_check in $tqt_libdirs; do - if test -r "`ls $tqt_check/$tqt_test_library 2>/dev/null | head -1`"; then - tqt_libdir="$tqt_check" - break - fi - done - AC_MSG_RESULT([$tqt_libdir]) - if test "x$tqt_libdir" = "xno"; then - AC_MSG_ERROR([TQt libraries not found. Please specify the root of -your TQt installation by exporting TQTDIR before running "configure".]) - fi - - dnl Check for Meta Object Compiler - AC_PATH_PROG( MOC, moc, no, [`dirname $tqt_libdir`/bin:$TQTDIR/bin:$PATH] ) - if test "$MOC" = "no"; then - AC_MSG_ERROR([TQt Meta Object Compiler not found. Please specify -the root of your TQt installation by exporting TQTDIR before running "configure".]) - fi - - dnl Check for TDE headers - AC_MSG_CHECKING([for TDE headers]) - tde_incdir="no" - for tde_check in $tde_incdirs; do - if test -r "$tde_check/$tde_test_include"; then - tde_incdir="$tde_check" - break - fi - done - AC_MSG_RESULT([$tde_incdir]) - if test "x$tde_incdir" = "xno"; then - AC_MSG_ERROR([TDE headers not found. Please specify the root of -your TDE installation by exporting TDEDIR before running "configure".]) - fi - - dnl Check for TDE libraries - AC_MSG_CHECKING([for TDE libraries]) - tde_libdir="no" - for tde_check in $tde_libdirs; do - if test -r "`ls $tde_check/$tde_test_library 2>/dev/null | head -1`"; then - tde_libdir="$tde_check" - break - fi - done - AC_MSG_RESULT([$tde_libdir]) - if test "x$tde_libdir" = "xno"; then - AC_MSG_ERROR([TDE libraries not found. Please specify the root of -your TDE installation by exporting TDEDIR before running "configure".]) - fi - - dnl Set the variables - TDE_CFLAGS="-I$tqt_incdir -I$tde_incdir -I/usr/include/tqt -DQT_CLEAN_NAMESPACE -DQT_THREAD_SUPPORT" - TDE_LIBS="-L$tde_libdir -L$tqt_libdir -ltdeio -ltdeui -ltdecore -ltqt -ltqt-mt" -fi -AC_SUBST(TDE_CFLAGS) -AC_SUBST(TDE_LIBS) -AC_SUBST(TDE_MOC) - -dnl =================================================================== dnl KDE4 Integration dnl =================================================================== @@ -11030,34 +10870,6 @@ AC_SUBST(GOBJECT_CFLAGS) AC_SUBST(GOBJECT_LIBS) dnl =================================================================== -dnl Test whether to include TDE AB support -dnl =================================================================== -AC_MSG_CHECKING([whether to enable TDE address book support]) -if test "$enable_tdeab" = "yes" -a "$enable_tde" = "yes"; then - AC_MSG_RESULT([yes]) - AC_LANG_PUSH([C++]) - save_CXXFLAGS=$CXXFLAGS - CXXFLAGS="$CXXFLAGS $TDE_CFLAGS" - AC_MSG_CHECKING([whether TDE is at least R14.0]) - AC_RUN_IFELSE([AC_LANG_SOURCE([[ -#include <tdeversion.h> - -int main(int argc, char **argv) { - if (TDE_VERSION_MAJOR >= 14) return 0; - else return 1; -} - ]])],[AC_MSG_RESULT([yes])],[AC_MSG_ERROR([TDE version too old or too recent, please use another version of TDE or disable TDE address book support])], - [AC_MSG_ERROR([TDE support not tested with cross compilation])]) - CXXFLAGS=$save_CXXFLAGS - AC_LANG_POP([C++]) - ENABLE_TDEAB=TRUE -else - AC_MSG_RESULT([no]) - ENABLE_TDEAB= -fi -AC_SUBST(ENABLE_TDEAB) - -dnl =================================================================== dnl Test which themes to include dnl =================================================================== AC_MSG_CHECKING([which themes to include]) diff --git a/connectivity/Configuration_tdeab.mk b/connectivity/Configuration_tdeab.mk deleted file mode 100644 index 63162c33d9f5..000000000000 --- a/connectivity/Configuration_tdeab.mk +++ /dev/null @@ -1,20 +0,0 @@ -# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- -# -# This file is part of the LibreOffice project. -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# - -$(eval $(call gb_Configuration_Configuration,driver_tdeab)) - -$(eval $(call gb_Configuration_add_spool_modules,driver_tdeab,connectivity/registry/tdeab,\ - org/openoffice/Office/DataAccess/Drivers-tdeab.xcu \ -)) - -$(eval $(call gb_Configuration_add_localized_datas,driver_tdeab,connectivity/registry/tdeab,\ - org/openoffice/Office/DataAccess/Drivers.xcu \ -)) - -# vim: set noet sw=4 ts=4: diff --git a/connectivity/Library_tdeab1.mk b/connectivity/Library_tdeab1.mk deleted file mode 100644 index 513d095323cf..000000000000 --- a/connectivity/Library_tdeab1.mk +++ /dev/null @@ -1,42 +0,0 @@ -# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- -# -# -# This file is part of the LibreOffice project. -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# - -$(eval $(call gb_Library_Library,tdeab1)) - -$(eval $(call gb_Library_use_externals,tdeab1,\ - boost_headers \ - tde \ -)) - -$(eval $(call gb_Library_set_componentfile,tdeab1,connectivity/source/drivers/kab/tdeab1)) - -$(eval $(call gb_Library_set_include,tdeab1,\ - -I$(SRCDIR)/connectivity/source/inc \ - $$(INCLUDE) \ -)) - -$(eval $(call gb_Library_use_sdk_api,tdeab1)) - -$(eval $(call gb_Library_use_libraries,tdeab1,\ - comphelper \ - cppu \ - cppuhelper \ - dbtools \ - sal \ - salhelper \ - tl \ -)) - -$(eval $(call gb_Library_add_exception_objects,tdeab1,\ - connectivity/source/drivers/kab/KDriver \ - connectivity/source/drivers/kab/KServices \ -)) - -# vim: set noet sw=4 ts=4: diff --git a/connectivity/Library_tdeabdrv1.mk b/connectivity/Library_tdeabdrv1.mk deleted file mode 100644 index 6bcf1c42a8a1..000000000000 --- a/connectivity/Library_tdeabdrv1.mk +++ /dev/null @@ -1,56 +0,0 @@ -# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- -# -# -# This file is part of the LibreOffice project. -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# - -$(eval $(call gb_Library_Library,tdeabdrv1)) - -$(eval $(call gb_Library_set_include,tdeabdrv1,\ - -I$(SRCDIR)/connectivity/source/inc \ - $$(INCLUDE) \ - -I$(WORKDIR)/YaccTarget/connectivity/source/parse \ -)) - -$(eval $(call gb_Library_use_sdk_api,tdeabdrv1)) - -$(eval $(call gb_Library_use_externals,tdeabdrv1,\ - boost_headers \ - tde \ -)) - -$(eval $(call gb_Library_add_libs,tdeabdrv1,\ - -ltdeabc \ -)) - -$(eval $(call gb_Library_use_libraries,tdeabdrv1,\ - cppu \ - cppuhelper \ - sal \ - salhelper \ - dbtools \ - comphelper \ -)) - -$(eval $(call gb_Library_add_exception_objects,tdeabdrv1,\ - connectivity/source/drivers/kab/KColumns \ - connectivity/source/drivers/kab/KTable \ - connectivity/source/drivers/kab/KTables \ - connectivity/source/drivers/kab/KCatalog \ - connectivity/source/drivers/kab/KResultSet \ - connectivity/source/drivers/kab/KStatement \ - connectivity/source/drivers/kab/KPreparedStatement \ - connectivity/source/drivers/kab/KDatabaseMetaData \ - connectivity/source/drivers/kab/KConnection \ - connectivity/source/drivers/kab/KResultSetMetaData \ - connectivity/source/drivers/kab/kcondition \ - connectivity/source/drivers/kab/korder \ - connectivity/source/drivers/kab/kfields \ - connectivity/source/drivers/kab/KDEInit \ -)) - -# vim: set noet sw=4 ts=4: diff --git a/connectivity/Module_connectivity.mk b/connectivity/Module_connectivity.mk index 2c5904b489aa..efb057ff4ba4 100644 --- a/connectivity/Module_connectivity.mk +++ b/connectivity/Module_connectivity.mk @@ -49,14 +49,6 @@ endif ifneq ($(OS),WNT) -ifeq ($(ENABLE_TDEAB),TRUE) -$(eval $(call gb_Module_add_targets,connectivity,\ - Configuration_tdeab \ - Library_tdeab1 \ - Library_tdeabdrv1 \ -)) -endif - ifeq ($(OS),MACOSX) $(eval $(call gb_Module_add_targets,connectivity,\ Configuration_macab \ diff --git a/connectivity/registry/tdeab/org/openoffice/Office/DataAccess/Drivers.xcu b/connectivity/registry/tdeab/org/openoffice/Office/DataAccess/Drivers.xcu deleted file mode 100644 index 8ef69433ccec..000000000000 --- a/connectivity/registry/tdeab/org/openoffice/Office/DataAccess/Drivers.xcu +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . ---> -<oor:component-data oor:name="Drivers" oor:package="org.openoffice.Office.DataAccess" xmlns:install="http://openoffice.org/2004/installation" xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema"> - <node oor:name="Installed" install:module="tdeab"> - <node oor:name="sdbc:address:tdeab" oor:op="replace"> - <prop oor:name="Driver"> - <value>com.sun.star.comp.sdbc.tdeab.Driver</value> - </prop> - <prop oor:name="DriverTypeDisplayName" oor:type="xs:string"> - <value xml:lang="en-US">TDE Address Book</value> - </prop> - <node oor:name="Features"> - <node oor:name="EscapeDateTime" oor:op="replace"> - <prop oor:name="Value" oor:type="xs:boolean"> - <value>true</value> - </prop> - </node> - </node> - </node> - </node> -</oor:component-data> diff --git a/connectivity/source/drivers/kab/KCatalog.cxx b/connectivity/source/drivers/kab/KCatalog.cxx deleted file mode 100644 index 9d7926af2a8c..000000000000 --- a/connectivity/source/drivers/kab/KCatalog.cxx +++ /dev/null @@ -1,104 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - - -#include "KCatalog.hxx" -#include "KConnection.hxx" -#include "KTables.hxx" - -using namespace connectivity::kab; -using namespace ::com::sun::star::uno; -using namespace ::com::sun::star::beans; -using namespace ::com::sun::star::sdbcx; -using namespace ::com::sun::star::sdbc; -using namespace ::com::sun::star::container; -using namespace ::com::sun::star::lang; -using namespace ::cppu; - - -KabCatalog::KabCatalog(KabConnection* _pCon) - : connectivity::sdbcx::OCatalog(_pCon), - m_pConnection(_pCon) -{ -} - -void KabCatalog::refreshTables() -{ - TStringVector aVector; - Sequence< OUString > aTypes { "%" }; - Reference< XResultSet > xResult = m_xMetaData->getTables( - Any(), "%", "%", aTypes); - - if (xResult.is()) - { - Reference< XRow > xRow(xResult,UNO_QUERY); - OUString aName; - - while (xResult->next()) - { - // aName = xRow->getString(2); - // aName += sDot; - aName = xRow->getString(3); - aVector.push_back(aName); - } - } - if (m_pTables) - m_pTables->reFill(aVector); - else - m_pTables = new KabTables(m_xMetaData,*this,m_aMutex,aVector); -} - -void KabCatalog::refreshViews() -{ -} - -void KabCatalog::refreshGroups() -{ -} - -void KabCatalog::refreshUsers() -{ -} - - -// XTablesSupplier -Reference< XNameAccess > SAL_CALL KabCatalog::getTables( ) -{ - ::osl::MutexGuard aGuard(m_aMutex); - checkDisposed(rBHelper.bDisposed); - - try - { - if (!m_pTables) - refreshTables(); - } - catch( const RuntimeException& ) - { - // allowed to leave this method - throw; - } - catch( const Exception& ) - { - // allowed - } - - return m_pTables; -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/connectivity/source/drivers/kab/KCatalog.hxx b/connectivity/source/drivers/kab/KCatalog.hxx deleted file mode 100644 index d369e916e0ed..000000000000 --- a/connectivity/source/drivers/kab/KCatalog.hxx +++ /dev/null @@ -1,55 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_KAB_KCATALOG_HXX -#define INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_KAB_KCATALOG_HXX - -#include <connectivity/sdbcx/VCatalog.hxx> - -namespace connectivity -{ - namespace kab - { - class KabConnection; - - class KabCatalog : public connectivity::sdbcx::OCatalog - { - KabConnection* m_pConnection; // used to get the metadata - - public: - explicit KabCatalog(KabConnection* _pCon); - - KabConnection* getConnection() const { return m_pConnection; } - - // implementation of the pure virtual methods - virtual void refreshTables() override; - virtual void refreshViews() override; - virtual void refreshGroups() override; - virtual void refreshUsers() override; - - // XTablesSupplier - virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getTables( - ) override; - }; - } -} - -#endif // INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_KAB_KCATALOG_HXX - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/connectivity/source/drivers/kab/KColumns.cxx b/connectivity/source/drivers/kab/KColumns.cxx deleted file mode 100644 index c94726d55001..000000000000 --- a/connectivity/source/drivers/kab/KColumns.cxx +++ /dev/null @@ -1,94 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - - -#include "KColumns.hxx" -#include "KTable.hxx" -#include "KTables.hxx" -#include "KCatalog.hxx" -#include <connectivity/sdbcx/VColumn.hxx> - -using namespace connectivity::kab; -using namespace connectivity::sdbcx; -using namespace connectivity; -using namespace ::comphelper; -using namespace ::com::sun::star::uno; -using namespace ::com::sun::star::beans; -using namespace ::com::sun::star::sdbc; -using namespace ::com::sun::star::container; -using namespace ::com::sun::star::lang; - - -sdbcx::ObjectType KabColumns::createObject(const OUString& _rName) -{ - const Any aCatalog; - const OUString sCatalogName; - const OUString sSchemaName(m_pTable->getSchema()); - const OUString sTableName(m_pTable->getTableName()); - Reference< XResultSet > xResult = m_pTable->getConnection()->getMetaData()->getColumns( - aCatalog, sSchemaName, sTableName, _rName); - - sdbcx::ObjectType xRet = nullptr; - if (xResult.is()) - { - Reference< XRow > xRow(xResult,UNO_QUERY); - - while (xResult->next()) - { - if (xRow->getString(4) == _rName) - { - OColumn* pRet = new OColumn( - _rName, - xRow->getString(6), - xRow->getString(13), - xRow->getString(12), - xRow->getInt(11), - xRow->getInt(7), - xRow->getInt(9), - xRow->getInt(5), - false, - false, - false, - true, - sCatalogName, - sSchemaName, - sTableName); - xRet = pRet; - break; - } - } - } - - return xRet; -} - -void KabColumns::impl_refresh() -{ - m_pTable->refreshColumns(); -} - -KabColumns::KabColumns( KabTable* _pTable, - ::osl::Mutex& _rMutex, - const TStringVector &_rVector) - : sdbcx::OCollection(*_pTable, true, _rMutex, _rVector), - m_pTable(_pTable) -{ -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/connectivity/source/drivers/kab/KColumns.hxx b/connectivity/source/drivers/kab/KColumns.hxx deleted file mode 100644 index 887048347d42..000000000000 --- a/connectivity/source/drivers/kab/KColumns.hxx +++ /dev/null @@ -1,48 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_KAB_KCOLUMNS_HXX -#define INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_KAB_KCOLUMNS_HXX - -#include "KTable.hxx" -#include <connectivity/sdbcx/VCollection.hxx> - -namespace connectivity -{ - namespace kab - { - class KabColumns : public sdbcx::OCollection - { - protected: - KabTable* m_pTable; - - virtual sdbcx::ObjectType createObject(const OUString& _rName) override; - virtual void impl_refresh() override; - - public: - KabColumns( KabTable* _pTable, - ::osl::Mutex& _rMutex, - const TStringVector &_rVector); - }; - } -} - -#endif // INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_KAB_KCOLUMNS_HXX - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/connectivity/source/drivers/kab/KConnection.cxx b/connectivity/source/drivers/kab/KConnection.cxx deleted file mode 100644 index 0d54a1428872..000000000000 --- a/connectivity/source/drivers/kab/KConnection.cxx +++ /dev/null @@ -1,319 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - - -#include "KConnection.hxx" -#include "KDatabaseMetaData.hxx" -#include "KStatement.hxx" -#include "KPreparedStatement.hxx" -#include "KCatalog.hxx" -#include <com/sun/star/sdbc/ColumnValue.hpp> -#include <com/sun/star/sdbc/TransactionIsolation.hpp> -#include <shell/kde_headers.h> - -using namespace connectivity::kab; -using namespace com::sun::star::uno; -using namespace com::sun::star::lang; -using namespace com::sun::star::beans; -using namespace com::sun::star::sdbc; -using namespace com::sun::star::sdbcx; - -IMPLEMENT_SERVICE_INFO(KabConnection, "com.sun.star.sdbc.drivers.KabConnection", "com.sun.star.sdbc.Connection") - -KabConnection::KabConnection( - css::uno::Reference<css::uno::XComponentContext> const & componentContext, - css::uno::Reference<css::sdbc::XDriver> const & driver) - : OMetaConnection_BASE(m_aMutex), - OSubComponent<KabConnection, KabConnection_BASE>(driver, this), - m_xMetaData(nullptr), - m_pAddressBook(nullptr), - m_xComponentContext(componentContext) -{} - -KabConnection::~KabConnection() -{ - if (!isClosed()) - close(); -} - -void SAL_CALL KabConnection::release() throw() -{ - release_ChildImpl(); -} - -//TODO: is doing this after the ctor, and the manual ref counting really -// necessary? -void KabConnection::construct() -{ - osl_atomic_increment( &m_refCount ); - - // create a KDE address book object - m_pAddressBook = KABC::StdAddressBook::self(); - KABC::StdAddressBook::setAutomaticSave(false); - - osl_atomic_decrement( &m_refCount ); -} -// XServiceInfo - -Reference< XStatement > SAL_CALL KabConnection::createStatement( ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - - // create a statement - // the statement can only be executed once - Reference< XStatement > xReturn = new KabStatement(this); - m_aStatements.push_back(WeakReferenceHelper(xReturn)); - return xReturn; -} - -Reference< XPreparedStatement > SAL_CALL KabConnection::prepareStatement( const OUString& _sSql ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - - // create a statement - // the statement can only be executed more than once - Reference< XPreparedStatement > xReturn = new KabPreparedStatement(this, _sSql); - m_aStatements.push_back(WeakReferenceHelper(xReturn)); - return xReturn; -} - -Reference< XPreparedStatement > SAL_CALL KabConnection::prepareCall( const OUString& ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - - // not implemented yet :-) a task to do - return nullptr; -} - -OUString SAL_CALL KabConnection::nativeSQL( const OUString& _sSql ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - // when you need to transform SQL92 to you driver specific you can do it here - - return _sSql; -} - -void SAL_CALL KabConnection::setAutoCommit( sal_Bool ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - // here you have to set your commit mode please have a look at the jdbc documentation to get a clear explanation -} - -sal_Bool SAL_CALL KabConnection::getAutoCommit( ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - // you have to distinguish which if you are in autocommit mode or not - // at normal case true should be fine here - - return true; -} - -void SAL_CALL KabConnection::commit( ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - - // when you database does support transactions you should commit here -} - -void SAL_CALL KabConnection::rollback( ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - - // same as commit but for the other case -} - -sal_Bool SAL_CALL KabConnection::isClosed( ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - - // just simple -> we are closed when we are disposed, that means someone called dispose(); (XComponent) - return KabConnection_BASE::rBHelper.bDisposed; -} - -Reference< XDatabaseMetaData > SAL_CALL KabConnection::getMetaData( ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - - // here we have to create the class with biggest interface - // The answer is 42 :-) - Reference< XDatabaseMetaData > xMetaData = m_xMetaData; - if (!xMetaData.is()) - { - xMetaData = new KabDatabaseMetaData(this); // need the connection because it can return it - m_xMetaData = xMetaData; - } - - return xMetaData; -} - -void SAL_CALL KabConnection::setReadOnly( sal_Bool ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - - // set you connection to readonly -} - -sal_Bool SAL_CALL KabConnection::isReadOnly( ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - - // return if your connection to readonly - return false; -} - -void SAL_CALL KabConnection::setCatalog( const OUString& ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - - // if your database doesn't work with catalogs you go to next method otherwise you know what to do -} - -OUString SAL_CALL KabConnection::getCatalog( ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - - - // return your current catalog - return OUString(); -} - -void SAL_CALL KabConnection::setTransactionIsolation( sal_Int32 ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - - // set your isolation level - // please have a look at @see com.sun.star.sdbc.TransactionIsolation -} - -sal_Int32 SAL_CALL KabConnection::getTransactionIsolation( ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - - - // please have a look at @see com.sun.star.sdbc.TransactionIsolation - return TransactionIsolation::NONE; -} - -Reference< css::container::XNameAccess > SAL_CALL KabConnection::getTypeMap( ) -{ - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - - // if your driver has special database types you can return it here - - return nullptr; -} - -void SAL_CALL KabConnection::setTypeMap( const Reference< css::container::XNameAccess >& ) -{ - // the other way around -} - -// XCloseable -void SAL_CALL KabConnection::close( ) -{ - { - ::osl::MutexGuard aGuard( m_aMutex ); - checkDisposed(KabConnection_BASE::rBHelper.bDisposed); - } - dispose(); -} - -// XWarningsSupplier -Any SAL_CALL KabConnection::getWarnings( ) -{ - // when you collected some warnings -> return it - return Any(); -} - -void SAL_CALL KabConnection::clearWarnings( ) -{ - // you should clear your collected warnings here -} - -void KabConnection::disposing() -{ - // we noticed that we should be destroyed in near future so we have to dispose our statements - ::osl::MutexGuard aGuard(m_aMutex); - - for (OWeakRefArray::iterator i = m_aStatements.begin(); m_aStatements.end() != i; ++i) - { - Reference< XComponent > xComp(i->get(), UNO_QUERY); - if (xComp.is()) - xComp->dispose(); - } - m_aStatements.clear(); - - if (m_pAddressBook != nullptr) - { - KABC::StdAddressBook::close(); - m_pAddressBook = nullptr; - } - - m_xMetaData = css::uno::WeakReference< css::sdbc::XDatabaseMetaData>(); - - dispose_ChildImpl(); - KabConnection_BASE::disposing(); -} - -Reference< XTablesSupplier > SAL_CALL KabConnection::createCatalog() -{ - ::osl::MutexGuard aGuard( m_aMutex ); - - Reference< XTablesSupplier > xTab = m_xCatalog; - if (!m_xCatalog.is()) - { - KabCatalog *pCat = new KabCatalog(this); - xTab = pCat; - m_xCatalog = xTab; - } - return xTab; -} - -::KABC::AddressBook* KabConnection::getAddressBook() const -{ - return m_pAddressBook; -} - -extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * SAL_CALL -createKabConnection( - css::uno::Reference<css::uno::XComponentContext> const & componentContext, - css::uno::Reference<css::sdbc::XDriver> const & driver) -{ - rtl::Reference<KabConnection> con( - new KabConnection(componentContext, driver)); - con->construct(); - return cppu::acquire(con.get()); -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/connectivity/source/drivers/kab/KConnection.hxx b/connectivity/source/drivers/kab/KConnection.hxx deleted file mode 100644 index 0958cc1d39cb..000000000000 --- a/connectivity/source/drivers/kab/KConnection.hxx +++ /dev/null @@ -1,138 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_KAB_KCONNECTION_HXX -#define INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_KAB_KCONNECTION_HXX - -#include <map> -#include <connectivity/OSubComponent.hxx> -#include <connectivity/CommonTools.hxx> -#include <com/sun/star/lang/XServiceInfo.hpp> -#include <com/sun/star/sdbc/SQLWarning.hpp> -#include <com/sun/star/sdbc/XWarningsSupplier.hpp> -#include <com/sun/star/sdbc/XConnection.hpp> -#include <com/sun/star/sdbcx/XTablesSupplier.hpp> -#include <cppuhelper/basemutex.hxx> -#include <cppuhelper/compbase.hxx> -#include <shell/kde_headers.h> - -namespace KABC -{ - class StdAddressBook; - class AddressBook; -} -namespace com { namespace sun { namespace star { namespace sdbc { - class XDriver; -} } } } - -namespace connectivity -{ - namespace kab - { - - typedef ::cppu::WeakComponentImplHelper<css::sdbc::XConnection, - css::sdbc::XWarningsSupplier, - css::lang::XServiceInfo - > OMetaConnection_BASE; - - typedef OMetaConnection_BASE KabConnection_BASE; // implements basics and text encoding - typedef std::vector< css::uno::WeakReferenceHelper > OWeakRefArray; - - class KabConnection : public cppu::BaseMutex, - public KabConnection_BASE, - public OSubComponent<KabConnection, KabConnection_BASE> - { - friend class OSubComponent<KabConnection, KabConnection_BASE>; - - protected: - - // Data attributes - - css::uno::WeakReference< css::sdbc::XDatabaseMetaData > m_xMetaData; - - OWeakRefArray m_aStatements; // vector containing a list of all the Statement objects - // for this Connection - - ::KABC::StdAddressBook* m_pAddressBook; // the address book - css::uno::Reference<css::uno::XComponentContext> m_xComponentContext; - css::uno::Reference< css::sdbcx::XTablesSupplier> - m_xCatalog; // needed for the SQL interpreter - - public: - void construct(); - - KabConnection( - css::uno::Reference<css::uno::XComponentContext> const & - componentContext, - css::uno::Reference<css::sdbc::XDriver> const & driver); - virtual ~KabConnection() override; - - void closeAllStatements (); - - // OComponentHelper - virtual void SAL_CALL disposing() override; - - // XInterface - virtual void SAL_CALL release() throw() override; - - // XServiceInfo - DECLARE_SERVICE_INFO(); - - // XConnection - virtual css::uno::Reference< css::sdbc::XStatement > SAL_CALL createStatement( ) override; - virtual css::uno::Reference< css::sdbc::XPreparedStatement > SAL_CALL prepareStatement( const OUString& sql ) override; - virtual css::uno::Reference< css::sdbc::XPreparedStatement > SAL_CALL prepareCall( const OUString& sql ) override; - virtual OUString SAL_CALL nativeSQL( const OUString& sql ) override; - virtual void SAL_CALL setAutoCommit( sal_Bool autoCommit ) override; - virtual sal_Bool SAL_CALL getAutoCommit( ) override; - virtual void SAL_CALL commit( ) override; - virtual void SAL_CALL rollback( ) override; - virtual sal_Bool SAL_CALL isClosed( ) override; - virtual css::uno::Reference< css::sdbc::XDatabaseMetaData > SAL_CALL getMetaData( ) override; - virtual void SAL_CALL setReadOnly( sal_Bool readOnly ) override; - virtual sal_Bool SAL_CALL isReadOnly( ) override; - virtual void SAL_CALL setCatalog( const OUString& catalog ) override; - virtual OUString SAL_CALL getCatalog( ) override; - virtual void SAL_CALL setTransactionIsolation( sal_Int32 level ) override; - virtual sal_Int32 SAL_CALL getTransactionIsolation( ) override; - virtual css::uno::Reference< css::container::XNameAccess > SAL_CALL getTypeMap( ) override; - virtual void SAL_CALL setTypeMap( const css::uno::Reference< css::container::XNameAccess >& typeMap ) override; - - // XCloseable - virtual void SAL_CALL close( ) override; - - // XWarningsSupplier - virtual css::uno::Any SAL_CALL getWarnings( ) override; - virtual void SAL_CALL clearWarnings( ) override; - - // needed for the SQL interpreter - css::uno::Reference< css::sdbcx::XTablesSupplier > SAL_CALL createCatalog(); - - css::uno::Reference<css::uno::XComponentContext> - getComponentContext() const - { return m_xComponentContext; } - - ::KABC::AddressBook* getAddressBook() const; - }; - } -} - -#endif // INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_KAB_KCONNECTION_HXX - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/connectivity/source/drivers/kab/KDEInit.cxx b/connectivity/source/drivers/kab/KDEInit.cxx deleted file mode 100644 index 2d31339b6545..000000000000 --- a/connectivity/source/drivers/kab/KDEInit.cxx +++ /dev/null @@ -1,149 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#include "KDEInit.h" -#include <osl/diagnose.h> -#include <osl/process.h> - -#include <shell/kde_headers.h> - -namespace connectivity -{ - namespace kab - { - - // = KDEInit - - class KDEInit - { - private: - /// KDE application if we own it - static KApplication* s_pKApplication; - static bool s_bDidInsertCatalogue; - - public: - static void Init(); - static void Shutdown(); - }; - - - KApplication* KDEInit::s_pKApplication = nullptr; - bool KDEInit::s_bDidInsertCatalogue = false; - - - void KDEInit::Init() - { - // TODO: All this is not thread-safe - - // we create a KDE application only if it is not already done - if (KApplication::kApplication() == nullptr) - { - OSL_ENSURE(s_pKApplication == nullptr, "KDEInit::Init: inconsistency in the application pointers!"); - - char *kabargs[1] = {const_cast<char*>("libkab1")}; - KCmdLineArgs::init(1, kabargs, "KAddressBook", *kabargs, "Address Book driver", KAB_DRIVER_VERSION); - - s_pKApplication = new KApplication(false, false); - } - - /* FIXME-BCP47: what slumbering dogs may we wake up here? */ - // set language - rtl_Locale *pProcessLocale; - osl_getProcessLocale(&pProcessLocale); - // sal_Unicode and QChar are (currently) both 16 bits characters - QString aLanguage( - reinterpret_cast<QChar *>(pProcessLocale->Language->buffer), - (int) pProcessLocale->Language->length); - KGlobal::locale()->setLanguage(aLanguage); - - // load KDE address book's localized messages - KGlobal::locale()->insertCatalogue("kaddressbook"); - s_bDidInsertCatalogue = true; - } - - - void KDEInit::Shutdown() - { - if ( s_bDidInsertCatalogue ) - // this guard is necessary, since KDE 3.3 seems to crash if we remove a catalogue - // which we did not previously insert - KGlobal::locale()->removeCatalogue("kaddressbook"); - - if ( s_pKApplication != nullptr ) - { - delete s_pKApplication; - s_pKApplication = nullptr; - } - } - } -} - - -namespace -{ - double normalizeVersion( unsigned int major, unsigned int minor ) - { - return major + 1.0 * minor / 1000; - } -} - - -extern "C" SAL_DLLPUBLIC_EXPORT void SAL_CALL initKApplication() -{ - ::connectivity::kab::KDEInit::Init(); -} - - -extern "C" SAL_DLLPUBLIC_EXPORT void SAL_CALL shutdownKApplication() -{ - ::connectivity::kab::KDEInit::Shutdown(); -} - -/** checks whether the KDE version on the system we're running at is supported - by the driver - - Has to be called before any other code from this library, in particular, - it has to be called before initKApplication() - - If this function returns <code>0</code>, then no other code from this library - has to be called, else the results are unpredictable. - - @return - <ul><li><code>0</code> if the KDE version is not supported</li> - <li>a negative value if the version is too old</li> - <li>a positive value if the version is too new to know whether it works with this driver</li> - </ul> - - #i60062# -*/ -extern "C" SAL_DLLPUBLIC_EXPORT int SAL_CALL matchKDEVersion() -{ - double nMinVersion = normalizeVersion( MIN_KDE_VERSION_MAJOR, MIN_KDE_VERSION_MINOR ); - double nCurVersion = normalizeVersion( ::KDE::versionMajor(), ::KDE::versionMinor() ); - double nMaxVersion = normalizeVersion( MAX_KDE_VERSION_MAJOR, MAX_KDE_VERSION_MINOR ); - - if ( nCurVersion < nMinVersion ) - return -1; - if ( nCurVersion > nMaxVersion ) - return 1; - - return 0; -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/connectivity/source/drivers/kab/KDEInit.h b/connectivity/source/drivers/kab/KDEInit.h deleted file mode 100644 index d14447b34306..000000000000 --- a/connectivity/source/drivers/kab/KDEInit.h +++ /dev/null @@ -1,53 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_KAB_KDEINIT_H -#define INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_KAB_KDEINIT_H - -// the address book driver's version -#define KAB_DRIVER_VERSION "0.2" -#define KAB_DRIVER_VERSION_MAJOR 0 -#define KAB_DRIVER_VERSION_MINOR 2 - -#include <config_vclplug.h> - -#if ENABLE_TDE - -// the minimum TDE version which is required at runtime -#define MIN_KDE_VERSION_MAJOR 14 -#define MIN_KDE_VERSION_MINOR 0 - -#define MAX_KDE_VERSION_MAJOR 255 -#define MAX_KDE_VERSION_MINOR 255 - -#else // ENABLE_TDE - -// the minimum KDE version which is required at runtime -#define MIN_KDE_VERSION_MAJOR 3 -#define MIN_KDE_VERSION_MINOR 2 - -#define MAX_KDE_VERSION_MAJOR 3 -#define MAX_KDE_VERSION_MINOR 6 - -#endif // ENABLE_TDE - - -#endif // INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_KAB_KDEINIT_H - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/connectivity/source/drivers/kab/KDatabaseMetaData.cxx b/connectivity/source/drivers/kab/KDatabaseMetaData.cxx deleted file mode 100644 index 70bfea861bb4..000000000000 --- a/connectivity/source/drivers/kab/KDatabaseMetaData.cxx +++ /dev/null @@ -1,1069 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - - -#include "KDatabaseMetaData.hxx" -#include "kfields.hxx" -#include "KDEInit.h" -#include <shell/kde_headers.h> -#include "FDatabaseMetaDataResultSet.hxx" -#include "OTypeInfo.hxx" -#include <com/sun/star/sdbc/ColumnValue.hpp> -#include <com/sun/star/sdbc/ResultSetType.hpp> -#include <com/sun/star/sdbc/TransactionIsolation.hpp> - -using namespace connectivity::kab; -using namespace com::sun::star::uno; -using namespace com::sun::star::lang; -using namespace com::sun::star::beans; -using namespace com::sun::star::sdbc; - -KabDatabaseMetaData::KabDatabaseMetaData(KabConnection* _pCon) - : m_xConnection(_pCon), - m_bUseCatalog(true) -{ - OSL_ENSURE(_pCon,"KabDatabaseMetaData::KabDatabaseMetaData: No connection set!"); - - osl_atomic_increment( &m_refCount ); - m_bUseCatalog = !(usesLocalFiles() || usesLocalFilePerTable()); - osl_atomic_decrement( &m_refCount ); -} - -KabDatabaseMetaData::~KabDatabaseMetaData() -{ -} - -const OUString & KabDatabaseMetaData::getAddressBookTableName() -{ - static const OUString aAddressBookTableName("Address Book"); - return aAddressBookTableName; -} - -OUString SAL_CALL KabDatabaseMetaData::getCatalogSeparator( ) -{ - OUString aVal; - if (m_bUseCatalog) - { // do some special here for you database - } - - return aVal; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxBinaryLiteralLength( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxRowSize( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxCatalogNameLength( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxCharLiteralLength( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxColumnNameLength( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxColumnsInIndex( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxCursorNameLength( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxConnections( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxColumnsInTable( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxStatementLength( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxTableNameLength( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxTablesInSelect( ) -{ - // MaxTablesInSelect describes how many tables can participate in the FROM part of a given SELECT statement, - // currently, the resultset/statement implementations can cope with one table only - sal_Int32 nValue = 1; - return nValue; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::doesMaxRowSizeIncludeBlobs( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::storesLowerCaseQuotedIdentifiers( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::storesLowerCaseIdentifiers( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::storesMixedCaseQuotedIdentifiers( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::storesMixedCaseIdentifiers( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::storesUpperCaseQuotedIdentifiers( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::storesUpperCaseIdentifiers( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsAlterTableWithAddColumn( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsAlterTableWithDropColumn( ) -{ - return false; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxIndexLength( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsNonNullableColumns( ) -{ - return false; -} - -OUString SAL_CALL KabDatabaseMetaData::getCatalogTerm( ) -{ - OUString aVal; - if (m_bUseCatalog) - { - } - return aVal; -} - -OUString SAL_CALL KabDatabaseMetaData::getIdentifierQuoteString( ) -{ - // normally this is " - OUString aVal("\""); - return aVal; -} - -OUString SAL_CALL KabDatabaseMetaData::getExtraNameCharacters( ) -{ - OUString aVal; - return aVal; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsDifferentTableCorrelationNames( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::isCatalogAtStart( ) -{ - bool bValue = false; - if (m_bUseCatalog) - { - } - return bValue; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::dataDefinitionIgnoredInTransactions( ) -{ - return true; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::dataDefinitionCausesTransactionCommit( ) -{ - return true; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsDataManipulationTransactionsOnly( ) -{ - return true; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsDataDefinitionAndDataManipulationTransactions( ) -{ - return true; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsPositionedDelete( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsPositionedUpdate( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsOpenStatementsAcrossRollback( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsOpenStatementsAcrossCommit( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsOpenCursorsAcrossCommit( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsOpenCursorsAcrossRollback( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsTransactionIsolationLevel( sal_Int32 ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsSchemasInDataManipulation( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsANSI92FullSQL( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsANSI92EntryLevelSQL( ) -{ - return true; // should be supported at least -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsIntegrityEnhancementFacility( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsSchemasInIndexDefinitions( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsSchemasInTableDefinitions( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsCatalogsInTableDefinitions( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsCatalogsInIndexDefinitions( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsCatalogsInDataManipulation( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsOuterJoins( ) -{ - return false; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxStatements( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxProcedureNameLength( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxSchemaNameLength( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsTransactions( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::allProceduresAreCallable( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsStoredProcedures( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsSelectForUpdate( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::allTablesAreSelectable( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::isReadOnly( ) -{ - // for the moment, we have read-only addresses, but this might change in the future - return true; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::usesLocalFiles( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::usesLocalFilePerTable( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsTypeConversion( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::nullPlusNonNullIsNull( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsColumnAliasing( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsTableCorrelationNames( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsConvert( sal_Int32, sal_Int32 ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsExpressionsInOrderBy( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsGroupBy( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsGroupByBeyondSelect( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsGroupByUnrelated( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsMultipleTransactions( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsMultipleResultSets( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsLikeEscapeClause( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsOrderByUnrelated( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsUnion( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsUnionAll( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsMixedCaseIdentifiers( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsMixedCaseQuotedIdentifiers( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::nullsAreSortedAtEnd( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::nullsAreSortedAtStart( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::nullsAreSortedHigh( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::nullsAreSortedLow( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsSchemasInProcedureCalls( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsSchemasInPrivilegeDefinitions( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsCatalogsInProcedureCalls( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsCatalogsInPrivilegeDefinitions( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsCorrelatedSubqueries( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsSubqueriesInComparisons( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsSubqueriesInExists( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsSubqueriesInIns( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsSubqueriesInQuantifieds( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsANSI92IntermediateSQL( ) -{ - return false; -} - -OUString SAL_CALL KabDatabaseMetaData::getURL( ) -{ - // if someday we support more than the default address book, - // this method should return the URL which was used to create it - OUString aValue( "sdbc:address:kab:" ); - return aValue; -} - -OUString SAL_CALL KabDatabaseMetaData::getUserName( ) -{ - OUString aValue; - return aValue; -} - -OUString SAL_CALL KabDatabaseMetaData::getDriverName( ) -{ - OUString aValue( "kab" ); - return aValue; -} - -OUString SAL_CALL KabDatabaseMetaData::getDriverVersion() -{ - OUString aValue(KAB_DRIVER_VERSION); - return aValue; -} - -OUString SAL_CALL KabDatabaseMetaData::getDatabaseProductVersion( ) -{ - OUString aValue; - return aValue; -} - -OUString SAL_CALL KabDatabaseMetaData::getDatabaseProductName( ) -{ - OUString aValue; - return aValue; -} - -OUString SAL_CALL KabDatabaseMetaData::getProcedureTerm( ) -{ - OUString aValue; - return aValue; -} - -OUString SAL_CALL KabDatabaseMetaData::getSchemaTerm( ) -{ - OUString aValue; - return aValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getDriverMajorVersion( ) -{ - return KAB_DRIVER_VERSION_MAJOR; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getDefaultTransactionIsolation( ) -{ - return TransactionIsolation::NONE; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getDriverMinorVersion( ) -{ - return KAB_DRIVER_VERSION_MINOR; -} - -OUString SAL_CALL KabDatabaseMetaData::getSQLKeywords( ) -{ - OUString aValue; - return aValue; -} - -OUString SAL_CALL KabDatabaseMetaData::getSearchStringEscape( ) -{ - OUString aValue; - return aValue; -} - -OUString SAL_CALL KabDatabaseMetaData::getStringFunctions( ) -{ - return OUString(); -} - -OUString SAL_CALL KabDatabaseMetaData::getTimeDateFunctions( ) -{ - return OUString(); -} - -OUString SAL_CALL KabDatabaseMetaData::getSystemFunctions( ) -{ - return OUString(); -} - -OUString SAL_CALL KabDatabaseMetaData::getNumericFunctions( ) -{ - return OUString(); -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsExtendedSQLGrammar( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsCoreSQLGrammar( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsMinimumSQLGrammar( ) -{ - return true; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsFullOuterJoins( ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsLimitedOuterJoins( ) -{ - return false; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxColumnsInGroupBy( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxColumnsInOrderBy( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxColumnsInSelect( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Int32 SAL_CALL KabDatabaseMetaData::getMaxUserNameLength( ) -{ - sal_Int32 nValue = 0; // 0 means no limit - return nValue; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsResultSetType( sal_Int32 setType ) -{ - switch (setType) - { - case ResultSetType::FORWARD_ONLY: - case ResultSetType::SCROLL_INSENSITIVE: - return true; - } - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsResultSetConcurrency( sal_Int32 setType, sal_Int32 ) -{ - switch (setType) - { - case ResultSetType::FORWARD_ONLY: - case ResultSetType::SCROLL_INSENSITIVE: - return true; - } - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::ownUpdatesAreVisible( sal_Int32 ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::ownDeletesAreVisible( sal_Int32 ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::ownInsertsAreVisible( sal_Int32 ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::othersUpdatesAreVisible( sal_Int32 ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::othersDeletesAreVisible( sal_Int32 ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::othersInsertsAreVisible( sal_Int32 ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::updatesAreDetected( sal_Int32 ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::deletesAreDetected( sal_Int32 ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::insertsAreDetected( sal_Int32 ) -{ - return false; -} - -sal_Bool SAL_CALL KabDatabaseMetaData::supportsBatchUpdates( ) -{ - return false; -} - -Reference< XConnection > SAL_CALL KabDatabaseMetaData::getConnection( ) -{ - return m_xConnection.get(); -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getTableTypes( ) -{ - ::connectivity::ODatabaseMetaDataResultSet* pResult = new ::connectivity::ODatabaseMetaDataResultSet(::connectivity::ODatabaseMetaDataResultSet::eTableTypes); - Reference< XResultSet > xRef = pResult; - - static ODatabaseMetaDataResultSet::ORows aRows; - - if (aRows.empty()) - { - ODatabaseMetaDataResultSet::ORow aRow(2); - aRow[0] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[1] = new ORowSetValueDecorator(OUString("TABLE")); - aRows.push_back(aRow); - } - pResult->setRows(aRows); - return xRef; -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getTypeInfo( ) -{ - ::connectivity::ODatabaseMetaDataResultSet* pResult = new ::connectivity::ODatabaseMetaDataResultSet(::connectivity::ODatabaseMetaDataResultSet::eTypeInfo); - Reference< XResultSet > xRef = pResult; - - static ODatabaseMetaDataResultSet::ORows aRows; - if (aRows.empty()) - { - ODatabaseMetaDataResultSet::ORow aRow(19); - - aRow[0] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[1] = new ORowSetValueDecorator(OUString("CHAR")); - aRow[2] = new ORowSetValueDecorator(DataType::CHAR); - aRow[3] = new ORowSetValueDecorator((sal_Int32) 254); - aRow[4] = ODatabaseMetaDataResultSet::getQuoteValue(); - aRow[5] = ODatabaseMetaDataResultSet::getQuoteValue(); - aRow[6] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[7] = new ORowSetValueDecorator((sal_Int32) ColumnValue::NULLABLE); - aRow[8] = ODatabaseMetaDataResultSet::get1Value(); - aRow[9] = new ORowSetValueDecorator((sal_Int32) ColumnSearch::CHAR); - aRow[10] = ODatabaseMetaDataResultSet::get1Value(); - aRow[11] = ODatabaseMetaDataResultSet::get0Value(); - aRow[12] = ODatabaseMetaDataResultSet::get0Value(); - aRow[13] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[14] = ODatabaseMetaDataResultSet::get0Value(); - aRow[15] = ODatabaseMetaDataResultSet::get0Value(); - aRow[16] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[17] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[18] = new ORowSetValueDecorator((sal_Int32) 10); - aRows.push_back(aRow); -// Much more types might appear in KDE address books -// To be completed - } - pResult->setRows(aRows); - return xRef; -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getCatalogs( ) -{ - return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eCatalogs ); -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getSchemas( ) -{ - return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eSchemas ); -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getColumnPrivileges( - const Any&, const OUString&, const OUString&, - const OUString& ) -{ - return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eColumnPrivileges ); -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getColumns( - const Any&, - const OUString&, - const OUString& tableNamePattern, - const OUString& columnNamePattern) -{ - ::connectivity::ODatabaseMetaDataResultSet* pResult = new ::connectivity::ODatabaseMetaDataResultSet(::connectivity::ODatabaseMetaDataResultSet::eColumns); - Reference< XResultSet > xRef = pResult; - - ODatabaseMetaDataResultSet::ORows aRows; - - if (match(tableNamePattern, getAddressBookTableName(), '\0')) - { - ODatabaseMetaDataResultSet::ORow aRow(19); - - aRow[0] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[1] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[2] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[3] = new ORowSetValueDecorator(getAddressBookTableName()); - aRow[8] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[9] = ODatabaseMetaDataResultSet::get0Value(); - aRow[10] = new ORowSetValueDecorator((sal_Int32) 10); - aRow[11] = ODatabaseMetaDataResultSet::get1Value(); - aRow[12] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[13] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[14] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[15] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[16] = new ORowSetValueDecorator((sal_Int32) 254); - aRow[18] = new ORowSetValueDecorator(OUString("YES")); - - sal_Int32 nPosition = 1; - QString aQtName; - OUString sName; - - aQtName = ::KABC::Addressee::revisionLabel(); - sName = reinterpret_cast<const sal_Unicode *>(aQtName.ucs2()); - if (match(columnNamePattern, sName, '\0')) - { - aRow[4] = new ORowSetValueDecorator(sName); - aRow[5] = new ORowSetValueDecorator(DataType::TIMESTAMP); - aRow[6] = new ORowSetValueDecorator(OUString("TIMESTAMP")); - aRow[17] = new ORowSetValueDecorator(nPosition++); - aRows.push_back(aRow); - } - - ::KABC::Field::List aFields = ::KABC::Field::allFields(); - ::KABC::Field::List::const_iterator aField; - - for ( aField = aFields.begin(); - aField != aFields.end(); - ++aField, ++nPosition) - { - aQtName = (*aField)->label(); - sName = reinterpret_cast<const sal_Unicode *>(aQtName.ucs2()); - if (match(columnNamePattern, sName, '\0')) - { - aRow[4] = new ORowSetValueDecorator(sName); - aRow[5] = new ORowSetValueDecorator(DataType::CHAR); - aRow[6] = new ORowSetValueDecorator(OUString("CHAR")); - aRow[7] = new ORowSetValueDecorator((sal_Int32) 256); -// Might be VARCHAR and not CHAR[256]... - aRow[17] = new ORowSetValueDecorator(nPosition); - aRows.push_back(aRow); - } - } - } - pResult->setRows(aRows); - return xRef; -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getTables( - const Any&, - const OUString&, - const OUString&, - const Sequence< OUString >& types) -{ - ::connectivity::ODatabaseMetaDataResultSet* pResult = new ::connectivity::ODatabaseMetaDataResultSet(::connectivity::ODatabaseMetaDataResultSet::eTables); - Reference< XResultSet > xRef = pResult; - - // check whether we have tables in the requested types - // for the moment, we answer only the "TABLE" table type - // when no types are given at all, we return all the tables - static const OUString aTable("TABLE"); - bool bTableFound = false; - const OUString* p = types.getConstArray(), - * pEnd = p + types.getLength(); - - if (p == pEnd) - { - bTableFound = true; - } - else while (p < pEnd) - { - if (match(*p, aTable, '\0')) - { - bTableFound = true; - break; - } - p++; - } - if (!bTableFound) - return xRef; - - static ODatabaseMetaDataResultSet::ORows aRows; - - if (aRows.empty()) - { - ODatabaseMetaDataResultSet::ORow aRow(6); - - aRow[0] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[1] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[2] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[3] = new ORowSetValueDecorator(getAddressBookTableName()); - aRow[4] = new ORowSetValueDecorator(aTable); - aRow[5] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRows.push_back(aRow); - } - pResult->setRows(aRows); - return xRef; -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getProcedureColumns( - const Any&, const OUString&, - const OUString&, const OUString& ) -{ - return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eProcedureColumns ); -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getProcedures( - const Any&, const OUString&, - const OUString& ) -{ - return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eProcedures ); -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getVersionColumns( - const Any&, const OUString&, const OUString& table ) -{ - ::connectivity::ODatabaseMetaDataResultSet* pResult = new ::connectivity::ODatabaseMetaDataResultSet(::connectivity::ODatabaseMetaDataResultSet::eVersionColumns); - - Reference< XResultSet > xRef = pResult; - - ODatabaseMetaDataResultSet::ORows aRows; - - if (table == getAddressBookTableName()) - { - ODatabaseMetaDataResultSet::ORow aRow( 9 ); - QString aQtName = ::KABC::Addressee::revisionLabel(); - OUString sName = reinterpret_cast<const sal_Unicode *>(aQtName.ucs2()); - - aRow[0] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[1] = ODatabaseMetaDataResultSet::getEmptyValue(); - - aRow[2] = new ORowSetValueDecorator(sName); - aRow[3] = new ORowSetValueDecorator(DataType::TIMESTAMP); - aRow[4] = new ORowSetValueDecorator(OUString("TIMESTAMP")); - - aRow[5] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[6] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[7] = ODatabaseMetaDataResultSet::getEmptyValue(); - aRow[8] = ODatabaseMetaDataResultSet::getEmptyValue(); - - aRows.push_back(aRow); - } - pResult->setRows(aRows); - return xRef; -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getExportedKeys( - const Any&, const OUString&, const OUString& ) -{ - return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eExportedKeys ); -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getImportedKeys( - const Any&, const OUString&, const OUString& ) -{ - return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eImportedKeys ); -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getPrimaryKeys( - const Any&, const OUString&, const OUString& ) -{ - return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::ePrimaryKeys ); -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getIndexInfo( - const Any&, const OUString&, const OUString&, - sal_Bool, sal_Bool ) -{ - return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eIndexInfo ); -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getBestRowIdentifier( - const Any&, const OUString&, const OUString&, sal_Int32, - sal_Bool ) -{ - return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eBestRowIdentifier ); -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getTablePrivileges( - const Any&, const OUString&, const OUString& ) -{ - return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eTablePrivileges ); -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getCrossReference( - const Any&, const OUString&, - const OUString&, const Any&, - const OUString&, const OUString& ) -{ - return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eCrossReference ); -} - -Reference< XResultSet > SAL_CALL KabDatabaseMetaData::getUDTs( const Any&, const OUString&, const OUString&, const Sequence< sal_Int32 >& ) -{ - OSL_FAIL("Not implemented yet!"); - throw SQLException(); -} - - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/connectivity/source/drivers/kab/KDatabaseMetaData.hxx b/connectivity/source/drivers/kab/KDatabaseMetaData.hxx deleted file mode 100644 index ac896c87d582..000000000000 --- a/connectivity/source/drivers/kab/KDatabaseMetaData.hxx +++ /dev/null @@ -1,206 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_KAB_KDATABASEMETADATA_HXX -#define INCLUDED_CONNECTIVITY_SOURCE_DRIVERS_KAB_KDATABASEMETADATA_HXX - -#include "KConnection.hxx" -#include <com/sun/star/sdbc/XConnection.hpp> -#include <com/sun/star/sdbc/XDatabaseMetaData.hpp> -#include <cppuhelper/implbase.hxx> - -namespace connectivity -{ - namespace kab - { - - //************ Class: KabDatabaseMetaData - - - typedef ::cppu::WeakImplHelper< css::sdbc::XDatabaseMetaData> KabDatabaseMetaData_BASE; - - class KabDatabaseMetaData : public KabDatabaseMetaData_BASE - { - css::uno::Reference< css::sdbc::XConnection > m_xConnection; - bool m_bUseCatalog; - - public: - - explicit KabDatabaseMetaData(KabConnection* _pCon); - static const OUString & getAddressBookTableName(); - virtual ~KabDatabaseMetaData() override; - - // this interface is really BIG - // XDatabaseMetaData - virtual sal_Bool SAL_CALL allProceduresAreCallable( ) override; - virtual sal_Bool SAL_CALL allTablesAreSelectable( ) override; - virtual OUString SAL_CALL getURL( ) override; - virtual OUString SAL_CALL getUserName( ) override; - virtual sal_Bool SAL_CALL isReadOnly( ) override; - virtual sal_Bool SAL_CALL nullsAreSortedHigh( ) override; - virtual sal_Bool SAL_CALL nullsAreSortedLow( ) override; - virtual sal_Bool SAL_CALL nullsAreSortedAtStart( ) override; - virtual sal_Bool SAL_CALL nullsAreSortedAtEnd( ) override; - virtual OUString SAL_CALL getDatabaseProductName( ) override; - virtual OUString SAL_CALL getDatabaseProductVersion( ) override; - virtual OUString SAL_CALL getDriverName( ) override; - virtual OUString SAL_CALL getDriverVersion( ) override; - virtual sal_Int32 SAL_CALL getDriverMajorVersion( ) override; - virtual sal_Int32 SAL_CALL getDriverMinorVersion( ) override; - virtual sal_Bool SAL_CALL usesLocalFiles( ) override; - virtual sal_Bool SAL_CALL usesLocalFilePerTable( ) override; - virtual sal_Bool SAL_CALL supportsMixedCaseIdentifiers( ) override; - virtual sal_Bool SAL_CALL storesUpperCaseIdentifiers( ) override; - virtual sal_Bool SAL_CALL storesLowerCaseIdentifiers( ) override; - virtual sal_Bool SAL_CALL storesMixedCaseIdentifiers( ) override; - virtual sal_Bool SAL_CALL supportsMixedCaseQuotedIdentifiers( ) override; - virtual sal_Bool SAL_CALL storesUpperCaseQuotedIdentifiers( ) override; - virtual sal_Bool SAL_CALL storesLowerCaseQuotedIdentifiers( ) override; - virtual sal_Bool SAL_CALL storesMixedCaseQuotedIdentifiers( ) override; - virtual OUString SAL_CALL getIdentifierQuoteString( ) override; - virtual OUString SAL_CALL getSQLKeywords( ) override; - virtual OUString SAL_CALL getNumericFunctions( ) override; - virtual OUString SAL_CALL getStringFunctions( ) override; - virtual OUString SAL_CALL getSystemFunctions( ) override; - virtual OUString SAL_CALL getTimeDateFunctions( ) override; - virtual OUString SAL_CALL getSearchStringEscape( ) override; - virtual OUString SAL_CALL getExtraNameCharacters( ) override; - virtual sal_Bool SAL_CALL supportsAlterTableWithAddColumn( ) override; - virtual sal_Bool SAL_CALL supportsAlterTableWithDropColumn( ) override; - virtual sal_Bool SAL_CALL supportsColumnAliasing( ) override; - virtual sal_Bool SAL_CALL nullPlusNonNullIsNull( ) override; - virtual sal_Bool SAL_CALL supportsTypeConversion( ) override; - virtual sal_Bool SAL_CALL supportsConvert( sal_Int32 fromType, sal_Int32 toType ) override; - virtual sal_Bool SAL_CALL supportsTableCorrelationNames( ) override; - virtual sal_Bool SAL_CALL supportsDifferentTableCorrelationNames( ) override; - virtual sal_Bool SAL_CALL supportsExpressionsInOrderBy( ) override; - virtual sal_Bool SAL_CALL supportsOrderByUnrelated( ) override; - virtual sal_Bool SAL_CALL supportsGroupBy( ) override; - virtual sal_Bool SAL_CALL supportsGroupByUnrelated( ) override; - virtual sal_Bool SAL_CALL supportsGroupByBeyondSelect( ) override; - virtual sal_Bool SAL_CALL supportsLikeEscapeClause( ) override; - virtual sal_Bool SAL_CALL supportsMultipleResultSets( ) override; - virtual sal_Bool SAL_CALL supportsMultipleTransactions( ) override; - virtual sal_Bool SAL_CALL supportsNonNullableColumns( ) override; - virtual sal_Bool SAL_CALL supportsMinimumSQLGrammar( ) override; - virtual sal_Bool SAL_CALL supportsCoreSQLGrammar( ) override; - virtual sal_Bool SAL_CALL supportsExtendedSQLGrammar( ) override; - virtual sal_Bool SAL_CALL supportsANSI92EntryLevelSQL( ) override; - virtual sal_Bool SAL_CALL supportsANSI92IntermediateSQL( ) override; - virtual sal_Bool SAL_CALL supportsANSI92FullSQL( ) override; - virtual sal_Bool SAL_CALL supportsIntegrityEnhancementFacility( ) override; - virtual sal_Bool SAL_CALL supportsOuterJoins( ) override; - virtual sal_Bool SAL_CALL supportsFullOuterJoins( ) override; - virtual sal_Bool SAL_CALL supportsLimitedOuterJoins( ) override; - virtual OUString SAL_CALL getSchemaTerm( ) override; - virtual OUString SAL_CALL getProcedureTerm( ) override; - virtual OUString SAL_CALL getCatalogTerm( ) override; - virtual sal_Bool SAL_CALL isCatalogAtStart( ) override; - virtual OUString SAL_CALL getCatalogSeparator( ) override; - virtual sal_Bool SAL_CALL supportsSchemasInDataManipulation( ) override; - virtual sal_Bool SAL_CALL supportsSchemasInProcedureCalls( ) override; - virtual sal_Bool SAL_CALL supportsSchemasInTableDefinitions( ) override; - virtual sal_Bool SAL_CALL supportsSchemasInIndexDefinitions( ) override; - virtual sal_Bool SAL_CALL supportsSchemasInPrivilegeDefinitions( ) override; - virtual sal_Bool SAL_CALL supportsCatalogsInDataManipulation( ) override; - virtual sal_Bool SAL_CALL supportsCatalogsInProcedureCalls( ) override; - virtual sal_Bool SAL_CALL supportsCatalogsInTableDefinitions( ) override; - virtual sal_Bool SAL_CALL supportsCatalogsInIndexDefinitions( ) override; - virtual sal_Bool SAL_CALL supportsCatalogsInPrivilegeDefinitions( ) override; - virtual sal_Bool SAL_CALL supportsPositionedDelete( ) override; - virtual sal_Bool SAL_CALL supportsPositionedUpdate( ) override; - virtual sal_Bool SAL_CALL supportsSelectForUpdate( ) override; - virtual sal_Bool SAL_CALL supportsStoredProcedures( ) override; - virtual sal_Bool SAL_CALL supportsSubqueriesInComparisons( ) override; - virtual sal_Bool SAL_CALL supportsSubqueriesInExists( ) override; - virtual sal_Bool SAL_CALL supportsSubqueriesInIns( ) override; - virtual sal_Bool SAL_CALL supportsSubqueriesInQuantifieds( ) override; - virtual sal_Bool SAL_CALL supportsCorrelatedSubqueries( ) override; - virtual sal_Bool SAL_CALL supportsUnion( ) override; - virtual sal_Bool SAL_CALL supportsUnionAll( ) override; - virtual sal_Bool SAL_CALL supportsOpenCursorsAcrossCommit( ) override; - virtual sal_Bool SAL_CALL supportsOpenCursorsAcrossRollback( ) override; - virtual sal_Bool SAL_CALL supportsOpenStatementsAcrossCommit( ) override; - virtual sal_Bool SAL_CALL supportsOpenStatementsAcrossRollback( ) override; - virtual sal_Int32 SAL_CALL getMaxBinaryLiteralLength( ) override; - virtual sal_Int32 SAL_CALL getMaxCharLiteralLength( ) override; - virtual sal_Int32 SAL_CALL getMaxColumnNameLength( ) override; - virtual sal_Int32 SAL_CALL getMaxColumnsInGroupBy( ) override; - virtual sal_Int32 SAL_CALL getMaxColumnsInIndex( ) override; - virtual sal_Int32 SAL_CALL getMaxColumnsInOrderBy( ) override; - virtual sal_Int32 SAL_CALL getMaxColumnsInSelect( ) override; - virtual sal_Int32 SAL_CALL getMaxColumnsInTable( ) override; - virtual sal_Int32 SAL_CALL getMaxConnections( ) override; - virtual sal_Int32 SAL_CALL getMaxCursorNameLength( ) override; - virtual sal_Int32 SAL_CALL getMaxIndexLength( ) override; - virtual sal_Int32 SAL_CALL getMaxSchemaNameLength( ) override; - virtual sal_Int32 SAL_CALL getMaxProcedureNameLength( ) override; - virtual sal_Int32 SAL_CALL getMaxCatalogNameLength( ) override; - virtual sal_Int32 SAL_CALL getMaxRowSize( ) override; - virtual sal_Bool SAL_CALL doesMaxRowSizeIncludeBlobs( ) override; - virtual sal_Int32 SAL_CALL getMaxStatementLength( ) override; - virtual sal_Int32 SAL_CALL getMaxStatements( ) override; - virtual sal_Int32 SAL_CALL getMaxTableNameLength( ) override; - virtual sal_Int32 SAL_CALL getMaxTablesInSelect( ) override; - virtual sal_Int32 SAL_CALL getMaxUserNameLength( ) override; - virtual sal_Int32 SAL_CALL getDefaultTransactionIsolation( ) override; - virtual sal_Bool SAL_CALL supportsTransactions( ) override; - virtual sal_Bool SAL_CALL supportsTransactionIsolationLevel( sal_Int32 level ) override; - virtual sal_Bool SAL_CALL supportsDataDefinitionAndDataManipulationTransactions( ) override; - virtual sal_Bool SAL_CALL supportsDataManipulationTransactionsOnly( ) override; - virtual sal_Bool SAL_CALL dataDefinitionCausesTransactionCommit( ) override; - virtual sal_Bool SAL_CALL dataDefinitionIgnoredInTransactions( ) override; - virtual css::uno::Reference< css::sdbc::XResultSet > SAL_CALL getProcedures( const css::uno::Any& catalog, const OUString& schemaPattern, const OUString& procedureNamePattern ) override; - virtual css::uno::Reference< css::sdbc::XResultSet > SAL_CALL getProcedureColumns( const css::uno::Any& catalog, const OUString& schemaPattern, const OUString& procedureNamePattern, const OUString& columnNamePattern ) override; - virtual css::uno::Reference< css::sdbc::XResultSet > SAL_CALL getTables( const css::uno::Any& catalog, const OUString& schemaPattern, const OUString& tableNamePattern, const css::uno::Sequence< OUString >& types ) override; - virtual css::uno::Reference< css::sdbc::XResultSet > SAL_CALL getSchemas( ) override; - virtual css::uno::Reference< css::sdbc::XResultSet > SAL_CALL getCatalogs( ) override; - virtual css::uno::Reference< css::sdbc::XResultSet > SAL_CALL getTableTypes( ) override; - virtual css::uno::Reference< css::sdbc::XResultSet > SAL_CALL getColumns( const css::uno::Any& catalog, const OUString& schemaPattern, const OUString& tableNamePattern, const OUString& columnNamePattern ) override; - virtual css::uno::Reference< css::sdbc::XResultSet > SAL_CALL getColumnPrivileges( const css::uno::Any& catalog, const OUString& schema, const OUString& table, const OUString& columnNamePattern ) override; - virtual css::uno::Reference< css::sdbc::XResultSet > SAL_CALL getTablePrivileges( const css::uno::Any& catalog, const OUString& schemaPattern, const OUString& tableNamePattern ) override; - virtual css::uno::Reference< css::sdbc::XResultSet > SAL_CALL getBestRowIdentifier( const css::uno::Any& catalog, const OUString& schema, const OUString& table, sal_Int32 scope, sal_Bool nullable ) override; - virtual css::uno::Reference< css::sdbc::XResultSet > SAL_CALL getVersionColumns( const css::uno::Any& catalog, const OUString& schema, const OUString& table ) override; - virtual css::uno::Reference< css::sdbc::XResultSet > SAL_CALL getPrimaryKeys( const css::uno::Any& catalog, const OUString& schema, const OUString& table ) override; ... etc. - the rest is truncated _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
