22#include <com/sun/star/lang/WrappedTargetRuntimeException.hpp>
23#include <com/sun/star/ucb/IllegalIdentifierException.hpp>
24#include <com/sun/star/ucb/UniversalContentBroker.hpp>
44 : ::
ucbhelper::ContentProviderImplHelper(rxContext)
60 OWeakObject::acquire();
66 OWeakObject::release();
72 static_cast< XTypeProvider*
>(
this),
73 static_cast< XServiceInfo*
>(
this),
74 static_cast< XContentProvider*
>(
this)
76 return aRet.hasValue() ? aRet : OWeakObject::queryInterface( rType );
82 return css::uno::Sequence<sal_Int8>();
101 return "com.sun.star.comp.FTPContentProvider";
135 }
catch (css::uno::Exception
const &
ex) {
137 throw css::lang::WrappedTargetRuntimeException(
ex.Message,
138 css::uno::Reference< css::uno::XInterface >(),
150 FTPURL aURL(xCanonicId->getContentIdentifier(),
156 aURL.port().toInt32()))
165 return xProvider->queryContent(xCanonicId);
168 throw IllegalIdentifierException();
189 std::u16string_view port,
190 std::u16string_view username,
198 username ==
i.username )
200 password =
i.password;
207 const OUString& port,
208 const OUString& username,
209 const OUString& password,
210 const OUString& account)
224 username ==
i.username)
227 i.password = password;
237extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface*
239 css::uno::XComponentContext* context, css::uno::Sequence<css::uno::Any>
const&)
css::uno::Sequence< css::uno::Type > SAL_CALL getTypes()
void forHost(std::u16string_view host, std::u16string_view port, std::u16string_view username, OUString &password, OUString &account)
host is in the form host:port.
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() override
virtual ~FTPContentProvider() override
virtual sal_Bool SAL_CALL supportsService(const OUString &ServiceName) override
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
bool setHost(const OUString &host, const OUString &port, const OUString &username, const OUString &password, const OUString &account)
std::unique_ptr< FTPLoaderThread > m_ftpLoaderThread
virtual css::uno::Reference< css::ucb::XContent > SAL_CALL queryContent(const css::uno::Reference< css::ucb::XContentIdentifier > &Identifier) override
virtual css::uno::Any SAL_CALL queryInterface(const css::uno::Type &rType) override
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes() override
std::vector< ServerInfo > m_ServerInfo
virtual OUString SAL_CALL getImplementationName() override
std::unique_ptr< ucbhelper::InternetProxyDecider > m_pProxyDecider
virtual void SAL_CALL acquire() noexcept override
virtual void SAL_CALL release() noexcept override
A loaderthread acts as factory for CURL-handles, the key being ( implicit ) the threadid.
rtl::Reference< ContentImplHelper > queryExistingContent(const css::uno::Reference< css::ucb::XContentIdentifier > &Identifier)
void registerNewContent(const css::uno::Reference< css::ucb::XContent > &xContent)
css::uno::Reference< css::uno::XComponentContext > m_xContext
SAL_DLLPUBLIC_EXPORT css::uno::XInterface * ucb_ftp_FTPContentProvider_get_implementation(css::uno::XComponentContext *context, css::uno::Sequence< css::uno::Any > const &)
constexpr OUStringLiteral FTP_CONTENT_PROVIDER_SERVICE_NAME
css::uno::Any SAL_CALL queryInterface(const css::uno::Type &rType, Interface1 *p1)
bool CPPUHELPER_DLLPUBLIC supportsService(css::lang::XServiceInfo *implementation, rtl::OUString const &name)
Any SAL_CALL getCaughtException()
Definition of ftpcontentprovider.