summaryrefslogtreecommitdiff
path: root/svx/source/cui/dbregisterednamesconfig.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'svx/source/cui/dbregisterednamesconfig.cxx')
-rw-r--r--svx/source/cui/dbregisterednamesconfig.cxx152
1 files changed, 0 insertions, 152 deletions
diff --git a/svx/source/cui/dbregisterednamesconfig.cxx b/svx/source/cui/dbregisterednamesconfig.cxx
deleted file mode 100644
index e039448952d3..000000000000
--- a/svx/source/cui/dbregisterednamesconfig.cxx
+++ /dev/null
@@ -1,152 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2008 by Sun Microsystems, Inc.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * $RCSfile: dbregisterednamesconfig.cxx,v $
- * $Revision: 1.10 $
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_svx.hxx"
-
-#ifdef SVX_DLLIMPLEMENTATION
-#undef SVX_DLLIMPLEMENTATION
-#endif
-
-#include "connpooloptions.hxx"
-#include "dbregisterednamesconfig.hxx"
-#include "dbregistersettings.hxx"
-#include "svx/svxids.hrc"
-
-#include <com/sun/star/container/XNameAccess.hpp>
-#include <com/sun/star/sdb/XDatabaseRegistrations.hpp>
-
-#include <comphelper/componentcontext.hxx>
-#include <comphelper/extract.hxx>
-#include <comphelper/processfactory.hxx>
-#include <svtools/eitem.hxx>
-#include <svtools/itemset.hxx>
-#include <svtools/pathoptions.hxx>
-#include <tools/diagnose_ex.h>
-#include <unotools/confignode.hxx>
-
-//........................................................................
-namespace svx
-{
-//........................................................................
-
- using namespace ::utl;
- using namespace ::com::sun::star::uno;
- using namespace ::com::sun::star::sdb;
- using namespace ::com::sun::star::container;
-
- //====================================================================
- //= DbRegisteredNamesConfig
- //====================================================================
- //--------------------------------------------------------------------
- void DbRegisteredNamesConfig::GetOptions( SfxItemSet& _rFillItems )
- {
- DatabaseRegistrations aSettings;
-
- try
- {
- ::comphelper::ComponentContext aContext( ::comphelper::getProcessServiceFactory() );
- Reference< XDatabaseRegistrations > xRegistrations(
- aContext.createComponent( "com.sun.star.sdb.DatabaseContext" ), UNO_QUERY_THROW );
-
- Sequence< ::rtl::OUString > aRegistrationNames( xRegistrations->getRegistrationNames() );
- const ::rtl::OUString* pRegistrationName = aRegistrationNames.getConstArray();
- const ::rtl::OUString* pRegistrationNamesEnd = pRegistrationName + aRegistrationNames.getLength();
- for ( ; pRegistrationName != pRegistrationNamesEnd; ++pRegistrationName )
- {
- ::rtl::OUString sLocation( xRegistrations->getDatabaseLocation( *pRegistrationName ) );
- aSettings[ *pRegistrationName ] =
- DatabaseRegistration( sLocation, xRegistrations->isDatabaseRegistrationReadOnly( *pRegistrationName ) );
- }
- }
- catch( const Exception& )
- {
- DBG_UNHANDLED_EXCEPTION();
- }
-
- _rFillItems.Put( DatabaseMapItem( SID_SB_DB_REGISTER, aSettings ) );
- }
-
- //--------------------------------------------------------------------
- void DbRegisteredNamesConfig::SetOptions(const SfxItemSet& _rSourceItems)
- {
- // the settings for the single drivers
- SFX_ITEMSET_GET( _rSourceItems, pRegistrations, DatabaseMapItem, SID_SB_DB_REGISTER, sal_True );
- if ( !pRegistrations )
- return;
-
- try
- {
- ::comphelper::ComponentContext aContext( ::comphelper::getProcessServiceFactory() );
- Reference< XDatabaseRegistrations > xRegistrations(
- aContext.createComponent( "com.sun.star.sdb.DatabaseContext" ), UNO_QUERY_THROW );
-
- const DatabaseRegistrations& rNewRegistrations = pRegistrations->getRegistrations();
- for ( DatabaseRegistrations::const_iterator reg = rNewRegistrations.begin();
- reg != rNewRegistrations.end();
- ++reg
- )
- {
- const ::rtl::OUString sName = reg->first;
- const ::rtl::OUString sLocation = reg->second.sLocation;
-
- if ( xRegistrations->hasRegisteredDatabase( sName ) )
- {
- if ( !xRegistrations->isDatabaseRegistrationReadOnly( sName ) )
- xRegistrations->changeDatabaseLocation( sName, sLocation );
- else
- {
- OSL_ENSURE( xRegistrations->getDatabaseLocation( sName ) == sLocation,
- "DbRegisteredNamesConfig::SetOptions: somebody changed a read-only registration. How unrespectful." );
- }
- }
- else
- xRegistrations->registerDatabaseLocation( sName, sLocation );
- }
-
- // delete unused entries
- Sequence< ::rtl::OUString > aRegistrationNames = xRegistrations->getRegistrationNames();
- const ::rtl::OUString* pRegistrationName = aRegistrationNames.getConstArray();
- const ::rtl::OUString* pRegistrationNamesEnd = pRegistrationName + aRegistrationNames.getLength();
- for ( ; pRegistrationName != pRegistrationNamesEnd; ++pRegistrationName )
- {
- if ( rNewRegistrations.find( *pRegistrationName ) == rNewRegistrations.end() )
- xRegistrations->revokeDatabaseLocation( *pRegistrationName );
- }
- }
- catch( const Exception& )
- {
- DBG_UNHANDLED_EXCEPTION();
- }
- }
-
-//........................................................................
-} // namespace svx
-//........................................................................