Kaydet (Commit) f03a5364 authored tarafından Mathias Bauer's avatar Mathias Bauer Kaydeden (comit) Bjoern Michaelsen

CWS gnumake4: convert ucbhelper to new build system

üst aa69ed78
......@@ -2,7 +2,7 @@
#
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# Copyright 2000, 2010 Oracle and/or its affiliates.
# Copyright 2000, 2011 Oracle and/or its affiliates.
#
# OpenOffice.org - a multi-platform office productivity suite
#
......@@ -25,36 +25,60 @@
#
#*************************************************************************
PRJ=..$/..
$(eval $(call gb_Library_Library,ucbhelper))
PRJNAME= ucbhelper
TARGET= client
AUTOSEG= TRUE
$(eval $(call gb_Library_add_package_headers,ucbhelper,ucbhelper_inc))
ENABLE_EXCEPTIONS=TRUE
$(eval $(call gb_Library_add_precompiled_header,ucbhelper,$(SRCDIR)/ucbhelper/inc/pch/precompiled_ucbhelper))
# --- Settings -----------------------------------------------------
$(eval $(call gb_Library_set_include,ucbhelper,\
$$(INCLUDE) \
-I$(SRCDIR)/ucbhelper/inc \
-I$(SRCDIR)/ucbhelper/inc/pch \
-I$(OUTDIR)/inc/offuh \
))
.INCLUDE : settings.mk
.INCLUDE : $(PRJ)$/util$/makefile.pmk
$(eval $(call gb_Library_set_defs,ucbhelper,\
$$(DEFS) \
-DUCBHELPER_DLLIMPLEMENTATION \
))
# --- Files --------------------------------------------------------
$(eval $(call gb_Library_add_linked_libs,ucbhelper,\
stl \
sal \
cppu \
cppuhelper \
salhelper \
$(gb_STDLIBS) \
))
.IF "$(header)" == ""
SLOFILES=\
$(SLO)$/content.obj \
$(SLO)$/contentbroker.obj \
$(SLO)$/commandenvironment.obj \
$(SLO)$/fileidentifierconverter.obj \
$(SLO)$/activedatasink.obj \
$(SLO)$/activedatastreamer.obj \
$(SLO)$/proxydecider.obj \
$(SLO)$/interceptedinteraction.obj
.ENDIF
# --- Targets ------------------------------------------------------
.INCLUDE : target.mk
$(eval $(call gb_Library_add_exception_objects,ucbhelper,\
ucbhelper/source/provider/simpleauthenticationrequest \
ucbhelper/source/provider/simpleioerrorrequest \
ucbhelper/source/provider/cancelcommandexecution \
ucbhelper/source/provider/contenthelper \
ucbhelper/source/provider/propertyvalueset \
ucbhelper/source/provider/resultset \
ucbhelper/source/provider/resultsetmetadata \
ucbhelper/source/provider/simplecertificatevalidationrequest \
ucbhelper/source/provider/contentidentifier \
ucbhelper/source/provider/resultsethelper \
ucbhelper/source/provider/simplenameclashresolverequest \
ucbhelper/source/provider/simpleinteractionrequest \
ucbhelper/source/provider/handleinteractionrequest \
ucbhelper/source/provider/registerucb \
ucbhelper/source/provider/contentinfo \
ucbhelper/source/provider/interactionrequest \
ucbhelper/source/provider/commandenvironmentproxy \
ucbhelper/source/provider/providerhelper \
ucbhelper/source/client/proxydecider \
ucbhelper/source/client/content \
ucbhelper/source/client/contentbroker \
ucbhelper/source/client/commandenvironment \
ucbhelper/source/client/activedatastreamer \
ucbhelper/source/client/fileidentifierconverter \
ucbhelper/source/client/interceptedinteraction \
ucbhelper/source/client/activedatasink \
))
# vim: set noet sw=4 ts=4:
......@@ -2,7 +2,7 @@
#
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# Copyright 2000, 2010 Oracle and/or its affiliates.
# Copyright 2000, 2011 Oracle and/or its affiliates.
#
# OpenOffice.org - a multi-platform office productivity suite
#
......@@ -24,19 +24,15 @@
# for a copy of the LGPLv3 License.
#
#*************************************************************************
UCBHELPER_TARGET=ucbhelper
# the major
UCBHELPER_MAJOR=4
# the minor
UCBHELPER_MINOR=0
# the micro
UCBHELPER_MICRO=0
ifeq ($(strip $(SOLARENV)),)
$(error No environment set!)
endif
# this is a c++ compatible library
UCBHELPER_CPP=1
gb_PARTIALBUILD := T
GBUILDDIR := $(SOLARENV)/gbuild
include $(GBUILDDIR)/gbuild.mk
UCBHELPER=$(UCBHELPER_TARGET)_$(CMPEXT)
$(eval $(call gb_Module_make_global_targets,$(shell ls $(dir $(realpath $(firstword $(MAKEFILE_LIST))))/Module*.mk)))
LIBUCBHELPER_UNX=lib$(UCBHELPER).a.$(UCBHELPER_MAJOR)
LIBUCBHELPER_WIN=$(UCBHELPER_TARGET)$(UCBHELPER_MAJOR)$(CMPEXT).dll
# vim: set noet sw=4 ts=4:
......@@ -2,7 +2,7 @@
#
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# Copyright 2000, 2010 Oracle and/or its affiliates.
# Copyright 2000, 2011 Oracle and/or its affiliates.
#
# OpenOffice.org - a multi-platform office productivity suite
#
......@@ -24,25 +24,15 @@
# for a copy of the LGPLv3 License.
#
#*************************************************************************
PRJ=..
PRJNAME=ucbhelper
TARGET=inc
# replace ucbhelper by the name of the module you are creating
# --- Settings -----------------------------------------------------
$(eval $(call gb_Module_Module,ucbhelper))
.INCLUDE : settings.mk
.INCLUDE : $(PRJ)$/util$/makefile.pmk
# --- Files --------------------------------------------------------
# --- Targets -------------------------------------------------------
.INCLUDE : target.mk
.IF "$(ENABLE_PCH)"!=""
ALLTAR : \
$(SLO)$/precompiled.pch \
$(SLO)$/precompiled_ex.pch
.ENDIF # "$(ENABLE_PCH)"!=""
# the targets to be inserted are their file names without .mk extension
$(eval $(call gb_Module_add_targets,ucbhelper,\
Library_ucbhelper \
Package_inc \
))
# vim: set noet sw=4 ts=4:
#*************************************************************************
#
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# Copyright 2000, 2011 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.
#
#*************************************************************************
$(eval $(call gb_Package_Package,ucbhelper_inc,$(SRCDIR)/ucbhelper/inc))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/contentbroker.hxx,ucbhelper/contentbroker.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/simpleauthenticationrequest.hxx,ucbhelper/simpleauthenticationrequest.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/propertyvalueset.hxx,ucbhelper/propertyvalueset.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/contentinfo.hxx,ucbhelper/contentinfo.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/resultsetmetadata.hxx,ucbhelper/resultsetmetadata.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/contenthelper.hxx,ucbhelper/contenthelper.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/activedatasink.hxx,ucbhelper/activedatasink.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/commandenvironment.hxx,ucbhelper/commandenvironment.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/interceptedinteraction.hxx,ucbhelper/interceptedinteraction.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/resultset.hxx,ucbhelper/resultset.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/ucbhelperdllapi.h,ucbhelper/ucbhelperdllapi.h))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/simpleinteractionrequest.hxx,ucbhelper/simpleinteractionrequest.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/simpleioerrorrequest.hxx,ucbhelper/simpleioerrorrequest.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/interactionrequest.hxx,ucbhelper/interactionrequest.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/activedatastreamer.hxx,ucbhelper/activedatastreamer.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/content.hxx,ucbhelper/content.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/simplecertificatevalidationrequest.hxx,ucbhelper/simplecertificatevalidationrequest.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/proxydecider.hxx,ucbhelper/proxydecider.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/fileidentifierconverter.hxx,ucbhelper/fileidentifierconverter.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/cancelcommandexecution.hxx,ucbhelper/cancelcommandexecution.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/commandenvironmentproxy.hxx,ucbhelper/commandenvironmentproxy.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/registerucb.hxx,ucbhelper/registerucb.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/resultsethelper.hxx,ucbhelper/resultsethelper.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/configurationkeys.hxx,ucbhelper/configurationkeys.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/contentidentifier.hxx,ucbhelper/contentidentifier.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/handleinteractionrequest.hxx,ucbhelper/handleinteractionrequest.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/providerhelper.hxx,ucbhelper/providerhelper.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/simplenameclashresolverequest.hxx,ucbhelper/simplenameclashresolverequest.hxx))
$(eval $(call gb_Package_add_file,ucbhelper_inc,inc/ucbhelper/macros.hxx,ucbhelper/macros.hxx))
# vim: set noet sw=4 ts=4:
uh ucbhelper : offuh sal cppu cppuhelper salhelper NULL
uh ucbhelper usr1 - all uh_mkout NULL
uh ucbhelper\inc nmake - all uh_inc NULL
uh ucbhelper\source\client nmake - all uh_client uh_inc NULL
uh ucbhelper\source\provider nmake - all uh_provider uh_inc NULL
uh ucbhelper\util nmake - all uh_util uh_client uh_provider NULL
uh ucbhelper\workben\myucp nmake - all uh_wb_myucp uh_util NULL
uh ucbhelper\prj nmake - all uh_prj NULL
..\%__SRC%\bin\*.dll %_DEST%\bin%_EXT%\*.dll
..\%__SRC%\lib\lib*.so %_DEST%\lib%_EXT%\lib*.so
..\%__SRC%\lib\lib*.dylib %_DEST%\lib%_EXT%\lib*.dylib
..\%__SRC%\lib\*.lib %_DEST%\lib%_EXT%\*.lib
..\%__SRC%\misc\*.map %_DEST%\bin%_EXT%\*.map
..\%__SRC%\misc\*.sym %_DEST%\bin%_EXT%\*.sym
..\util\ucbhelper.xml %_DEST%\xml%_EXT%\ucbhelper.xml
mkdir: %_DEST%\inc%_EXT%\ucbhelper
..\inc\ucbhelper\configurationkeys.hxx %_DEST%\inc%_EXT%\ucbhelper\configurationkeys.hxx
..\inc\ucbhelper\registerucb.hxx %_DEST%\inc%_EXT%\ucbhelper\registerucb.hxx
..\inc\ucbhelper\content.hxx %_DEST%\inc%_EXT%\ucbhelper\content.hxx
..\inc\ucbhelper\contentbroker.hxx %_DEST%\inc%_EXT%\ucbhelper\contentbroker.hxx
..\inc\ucbhelper\commandenvironment.hxx %_DEST%\inc%_EXT%\ucbhelper\commandenvironment.hxx
..\inc\ucbhelper\contentidentifier.hxx %_DEST%\inc%_EXT%\ucbhelper\contentidentifier.hxx
..\inc\ucbhelper\contenthelper.hxx %_DEST%\inc%_EXT%\ucbhelper\contenthelper.hxx
..\inc\ucbhelper\contentidentifier.hxx %_DEST%\inc%_EXT%\ucbhelper\contentidentifier.hxx
..\inc\ucbhelper\contentinfo.hxx %_DEST%\inc%_EXT%\ucbhelper\contentinfo.hxx
..\inc\ucbhelper\fileidentifierconverter.hxx %_DEST%\inc%_EXT%\ucbhelper\fileidentifierconverter.hxx
..\inc\ucbhelper\macros.hxx %_DEST%\inc%_EXT%\ucbhelper\macros.hxx
..\inc\ucbhelper\propertyvalueset.hxx %_DEST%\inc%_EXT%\ucbhelper\propertyvalueset.hxx
..\inc\ucbhelper\providerhelper.hxx %_DEST%\inc%_EXT%\ucbhelper\providerhelper.hxx
..\inc\ucbhelper\resultset.hxx %_DEST%\inc%_EXT%\ucbhelper\resultset.hxx
..\inc\ucbhelper\resultsetmetadata.hxx %_DEST%\inc%_EXT%\ucbhelper\resultsetmetadata.hxx
..\inc\ucbhelper\resultsethelper.hxx %_DEST%\inc%_EXT%\ucbhelper\resultsethelper.hxx
..\inc\ucbhelper\activedatasink.hxx %_DEST%\inc%_EXT%\ucbhelper\activedatasink.hxx
..\inc\ucbhelper\commandenvironmentproxy.hxx %_DEST%\inc%_EXT%\ucbhelper\commandenvironmentproxy.hxx
..\inc\ucbhelper\interactionrequest.hxx %_DEST%\inc%_EXT%\ucbhelper\interactionrequest.hxx
..\inc\ucbhelper\interceptedinteraction.hxx %_DEST%\inc%_EXT%\ucbhelper\interceptedinteraction.hxx
..\inc\ucbhelper\simpleinteractionrequest.hxx %_DEST%\inc%_EXT%\ucbhelper\simpleinteractionrequest.hxx
..\inc\ucbhelper\simpleauthenticationrequest.hxx %_DEST%\inc%_EXT%\ucbhelper\simpleauthenticationrequest.hxx
..\inc\ucbhelper\simplenameclashresolverequest.hxx %_DEST%\inc%_EXT%\ucbhelper\simplenameclashresolverequest.hxx
..\inc\ucbhelper\simplecertificatevalidationrequest.hxx %_DEST%\inc%_EXT%\ucbhelper\simplecertificatevalidationrequest.hxx
..\inc\ucbhelper\simpleioerrorrequest.hxx %_DEST%\inc%_EXT%\ucbhelper\simpleioerrorrequest.hxx
..\inc\ucbhelper\cancelcommandexecution.hxx %_DEST%\inc%_EXT%\ucbhelper\cancelcommandexecution.hxx
..\inc\ucbhelper\handleinteractionrequest.hxx %_DEST%\inc%_EXT%\ucbhelper\handleinteractionrequest.hxx
..\inc\ucbhelper\proxydecider.hxx %_DEST%\inc%_EXT%\ucbhelper\proxydecider.hxx
..\version.mk %_DEST%\inc%_EXT%\ucbhelper\version.mk
..\inc\ucbhelper\ucbhelperdllapi.h %_DEST%\inc%_EXT%\ucbhelper\ucbhelperdllapi.h
......@@ -25,7 +25,16 @@
#
#*************************************************************************
# define UCBHELPER_DLLIMPLEMENTATION (see @ ucbhelperdllapi.h)
CDEFS += -DUCBHELPER_DLLIMPLEMENTATION
PRJ=..
TARGET=prj
VISIBILITY_HIDDEN=TRUE
.INCLUDE : settings.mk
.IF "$(VERBOSE)"!=""
VERBOSEFLAG :=
.ELSE
VERBOSEFLAG := -s
.ENDIF
all:
cd $(PRJ) && $(GNUMAKE) $(VERBOSEFLAG) -r -j$(MAXPROCESS) $(gb_MAKETARGET) && $(GNUMAKE) $(VERBOSEFLAG) -r deliverlog
/*************************************************************************
*
* 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_ucbhelper.hxx"
#include <ucbhelper/configureucb.hxx>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/ucb/XContentProvider.hpp>
#include <com/sun/star/ucb/XContentProviderManager.hpp>
#include <com/sun/star/uno/Any.hxx>
#include <com/sun/star/uno/RuntimeException.hpp>
#include <rtl/ustrbuf.hxx>
#include "osl/diagnose.h"
#ifndef _UCBHELPER_PROVCONF_HXX_
#include <provconf.hxx>
#endif
#include <registerucb.hxx>
using namespace com::sun::star;
namespace {
bool fillPlaceholders(rtl::OUString const & rInput,
uno::Sequence< uno::Any > const & rReplacements,
rtl::OUString * pOutput)
{
sal_Unicode const * p = rInput.getStr();
sal_Unicode const * pEnd = p + rInput.getLength();
sal_Unicode const * pCopy = p;
rtl::OUStringBuffer aBuffer;
while (p != pEnd)
switch (*p++)
{
case '&':
if (pEnd - p >= 4
&& p[0] == 'a' && p[1] == 'm' && p[2] == 'p'
&& p[3] == ';')
{
aBuffer.append(pCopy, p - 1 - pCopy);
aBuffer.append(sal_Unicode('&'));
p += 4;
pCopy = p;
}
else if (pEnd - p >= 3
&& p[0] == 'l' && p[1] == 't' && p[2] == ';')
{
aBuffer.append(pCopy, p - 1 - pCopy);
aBuffer.append(sal_Unicode('<'));
p += 3;
pCopy = p;
}
else if (pEnd - p >= 3
&& p[0] == 'g' && p[1] == 't' && p[2] == ';')
{
aBuffer.append(pCopy, p - 1 - pCopy);
aBuffer.append(sal_Unicode('>'));
p += 3;
pCopy = p;
}
break;
case '<':
sal_Unicode const * q = p;
while (q != pEnd && *q != '>')
++q;
if (q == pEnd)
break;
rtl::OUString aKey(p, q - p);
rtl::OUString aValue;
bool bFound = false;
for (sal_Int32 i = 2; i + 1 < rReplacements.getLength();
i += 2)
{
rtl::OUString aReplaceKey;
if ((rReplacements[i] >>= aReplaceKey)
&& aReplaceKey == aKey
&& (rReplacements[i + 1] >>= aValue))
{
bFound = true;
break;
}
}
if (!bFound)
return false;
aBuffer.append(pCopy, p - 1 - pCopy);
aBuffer.append(aValue);
p = q + 1;
pCopy = p;
break;
}
aBuffer.append(pCopy, pEnd - pCopy);
*pOutput = aBuffer.makeStringAndClear();
return true;
}
}
namespace ucbhelper {
//============================================================================
//
// configureUcb
//
//============================================================================
bool
configureUcb(
uno::Reference< ucb::XContentProviderManager > const & rManager,
uno::Reference< lang::XMultiServiceFactory > const & rServiceFactory,
ContentProviderDataList const & rData,
ContentProviderRegistrationInfoList * pInfos)
throw (uno::RuntimeException)
{
ContentProviderDataList::const_iterator aEnd(rData.end());
for (ContentProviderDataList::const_iterator aIt(rData.begin());
aIt != aEnd; ++aIt)
{
ContentProviderRegistrationInfo aInfo;
bool bSuccess = registerAtUcb(rManager,
rServiceFactory,
aIt->ServiceName,
aIt->Arguments,
aIt->URLTemplate,
&aInfo);
if (bSuccess && pInfos)
pInfos->push_back(aInfo);
}
return true;
}
//============================================================================
//
// configureUcb
//
//============================================================================
bool
configureUcb(
uno::Reference< ucb::XContentProviderManager > const & rManager,
uno::Reference< lang::XMultiServiceFactory > const & rServiceFactory,
uno::Sequence< uno::Any > const & rArguments,
std::vector< ContentProviderRegistrationInfo > * pInfos)
throw (uno::RuntimeException)
{
rtl::OUString aKey1;
rtl::OUString aKey2;
if (rArguments.getLength() < 2
|| !(rArguments[0] >>= aKey1) || !(rArguments[1] >>= aKey2))
{
OSL_ENSURE(false, "ucb::configureUcb(): Bad arguments");
return false;
}
ContentProviderDataList aData;
if (!getContentProviderData(rServiceFactory, aKey1, aKey2, aData))
{
OSL_ENSURE(false, "ucb::configureUcb(): No configuration");
return false;
}
ContentProviderDataList::const_iterator aEnd(aData.end());
for (ContentProviderDataList::const_iterator aIt(aData.begin());
aIt != aEnd; ++aIt)
{
rtl::OUString aProviderArguments;
if (fillPlaceholders(aIt->Arguments,
rArguments,
&aProviderArguments))
{
ContentProviderRegistrationInfo aInfo;
bool bSuccess = registerAtUcb(rManager,
rServiceFactory,
aIt->ServiceName,
aProviderArguments,
aIt->URLTemplate,
&aInfo);
OSL_ENSURE(bSuccess, "ucb::configureUcb(): Bad content provider");
if (bSuccess && pInfos)
pInfos->push_back(aInfo);
}
else
OSL_ENSURE(false,
"ucb::configureUcb(): Bad argument placeholders");
}
return true;
}
}
//============================================================================
//
// unconfigureUcb
//
//============================================================================
namespace ucbhelper {
void
unconfigureUcb(
uno::Reference< ucb::XContentProviderManager > const & rManager,
std::vector< ContentProviderRegistrationInfo > const & rInfos)
throw (uno::RuntimeException)
{
std::vector< ContentProviderRegistrationInfo >::const_iterator
aEnd(rInfos.end());
for (std::vector< ContentProviderRegistrationInfo >::const_iterator
aIt(rInfos.begin());
aIt != aEnd; ++aIt)
deregisterFromUcb(rManager, *aIt);
}
}
#*************************************************************************
#
# 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.
#
#*************************************************************************
PRJ=..$/..
PRJNAME= ucbhelper
TARGET= provider
AUTOSEG= TRUE
ENABLE_EXCEPTIONS=TRUE
# --- Settings -----------------------------------------------------
.INCLUDE : settings.mk
.INCLUDE : $(PRJ)$/util$/makefile.pmk
# --- Files --------------------------------------------------------
.IF "$(header)" == ""
SLOFILES=\
$(SLO)$/contentidentifier.obj \
$(SLO)$/providerhelper.obj \
$(SLO)$/contenthelper.obj \
$(SLO)$/contentinfo.obj \
$(SLO)$/propertyvalueset.obj \
$(SLO)$/registerucb.obj \
$(SLO)$/resultsetmetadata.obj \
$(SLO)$/resultset.obj \
$(SLO)$/resultsethelper.obj \
$(SLO)$/commandenvironmentproxy.obj \
$(SLO)$/interactionrequest.obj \
$(SLO)$/simpleinteractionrequest.obj \
$(SLO)$/simpleauthenticationrequest.obj \
$(SLO)$/simplenameclashresolverequest.obj \
$(SLO)$/simpleioerrorrequest.obj \
$(SLO)$/cancelcommandexecution.obj \
$(SLO)$/handleinteractionrequest.obj \
$(SLO)$/simplecertificatevalidationrequest.obj
.ENDIF
# --- Targets ------------------------------------------------------
.INCLUDE : target.mk
/*************************************************************************
*
* 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_ucbhelper.hxx"
/**************************************************************************
TODO
**************************************************************************
*************************************************************************/
#ifndef _UCBHELPER_PROVCONF_HXX_
#include <provconf.hxx>
#endif
#include <osl/diagnose.h>
#include <rtl/ustrbuf.hxx>
#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/container/XHierarchicalNameAccess.hpp>
#include <com/sun/star/container/XNameAccess.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
using namespace com::sun::star;
//=========================================================================
#define CONFIG_CONTENTPROVIDERS_KEY \
"/org.openoffice.ucb.Configuration/ContentProviders"
//=========================================================================
namespace ucbhelper {
void makeAndAppendXMLName(
rtl::OUStringBuffer & rBuffer, const rtl::OUString & rIn )
{
sal_Int32 nCount = rIn.getLength();
for ( sal_Int32 n = 0; n < nCount; ++n )
{
const sal_Unicode c = rIn.getStr()[ n ];
switch ( c )
{
case '&':
rBuffer.appendAscii( "&amp;" );
break;
case '"':
rBuffer.appendAscii( "&quot;" );
break;
case '\'':
rBuffer.appendAscii( "&apos;" );
break;
case '<':
rBuffer.appendAscii( "&lt;" );
break;
case '>':
rBuffer.appendAscii( "&gt;" );
break;
default:
rBuffer.append( c );
break;
}
}
}
//=========================================================================
bool getContentProviderData(
const uno::Reference< lang::XMultiServiceFactory > & rServiceMgr,
const rtl::OUString & rKey1,
const rtl::OUString & rKey2,
ContentProviderDataList & rListToFill )
{
if ( !rServiceMgr.is() || !rKey1.getLength() || !rKey2.getLength() )
{
OSL_ENSURE( false,
"getContentProviderData - Invalid argument!" );
return false;
}
try
{
uno::Reference< lang::XMultiServiceFactory > xConfigProv(
rServiceMgr->createInstance(
rtl::OUString::createFromAscii(
"com.sun.star.configuration.ConfigurationProvider" ) ),
uno::UNO_QUERY );