summaryrefslogtreecommitdiff
path: root/ucb/source/ucp/webdav/DAVResourceAccess.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'ucb/source/ucp/webdav/DAVResourceAccess.cxx')
-rw-r--r--ucb/source/ucp/webdav/DAVResourceAccess.cxx14
1 files changed, 12 insertions, 2 deletions
diff --git a/ucb/source/ucp/webdav/DAVResourceAccess.cxx b/ucb/source/ucp/webdav/DAVResourceAccess.cxx
index fb67fd379735..5ff430d00806 100644
--- a/ucb/source/ucp/webdav/DAVResourceAccess.cxx
+++ b/ucb/source/ucp/webdav/DAVResourceAccess.cxx
@@ -151,6 +151,7 @@ DAVResourceAccess::DAVResourceAccess(
DAVResourceAccess::DAVResourceAccess( const DAVResourceAccess & rOther )
: m_aURL( rOther.m_aURL ),
m_aPath( rOther.m_aPath ),
+ m_aFlags( rOther.m_aFlags ),
m_xSession( rOther.m_xSession ),
m_xSessionFactory( rOther.m_xSessionFactory ),
m_xSMgr( rOther.m_xSMgr ),
@@ -164,6 +165,7 @@ DAVResourceAccess & DAVResourceAccess::operator=(
{
m_aURL = rOther.m_aURL;
m_aPath = rOther.m_aPath;
+ m_aFlags = rOther.m_aFlags;
m_xSession = rOther.m_xSession;
m_xSessionFactory = rOther.m_xSessionFactory;
m_xSMgr = rOther.m_xSMgr;
@@ -1043,6 +1045,14 @@ void DAVResourceAccess::UNLOCK(
}
//=========================================================================
+void DAVResourceAccess::setFlags( const uno::Sequence< beans::PropertyValue >& rFlags )
+ throw ( DAVException )
+{
+ osl::Guard< osl::Mutex > aGuard( m_aMutex );
+ m_aFlags = rFlags;
+}
+
+//=========================================================================
void DAVResourceAccess::setURL( const rtl::OUString & rNewURL )
throw( DAVException )
{
@@ -1070,13 +1080,13 @@ void DAVResourceAccess::initialize()
if ( !aURI.GetHost().getLength() )
throw DAVException( DAVException::DAV_INVALID_ARG );
- if ( !m_xSession.is() || !m_xSession->CanUse( m_aURL ) )
+ if ( !m_xSession.is() || !m_xSession->CanUse( m_aURL, m_aFlags ) )
{
m_xSession.clear();
// create new webdav session
m_xSession
- = m_xSessionFactory->createDAVSession( m_aURL, m_xSMgr );
+ = m_xSessionFactory->createDAVSession( m_aURL, m_aFlags, m_xSMgr );
if ( !m_xSession.is() )
return;