1 /************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 24 // MARKER(update_precomp.py): autogen include statement, do not remove 25 #include "precompiled_dbaccess.hxx" 26 27 #ifndef _CPPUHELPER_FACTORY_HXX_ 28 #include <cppuhelper/factory.hxx> 29 #endif 30 #ifndef _OSL_DIAGNOSE_H_ 31 #include <osl/diagnose.h> 32 #endif 33 #ifndef _DBU_REGHELPER_HXX_ 34 #include "dbu_reghelper.hxx" 35 #endif 36 #ifndef INCLUDED_DBACCESSDLLAPI_H 37 #include "dbaccessdllapi.h" 38 #endif 39 40 /********************************************************************************************/ 41 42 using namespace ::dbaui; 43 using namespace ::com::sun::star::uno; 44 using namespace ::com::sun::star::lang; 45 using namespace ::com::sun::star::registry; 46 47 //*************************************************************************************** 48 // 49 // registry functions 50 extern "C" void SAL_CALL createRegistryInfo_OTableFilterDialog(); 51 extern "C" void SAL_CALL createRegistryInfo_ODataSourcePropertyDialog(); 52 extern "C" void SAL_CALL createRegistryInfo_OSQLMessageDialog(); 53 extern "C" void SAL_CALL createRegistryInfo_OBrowser(); 54 extern "C" void SAL_CALL createRegistryInfo_OFormGridView(); 55 extern "C" void SAL_CALL createRegistryInfo_DBContentLoader(); 56 extern "C" void SAL_CALL writeDBLoaderInfo(void* pRegistryKey); 57 extern "C" void SAL_CALL createRegistryInfo_OInteractionHandler(); 58 extern "C" void SAL_CALL createRegistryInfo_SbaXGridControl(); 59 extern "C" void SAL_CALL createRegistryInfo_OQueryControl(); 60 extern "C" void SAL_CALL createRegistryInfo_OViewControl(); 61 extern "C" void SAL_CALL createRegistryInfo_OTableControl(); 62 extern "C" void SAL_CALL createRegistryInfo_ORelationControl(); 63 extern "C" void SAL_CALL createRegistryInfo_ComposerDialogs(); 64 extern "C" void SAL_CALL createRegistryInfo_ODBApplication(); 65 extern "C" void SAL_CALL createRegistryInfo_ODirectSQLDialog(); 66 extern "C" void SAL_CALL createRegistryInfo_OAdvancedSettingsDialog(); 67 extern "C" void SAL_CALL createRegistryInfo_ODBTypeWizDialog(); 68 extern "C" void SAL_CALL createRegistryInfo_OUserSettingsDialog(); 69 extern "C" void SAL_CALL createRegistryInfo_ODBTypeWizDialogSetup(); 70 extern "C" void SAL_CALL createRegistryInfo_OColumnControlModel(); 71 extern "C" void SAL_CALL createRegistryInfo_OColumnControl(); 72 extern "C" void SAL_CALL createRegistryInfo_OToolboxController(); 73 extern "C" void SAL_CALL createRegistryInfo_CopyTableWizard(); 74 extern "C" void SAL_CALL createRegistryInfo_OTextConnectionSettingsDialog(); 75 76 //*************************************************************************************** 77 extern "C" void SAL_CALL createRegistryInfo_DBU() 78 { 79 static sal_Bool bInit = sal_False; 80 if (!bInit) 81 { 82 createRegistryInfo_OTableFilterDialog(); 83 createRegistryInfo_ODataSourcePropertyDialog(); 84 createRegistryInfo_OSQLMessageDialog(); 85 createRegistryInfo_OBrowser(); 86 createRegistryInfo_OFormGridView(); 87 createRegistryInfo_DBContentLoader(); 88 createRegistryInfo_OInteractionHandler(); 89 createRegistryInfo_SbaXGridControl(); 90 createRegistryInfo_OQueryControl(); 91 createRegistryInfo_OViewControl(); 92 createRegistryInfo_OTableControl(); 93 createRegistryInfo_ORelationControl(); 94 createRegistryInfo_ComposerDialogs(); 95 createRegistryInfo_ODBApplication(); 96 createRegistryInfo_ODirectSQLDialog(); 97 createRegistryInfo_OAdvancedSettingsDialog(); 98 createRegistryInfo_ODBTypeWizDialog(); 99 createRegistryInfo_ODBTypeWizDialogSetup(); 100 createRegistryInfo_OUserSettingsDialog(); 101 createRegistryInfo_OColumnControlModel(); 102 createRegistryInfo_OColumnControl(); 103 createRegistryInfo_OToolboxController(); 104 createRegistryInfo_CopyTableWizard(); 105 createRegistryInfo_OTextConnectionSettingsDialog(); 106 bInit = sal_True; 107 } 108 } 109 110 //--------------------------------------------------------------------------------------- 111 112 extern "C" DBACCESS_DLLPUBLIC void SAL_CALL component_getImplementationEnvironment( 113 const sal_Char **ppEnvTypeName, 114 uno_Environment ** 115 ) 116 { 117 createRegistryInfo_DBU(); 118 *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME; 119 } 120 121 //--------------------------------------------------------------------------------------- 122 extern "C" DBACCESS_DLLPUBLIC void* SAL_CALL component_getFactory( 123 const sal_Char* pImplementationName, 124 void* pServiceManager, 125 void* /*pRegistryKey*/) 126 { 127 Reference< XInterface > xRet; 128 if (pServiceManager && pImplementationName) 129 { 130 xRet = ::dbaui::OModuleRegistration::getComponentFactory( 131 ::rtl::OUString::createFromAscii(pImplementationName), 132 static_cast< XMultiServiceFactory* >(pServiceManager)); 133 } 134 135 if (xRet.is()) 136 xRet->acquire(); 137 return xRet.get(); 138 }; 139