On 08/27/2015 01:37 PM, Stephan Bergmann wrote:
On 08/27/2015 12:35 PM, Giuseppe Castagno wrote:
On 08/27/2015 11:45 AM, Stephan Bergmann wrote:
So added support for vnd.sun.star.webdavs to LO 5.1 now,
<https://wiki.documentfoundation.org/index.php?title=ReleaseNotes/5.1&oldid=116154#Core>.


Saw commit [1], probably INetProtocol needs adjusting too.

Don't think so.  Since INetURLObject falls back to INetProtocol::Generic
now, there's rarely need these days to keep adding schemes to
INetURLObject/INetProtocol.  (For example, "dav" and "davs" are not
there, either.)

Then, while checking for the scheme of a url to determine if it's webdav or not, in SfxMedium::LockOrigFileOnDemand and SfxMedium::UnlockFile I used:

INetProtocol aProto =  GetURLObject().GetProtocol();
if( aProto == INetProtocol::Http || aProto == INetProtocol::Https || aProto == INetProtocol::VndSunStarWebdav )
{
// WebDAV !
}

Or is there another way to detect the protocol ?

For example one may be this:

::ucbhelper::Content aContent;
OUString aScheme;

aContent = ::ucbhelper::Content(sURL, xCommandEnv, comphelper::getProcessComponentContext());

css::uno::Reference< css::ucb::XContentIdentifier > xContId( aContent.get().is() ? aContent.get()->getIdentifier() : 0 );

if ( xContId.is() )
  aScheme = xContId->getContentProviderScheme().toAsciiLowerCase();

if ( aScheme == "http" || aScheme == "https" || aScheme == "vnd.sun.star.webdav" )
{
//      WebDAV !
}

what's the better?

This is where I got the idea:

http://opengrok.libreoffice.org/xref/core/sfx2/source/doc/docfile.cxx#385

Perhaps another better way?

Thanks
--
Kind Regards,
Giuseppe Castagno aka beppec56
Acca Esse http://www.acca-esse.eu
giuseppe.castagno at acca-esse.eu

_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to