diff options
Diffstat (limited to 'stoc/source/stocservices/stocservices.cxx')
-rw-r--r-- | stoc/source/stocservices/stocservices.cxx | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/stoc/source/stocservices/stocservices.cxx b/stoc/source/stocservices/stocservices.cxx new file mode 100644 index 000000000000..5a276293089a --- /dev/null +++ b/stoc/source/stocservices/stocservices.cxx @@ -0,0 +1,117 @@ +/************************************************************************* + * + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * Copyright 2000, 2010 Oracle and/or its affiliates. + * + * OpenOffice.org - a multi-platform office productivity suite + * + * 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_stoc.hxx" + +#include "stocservices.hxx" + +#include "cppuhelper/factory.hxx" +#include "cppuhelper/implementationentry.hxx" +#include "sal/types.h" +#include "uno/environment.h" +#include "uno/lbnames.h" + +using namespace com::sun::star; +using namespace com::sun::star::uno; +using namespace cppu; +using namespace osl; +using namespace rtl; +using namespace stoc_services; + +rtl_StandardModuleCount g_moduleCount = MODULE_COUNT_INIT; + +static struct ImplementationEntry g_entries[] = +{ + // typeconv + { + TypeConverter_Impl_CreateInstance, tcv_getImplementationName, + tcv_getSupportedServiceNames, createSingleComponentFactory, + &g_moduleCount.modCnt , 0 + }, + // uriproc + { + ExternalUriReferenceTranslator::create, + ExternalUriReferenceTranslator::getImplementationName, + ExternalUriReferenceTranslator::getSupportedServiceNames, + createSingleComponentFactory, 0, 0 + }, + { + UriReferenceFactory::create, + UriReferenceFactory::getImplementationName, + UriReferenceFactory::getSupportedServiceNames, + createSingleComponentFactory, 0, 0 + }, + { + UriSchemeParser_vndDOTsunDOTstarDOTexpand::create, + UriSchemeParser_vndDOTsunDOTstarDOTexpand::getImplementationName, + UriSchemeParser_vndDOTsunDOTstarDOTexpand::getSupportedServiceNames, + createSingleComponentFactory, 0, 0 + }, + { + UriSchemeParser_vndDOTsunDOTstarDOTscript::create, + UriSchemeParser_vndDOTsunDOTstarDOTscript::getImplementationName, + UriSchemeParser_vndDOTsunDOTstarDOTscript::getSupportedServiceNames, + createSingleComponentFactory, 0, 0 + }, + { + VndSunStarPkgUrlReferenceFactory::create, + VndSunStarPkgUrlReferenceFactory::getImplementationName, + VndSunStarPkgUrlReferenceFactory::getSupportedServiceNames, + createSingleComponentFactory, 0, 0 + }, + { 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 ); +} + +} |