diff options
author | Noel Grandin <noel@peralex.com> | 2012-09-18 09:46:34 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2012-09-27 15:03:32 +0200 |
commit | 9c00e38b431b57c3760f6c0aa774424b3239eeda (patch) | |
tree | bfe1bdd57d15eafb617028243cf4ea892016a137 /sc | |
parent | 8c20367a2e6d61f830f6dc336761909e38a6bcca (diff) |
fdo#46808, Adapt sdb::DatabaseContext UNO service to new style
Create a merged XDatabaseContext interface for this service to implement.
Which is backwards-compatible, but does not require creating a new service.
Quite a few IDL files had to be marked as published for this to work.
Change-Id: Ie9a0da88d8c33cc83fc9d2334ff83ab2744c222f
Diffstat (limited to 'sc')
-rw-r--r-- | sc/source/ui/dbgui/dapidata.cxx | 30 |
1 files changed, 11 insertions, 19 deletions
diff --git a/sc/source/ui/dbgui/dapidata.cxx b/sc/source/ui/dbgui/dapidata.cxx index 1f482031f9a0..862698318895 100644 --- a/sc/source/ui/dbgui/dapidata.cxx +++ b/sc/source/ui/dbgui/dapidata.cxx @@ -39,6 +39,7 @@ #include <com/sun/star/sheet/DataImportMode.hpp> #include <com/sun/star/lang/XMultiServiceFactory.hpp> #include <com/sun/star/sdbcx/XTablesSupplier.hpp> +#include <com/sun/star/sdb/DatabaseContext.hpp> #include <com/sun/star/sdb/XQueriesSupplier.hpp> #include <com/sun/star/sdb/XCompletedConnection.hpp> @@ -53,7 +54,6 @@ using namespace com::sun::star; //------------------------------------------------------------------------- -#define DP_SERVICE_DBCONTEXT "com.sun.star.sdb.DatabaseContext" #define SC_SERVICE_INTHANDLER "com.sun.star.task.InteractionHandler" // entries in the "type" ListBox @@ -86,20 +86,15 @@ ScDataPilotDatabaseDlg::ScDataPilotDatabaseDlg( Window* pParent ) : { // get database names - uno::Reference<container::XNameAccess> xContext( - comphelper::getProcessServiceFactory()->createInstance( - rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( DP_SERVICE_DBCONTEXT )) ), - uno::UNO_QUERY); - if (xContext.is()) + uno::Reference<sdb::XDatabaseContext> xContext = sdb::DatabaseContext::create( + comphelper::getProcessComponentContext() ); + uno::Sequence<rtl::OUString> aNames = xContext->getElementNames(); + long nCount = aNames.getLength(); + const rtl::OUString* pArray = aNames.getConstArray(); + for (long nPos = 0; nPos < nCount; nPos++) { - uno::Sequence<rtl::OUString> aNames = xContext->getElementNames(); - long nCount = aNames.getLength(); - const rtl::OUString* pArray = aNames.getConstArray(); - for (long nPos = 0; nPos < nCount; nPos++) - { - String aName = pArray[nPos]; - aLbDatabase.InsertEntry( aName ); - } + String aName = pArray[nPos]; + aLbDatabase.InsertEntry( aName ); } } catch(uno::Exception&) @@ -161,11 +156,8 @@ void ScDataPilotDatabaseDlg::FillObjects() { // open connection (for tables or queries) - uno::Reference<container::XNameAccess> xContext( - comphelper::getProcessServiceFactory()->createInstance( - rtl::OUString(RTL_CONSTASCII_USTRINGPARAM( DP_SERVICE_DBCONTEXT )) ), - uno::UNO_QUERY); - if ( !xContext.is() ) return; + uno::Reference<sdb::XDatabaseContext> xContext = sdb::DatabaseContext::create( + comphelper::getProcessComponentContext() ); uno::Any aSourceAny = xContext->getByName( aDatabaseName ); uno::Reference<sdb::XCompletedConnection> xSource( |