summaryrefslogtreecommitdiff
path: root/stoc/source/bootstrap
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2007-09-27 11:56:37 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2007-09-27 11:56:37 +0000
commit71d49cb1d9d614eeb4fffdbf2a1d1f5d7f20bd8d (patch)
treea4f64545e1d6a94a6eca7d584eeeaaac7dceecca /stoc/source/bootstrap
parent42b632cbecc710d0e264ef51142766f2b4dc027c (diff)
INTEGRATION: CWS sb76 (1.1.2); FILE ADDED
2007/08/31 11:26:51 sb 1.1.2.1: #i77885# Consolidate stoc libraries; patch by jnavrati.
Diffstat (limited to 'stoc/source/bootstrap')
-rw-r--r--stoc/source/bootstrap/bootstrap.xml358
-rw-r--r--stoc/source/bootstrap/services.cxx155
2 files changed, 513 insertions, 0 deletions
diff --git a/stoc/source/bootstrap/bootstrap.xml b/stoc/source/bootstrap/bootstrap.xml
new file mode 100644
index 000000000000..3a90bbdccf71
--- /dev/null
+++ b/stoc/source/bootstrap/bootstrap.xml
@@ -0,0 +1,358 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE module-description PUBLIC "-//StarOffice//DTD ComponentDescription 1.0//EN" "module-description.dtd">
+<module-description xmlns:xlink="http://www.w3.org/1999/xlink">
+ <module-name> bootstrap.uno </module-name>
+ <component-description>
+ <author> Juergen Schmidt </author>
+ <name> com.sun.star.comp.stoc.DLLComponentLoader </name>
+ <description>
+ This component provides a mechanism to load an external compoment implemented as
+ a shared library.
+</description>
+ <loader-name> com.sun.star.loader.SharedLibrary </loader-name>
+ <language> c++ </language>
+ <status value="final"/>
+ <supported-service> com.sun.star.loader.SharedLibrary </supported-service>
+ <type> com.sun.star.util.XMacroExpander </type>
+ <type> com.sun.star.loader.XImplementationLoader </type>
+ <type> com.sun.star.lang.IllegalArgumentException </type>
+ <type> com.sun.star.lang.XInitialization </type>
+ <type> com.sun.star.lang.XTypeProvider </type>
+ <type> com.sun.star.lang.XServiceInfo </type>
+ <type> com.sun.star.lang.XSingleServiceFactory </type>
+ <type> com.sun.star.lang.XMultiServiceFactory </type>
+ <type> com.sun.star.registry.XRegistryKey </type>
+ <type> com.sun.star.beans.XPropertySet </type>
+ <type> com.sun.star.container.XSet </type>
+ <type> com.sun.star.uno.XAggregation </type>
+ <type> com.sun.star.uno.XComponentContext </type>
+ <type> com.sun.star.lang.XSingleComponentFactory </type>
+ <type> com.sun.star.uno.XWeak </type>
+ <type> com.sun.star.uno.TypeClass </type>
+ <type> com.sun.star.uno.DeploymentException </type>
+ </component-description>
+ <component-description>
+ <author> Juergen Schmidt </author>
+ <name> com.sun.star.comp.stoc.NestedRegistry </name>
+ <description>
+ This component provides access to a simple hierachical registry. The registry based on
+ two registry file.
+</description>
+ <loader-name> com.sun.star.loader.SharedLibrary </loader-name>
+ <language> c++ </language>
+ <status value="final"/>
+ <supported-service> com.sun.star.registry.NestedRegistry </supported-service>
+ <reference-docu xlink:href="http://www.sun.com" xlink:type="simple"/>
+ <service-dependency> com.sun.star.registry.SimpleRegistry </service-dependency>
+ <type> com.sun.star.lang.XInitialization </type>
+ <type> com.sun.star.lang.XTypeProvider </type>
+ <type> com.sun.star.lang.XServiceInfo </type>
+ <type> com.sun.star.lang.XSingleServiceFactory </type>
+ <type> com.sun.star.lang.XMultiServiceFactory </type>
+ <type> com.sun.star.registry.XSimpleRegistry </type>
+ <type> com.sun.star.registry.XRegistryKey </type>
+ <type> com.sun.star.lang.XSingleComponentFactory </type>
+ <type> com.sun.star.uno.XComponentContext </type>
+ <type> com.sun.star.uno.XAggregation </type>
+ <type> com.sun.star.uno.XWeak </type>
+ <type> com.sun.star.uno.TypeClass </type>
+ <type> com.sun.star.container.XEnumerationAccess </type>
+ </component-description>
+ <component-description>
+ <author> Juergen Schmidt </author>
+ <name> com.sun.star.comp.stoc.ImplementationRegistration </name>
+ <description>
+ This component provides a mechanism to register or deregister an external component
+ to the current uno environment or better to the current service manager.
+</description>
+ <loader-name> com.sun.star.loader.SharedLibrary </loader-name>
+ <language> c++ </language>
+ <status value="final"/>
+ <supported-service> com.sun.star.registry.ImplementationRegistration </supported-service>
+ <service-dependency> com.sun.star.registry.SimpleRegistry </service-dependency>
+ <service-dependency> com.sun.star.loader.SharedLibrary </service-dependency>
+ <service-dependency> com.sun.star.loader.Java </service-dependency>
+ <type> com.sun.star.loader.XImplementationLoader </type>
+ <type> com.sun.star.lang.XInitialization </type>
+ <type> com.sun.star.lang.XTypeProvider </type>
+ <type> com.sun.star.lang.XServiceInfo </type>
+ <type> com.sun.star.lang.XSingleServiceFactory </type>
+ <type> com.sun.star.lang.XSingleComponentFactory </type>
+ <type> com.sun.star.lang.XMultiServiceFactory </type>
+ <type> com.sun.star.registry.XSimpleRegistry </type>
+ <type> com.sun.star.registry.XRegistryKey </type>
+ <type> com.sun.star.registry.XImplementationRegistration2 </type>
+ <type> com.sun.star.beans.XPropertySet </type>
+ <type> com.sun.star.container.XSet </type>
+ <type> com.sun.star.container.XHierarchicalNameAccess </type>
+ <type> com.sun.star.reflection.XServiceTypeDescription </type>
+ <type> com.sun.star.uno.XAggregation </type>
+ <type> com.sun.star.uno.XWeak </type>
+ <type> com.sun.star.uno.TypeClass </type>
+ <type> com.sun.star.uno.XComponentContext </type>
+ </component-description>
+ <component-description>
+ <author> Daniel Boelzle </author>
+ <name> com.sun.star.comp.stoc.RegistryTypeDescriptionProvider </name>
+ <description>
+This provider service supports the XHierarchicalNameAccess interface to read type descriptions
+and constants from a registry source.
+</description>
+ <loader-name> com.sun.star.loader.SharedLibrary </loader-name>
+ <language> C++ </language>
+ <status value="final"/>
+ <supported-service> com.sun.star.reflection.TypeDescriptionProvider </supported-service>
+ <service-dependency>com.sun.star.reflection.TypeDescriptionManager</service-dependency>
+ <type> com.sun.star.reflection.XTypeDescription </type>
+ <type> com.sun.star.reflection.XConstantsTypeDescription </type>
+ <type> com.sun.star.reflection.XEnumTypeDescription </type>
+ <type> com.sun.star.reflection.XIndirectTypeDescription </type>
+ <type> com.sun.star.reflection.XInterfaceMemberTypeDescription </type>
+ <type> com.sun.star.reflection.XInterfaceAttributeTypeDescription2 </type>
+ <type> com.sun.star.reflection.XMethodParameter </type>
+ <type> com.sun.star.reflection.XModuleTypeDescription </type>
+ <type> com.sun.star.reflection.XInterfaceMethodTypeDescription </type>
+ <type> com.sun.star.reflection.XInterfaceTypeDescription </type>
+ <type> com.sun.star.reflection.XInterfaceTypeDescription2 </type>
+ <type> com.sun.star.reflection.XCompoundTypeDescription </type>
+ <type> com.sun.star.reflection.XServiceConstructorDescription </type>
+ <type> com.sun.star.reflection.XServiceTypeDescription </type>
+ <type> com.sun.star.reflection.XServiceTypeDescription2 </type>
+ <type> com.sun.star.reflection.XSingletonTypeDescription2 </type>
+ <type> com.sun.star.reflection.XTypeDescriptionEnumerationAccess </type>
+ <type> com.sun.star.reflection.XParameter </type>
+ <type> com.sun.star.reflection.XPublished</type>
+ <type> com.sun.star.reflection.XStructTypeDescription</type>
+ <type> com.sun.star.lang.DisposedException </type>
+ <type> com.sun.star.lang.XComponent </type>
+ <type> com.sun.star.lang.XTypeProvider </type>
+ <type> com.sun.star.lang.XServiceInfo </type>
+ <type> com.sun.star.lang.XSingleComponentFactory </type>
+ <type> com.sun.star.lang.XMultiComponentFactory </type>
+ <type> com.sun.star.lang.XSingleServiceFactory </type>
+ <type> com.sun.star.lang.XMultiServiceFactory </type>
+ <type> com.sun.star.lang.XInitialization </type>
+ <type> com.sun.star.registry.XSimpleRegistry </type>
+ <type> com.sun.star.beans.PropertyAttribute </type>
+ <type> com.sun.star.beans.XPropertySet </type>
+ <type> com.sun.star.container.NoSuchElementException </type>
+ <type> com.sun.star.container.XHierarchicalNameAccess </type>
+ <type> com.sun.star.container.XSet </type>
+ <type> com.sun.star.uno.XAggregation </type>
+ <type> com.sun.star.uno.XComponentContext </type>
+ <type> com.sun.star.uno.XWeak </type>
+ <type> com.sun.star.uno.XInterface </type>
+ <type> com.sun.star.uno.TypeClass </type>
+ <type> com.sun.star.uno.RuntimeException </type>
+ </component-description>
+ <component-description>
+ <author>boelzle@sun.com</author>
+ <name>com.sun.star.security.comp.stoc.AccessController</name>
+<description>
+This service is an implementation of the com.sun.star.security.AccessController service.
+</description>
+ <loader-name>com.sun.star.loader.SharedLibrary</loader-name>
+ <language>C++</language>
+ <status value="under construction"/>
+ <supported-service>com.sun.star.security.AccessController</supported-service>
+ <service-dependency> unknown, because of used policy </service-dependency>
+ <type>com.sun.star.security.XAccessController</type>
+ <type>com.sun.star.security.XPolicy</type>
+ <type>com.sun.star.security.RuntimePermission</type>
+ <type>com.sun.star.security.AllPermission</type>
+ <type>com.sun.star.io.FilePermission</type>
+ <type>com.sun.star.connection.SocketPermission</type>
+ <type>com.sun.star.registry.XRegistryKey</type>
+ <type>com.sun.star.lang.DisposedException</type>
+ <type>com.sun.star.lang.XTypeProvider</type>
+ <type>com.sun.star.lang.XComponent</type>
+ <type>com.sun.star.lang.XServiceInfo</type>
+ <type>com.sun.star.lang.XSingleComponentFactory</type>
+ <type>com.sun.star.lang.XSingleServiceFactory</type>
+ <type>com.sun.star.lang.XMultiComponentFactory</type>
+ <type>com.sun.star.lang.XMultiServiceFactory</type>
+ <type>com.sun.star.lang.XInitialization</type>
+ <type>com.sun.star.uno.XWeak</type>
+ <type>com.sun.star.uno.XAggregation</type>
+ <type>com.sun.star.uno.DeploymentException</type>
+ <type>com.sun.star.uno.XCurrentContext</type>
+ <type>com.sun.star.uno.XComponentContext</type>
+ <type>com.sun.star.uno.TypeClass</type>
+ </component-description>
+ <component-description>
+ <author>boelzle@sun.com</author>
+ <name>com.sun.star.security.comp.stoc.FilePolicy</name>
+<description>
+This service is an implementation of the com.sun.star.security.Policy service.
+</description>
+ <loader-name>com.sun.star.loader.SharedLibrary</loader-name>
+ <language>C++</language>
+ <status value="under construction"/>
+ <supported-service>com.sun.star.security.Policy</supported-service>
+ <type>com.sun.star.security.XAccessController</type>
+ <type>com.sun.star.security.XPolicy</type>
+ <type>com.sun.star.security.RuntimePermission</type>
+ <type>com.sun.star.security.AllPermission</type>
+ <type>com.sun.star.io.FilePermission</type>
+ <type>com.sun.star.connection.SocketPermission</type>
+ <type>com.sun.star.registry.XRegistryKey</type>
+ <type>com.sun.star.lang.XTypeProvider</type>
+ <type>com.sun.star.lang.XComponent</type>
+ <type>com.sun.star.lang.XServiceInfo</type>
+ <type>com.sun.star.lang.XSingleComponentFactory</type>
+ <type>com.sun.star.lang.XSingleServiceFactory</type>
+ <type>com.sun.star.lang.XMultiComponentFactory</type>
+ <type>com.sun.star.lang.XMultiServiceFactory</type>
+ <type>com.sun.star.uno.XWeak</type>
+ <type>com.sun.star.uno.XAggregation</type>
+ <type>com.sun.star.uno.XCurrentContext</type>
+ <type>com.sun.star.uno.XComponentContext</type>
+ <type>com.sun.star.uno.TypeClass</type>
+ </component-description>
+ <component-description>
+ <author> Juergen Schmidt </author>
+ <name> com.sun.star.comp.stoc.SimpleRegistry </name>
+ <description>
+ This component provides access to a simple hierachical registry. The registry based on
+ one registry file.
+</description>
+ <loader-name> com.sun.star.loader.SharedLibrary </loader-name>
+ <language> c++ </language>
+ <status value="final"/>
+ <supported-service> com.sun.star.registry.SimpleRegistry </supported-service>
+ <type> com.sun.star.lang.XTypeProvider </type>
+ <type> com.sun.star.lang.XServiceInfo </type>
+ <type> com.sun.star.lang.XSingleServiceFactory </type>
+ <type> com.sun.star.lang.XSingleComponentFactory </type>
+ <type> com.sun.star.lang.XMultiServiceFactory </type>
+ <type> com.sun.star.lang.XMultiComponentFactory </type>
+ <type> com.sun.star.registry.XSimpleRegistry </type>
+ <type> com.sun.star.registry.XRegistryKey </type>
+ <type> com.sun.star.uno.XAggregation </type>
+ <type> com.sun.star.uno.XWeak </type>
+ <type> com.sun.star.uno.TypeClass </type>
+ <type> com.sun.star.uno.XComponentContext </type>
+ </component-description>
+ <component-description>
+ <author> Juergen Schmidt </author>
+ <name> com.sun.star.comp.stoc.OServiceManager </name>
+ <description>
+ This component provides an administration object which manages
+ factories for many services. The services could be accessed with
+ the service name by using createInstance or createInstanceWithArguments.
+ To support the servicemanager with the needed information about a
+ service implementation, for e.g. which component implements the service,
+ two ways are possible:
+ - register a component persistent in a registry on which the servicemanager
+ works, using the com.sun.star.registry.ImplementationRegistration service.
+ - insert a corresponding factory for the service directly using the
+ interface XSet.
+
+ For creating an object of a requested service the service manager checks
+ if a factory for this service is avaible, if not the registry will be
+ searched for information about this service. If there is an appropriate
+ entry, the component is loaded, a factory is created and announced to the
+ service manager. Finding a factory the service manager calls the factory
+ for creating new objects.
+</description>
+ <loader-name> com.sun.star.loader.SharedLibrary </loader-name>
+ <language> c++ </language>
+ <status value="final"/>
+ <supported-service> com.sun.star.lang.MultiServiceFactory </supported-service>
+ <supported-service> com.sun.star.lang.ServiceManager </supported-service>
+ <type> com.sun.star.lang.XUnoTunnel </type>
+ <type> com.sun.star.lang.XComponent </type>
+ <type> com.sun.star.lang.XEventListener </type>
+ <type> com.sun.star.lang.XInitialization </type>
+ <type> com.sun.star.lang.XTypeProvider </type>
+ <type> com.sun.star.lang.XServiceInfo </type>
+ <type> com.sun.star.lang.XSingleServiceFactory </type>
+ <type> com.sun.star.lang.XSingleComponentFactory </type>
+ <type> com.sun.star.lang.XMultiServiceFactory </type>
+ <type> com.sun.star.lang.DisposedException </type>
+ <type> com.sun.star.registry.XSimpleRegistry </type>
+ <type> com.sun.star.beans.XPropertySet </type>
+ <type> com.sun.star.container.XSet </type>
+ <type> com.sun.star.container.XEnumeration </type>
+ <type> com.sun.star.container.XContentEnumerationAccess </type>
+ <type> com.sun.star.container.XHierarchicalNameAccess </type>
+ <type> com.sun.star.uno.XComponentContext </type>
+ <type> com.sun.star.uno.XAggregation </type>
+ <type> com.sun.star.uno.XWeak </type>
+ <type> com.sun.star.uno.TypeClass </type>
+ <type> com.sun.star.uno.XUnloadingPreference </type>
+ <type> com.sun.star.beans.PropertyAttribute </type>
+ </component-description>
+ <component-description>
+ <author> Daniel Boelzle </author>
+ <name> com.sun.star.comp.stoc.TypeDescriptionManager </name>
+ <description>
+This service is the central manager supporting the XHierarchicalNameAccess interface.
+At runtime there will only be at most a single instance of the service.
+A manager instance is hooked into the C UNO runtime typelib and lives until the service manager
+is going down.
+You can manually add a provider by inserting it via the XSet interface.
+At startup of this service, you must call an initialization, adding all known
+providers.
+</description>
+ <loader-name> com.sun.star.loader.SharedLibrary </loader-name>
+ <language> C++ </language>
+ <status value="final"/>
+ <supported-service> com.sun.star.reflection.TypeDescriptionManager </supported-service>
+ <service-dependency> ... </service-dependency>
+ <type> com.sun.star.beans.PropertyAttribute </type>
+ <type> com.sun.star.reflection.XTypeDescription </type>
+ <type> com.sun.star.reflection.XEnumTypeDescription </type>
+ <type> com.sun.star.reflection.XArrayTypeDescription </type>
+ <type> com.sun.star.reflection.XIndirectTypeDescription </type>
+ <type> com.sun.star.reflection.XInterfaceMemberTypeDescription </type>
+ <type> com.sun.star.reflection.XInterfaceAttributeTypeDescription </type>
+ <type> com.sun.star.reflection.XInterfaceAttributeTypeDescription2 </type>
+ <type> com.sun.star.reflection.XMethodParameter </type>
+ <type> com.sun.star.reflection.XInterfaceMethodTypeDescription </type>
+ <type> com.sun.star.reflection.XInterfaceTypeDescription2 </type>
+ <type> com.sun.star.reflection.XStructTypeDescription </type>
+ <type> com.sun.star.reflection.XServiceTypeDescription </type>
+ <type> com.sun.star.reflection.XServiceTypeDescription2 </type>
+ <type> com.sun.star.reflection.XPropertyTypeDescription </type>
+ <type> com.sun.star.reflection.XConstantTypeDescription </type>
+ <type> com.sun.star.reflection.XConstantsTypeDescription </type>
+ <type> com.sun.star.reflection.XSingletonTypeDescription </type>
+ <type> com.sun.star.reflection.XSingletonTypeDescription2 </type>
+ <type> com.sun.star.reflection.XUnionTypeDescription </type>
+ <type> com.sun.star.reflection.XTypeDescriptionEnumerationAccess </type>
+ <type> com.sun.star.lang.DisposedException </type>
+ <type> com.sun.star.lang.XComponent </type>
+ <type> com.sun.star.lang.XEventListener </type>
+ <type> com.sun.star.lang.XInitialization </type>
+ <type> com.sun.star.lang.XTypeProvider </type>
+ <type> com.sun.star.lang.XServiceInfo </type>
+ <type> com.sun.star.lang.XSingleServiceFactory </type>
+ <type> com.sun.star.lang.XSingleComponentFactory </type>
+ <type> com.sun.star.lang.XMultiComponentFactory </type>
+ <type> com.sun.star.lang.XMultiServiceFactory </type>
+ <type> com.sun.star.registry.XRegistryKey </type>
+ <type> com.sun.star.container.XSet </type>
+ <type> com.sun.star.container.XHierarchicalNameAccess </type>
+ <type> com.sun.star.container.XContentEnumerationAccess </type>
+ <type> com.sun.star.uno.XAggregation </type>
+ <type> com.sun.star.uno.XWeak </type>
+ <type> com.sun.star.uno.XComponentContext </type>
+ <type> com.sun.star.uno.TypeClass </type>
+ </component-description>
+ <project-build-dependency> cppuhelper </project-build-dependency>
+ <project-build-dependency> cppu </project-build-dependency>
+ <project-build-dependency> sal </project-build-dependency>
+ <project-build-dependency> registry </project-build-dependency>
+ <project-build-dependency> store </project-build-dependency>
+ <project-build-dependency> salhelper </project-build-dependency>
+ <runtime-module-dependency> cppuhelper3$(COM) </runtime-module-dependency>
+ <runtime-module-dependency> cppu3 </runtime-module-dependency>
+ <runtime-module-dependency> sal3 </runtime-module-dependency>
+ <runtime-module-dependency> reg3 </runtime-module-dependency>
+ <runtime-module-dependency> store3 </runtime-module-dependency>
+ <runtime-module-dependency> reg3 </runtime-module-dependency>
+ <runtime-module-dependency> store3 </runtime-module-dependency>
+ <runtime-module-dependency> salhelper3(COM) </runtime-module-dependency>
+ <runtime-module-dependency> salhelper3(COM) </runtime-module-dependency>
+</module-description>
diff --git a/stoc/source/bootstrap/services.cxx b/stoc/source/bootstrap/services.cxx
new file mode 100644
index 000000000000..03a247920542
--- /dev/null
+++ b/stoc/source/bootstrap/services.cxx
@@ -0,0 +1,155 @@
+/*************************************************************************
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * $RCSfile: services.cxx,v $
+ *
+ * $Revision: 1.2 $
+ *
+ * last change: $Author: hr $ $Date: 2007-09-27 12:56:37 $
+ *
+ * The Contents of this file are made available subject to
+ * the terms of GNU Lesser General Public License Version 2.1.
+ *
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2005 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_stoc.hxx"
+
+#include "bootstrapservices.hxx"
+
+#include "cppuhelper/factory.hxx"
+#include "cppuhelper/implementationentry.hxx"
+#include "sal/types.h"
+#include "uno/environment.h"
+#include "uno/lbnames.h"
+
+#include <stdio.h>
+
+using namespace com::sun::star;
+using namespace com::sun::star::uno;
+using namespace cppu;
+using namespace osl;
+using namespace rtl;
+
+extern rtl_StandardModuleCount g_moduleCount;
+
+using namespace stoc_bootstrap;
+
+static struct ImplementationEntry g_entries[] =
+{
+ //servicemanager
+ {
+ OServiceManager_CreateInstance, smgr_getImplementationName,
+ smgr_getSupportedServiceNames, createSingleComponentFactory,
+ &g_moduleCount.modCnt , 0
+ },
+ {
+ ORegistryServiceManager_CreateInstance, regsmgr_getImplementationName,
+ regsmgr_getSupportedServiceNames, createSingleComponentFactory,
+ &g_moduleCount.modCnt , 0
+ },
+ {
+ OServiceManagerWrapper_CreateInstance, smgr_wrapper_getImplementationName,
+ smgr_wrapper_getSupportedServiceNames, createSingleComponentFactory,
+ &g_moduleCount.modCnt , 0
+ },
+ //security
+ {
+ ac_create, ac_getImplementationName,
+ ac_getSupportedServiceNames, createSingleComponentFactory,
+ &g_moduleCount.modCnt, 0
+ },
+ {
+ filepolicy_create, filepolicy_getImplementationName,
+ filepolicy_getSupportedServiceNames, createSingleComponentFactory,
+ &g_moduleCount.modCnt, 0
+ },
+ //simpleregistry
+ {
+ SimpleRegistry_CreateInstance, simreg_getImplementationName,
+ simreg_getSupportedServiceNames, createSingleComponentFactory,
+ &g_moduleCount.modCnt , 0
+ },
+ //defaultregistry
+ {
+ NestedRegistry_CreateInstance, defreg_getImplementationName,
+ defreg_getSupportedServiceNames, createSingleComponentFactory,
+ &g_moduleCount.modCnt , 0
+ },
+ //implementationregistry
+ {
+ ImplementationRegistration_CreateInstance, impreg_getImplementationName,
+ impreg_getSupportedServiceNames, createSingleComponentFactory,
+ &g_moduleCount.modCnt , 0
+ },
+ //loader
+ {
+ DllComponentLoader_CreateInstance, loader_getImplementationName,
+ loader_getSupportedServiceNames, createSingleComponentFactory,
+ &g_moduleCount.modCnt , 0
+ },
+ //registry_tdprovider
+ {
+ ProviderImpl_create, rdbtdp_getImplementationName,
+ rdbtdp_getSupportedServiceNames, createSingleComponentFactory,
+ &g_moduleCount.modCnt , 0
+ },
+ //tdmanager
+ {
+ ManagerImpl_create, tdmgr_getImplementationName,
+ tdmgr_getSupportedServiceNames, createSingleComponentFactory,
+ &g_moduleCount.modCnt , 0
+ },
+ //end
+ { 0, 0, 0, 0, 0, 0 }
+};
+
+extern "C"
+{
+
+sal_Bool SAL_CALL component_canUnload( TimeValue *pTime )
+{
+ return g_moduleCount.canUnload( &g_moduleCount , pTime );
+}
+
+//==================================================================================================
+void SAL_CALL component_getImplementationEnvironment(
+ const sal_Char ** ppEnvTypeName, uno_Environment ** )
+{
+ *ppEnvTypeName = CPPU_CURRENT_LANGUAGE_BINDING_NAME;
+}
+//==================================================================================================
+sal_Bool SAL_CALL component_writeInfo(
+ void * pServiceManager, void * pRegistryKey )
+{
+ return component_writeInfoHelper( pServiceManager, pRegistryKey, g_entries );
+}
+//==================================================================================================
+void * SAL_CALL component_getFactory(
+ const sal_Char * pImplName, void * pServiceManager, void * pRegistryKey )
+{
+ return component_getFactoryHelper( pImplName, pServiceManager, pRegistryKey , g_entries );
+}
+
+}