LibreOffice Module ucb (master) 1
Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
tdoc_ucp::Content Class Reference

#include <tdoc_content.hxx>

Inheritance diagram for tdoc_ucp::Content:
[legend]
Collaboration diagram for tdoc_ucp::Content:
[legend]

Public Member Functions

virtual ~Content () override
 
virtual css::uno::Any SAL_CALL queryInterface (const css::uno::Type &rType) override
 
virtual void SAL_CALL acquire () noexcept override
 
virtual void SAL_CALL release () noexcept override
 
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId () override
 
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes () override
 
virtual OUString SAL_CALL getImplementationName () override
 
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames () override
 
virtual OUString SAL_CALL getContentType () override
 
virtual css::uno::Reference< css::ucb::XContentIdentifier > SAL_CALL getIdentifier () override
 
virtual css::uno::Any SAL_CALL execute (const css::ucb::Command &aCommand, sal_Int32 CommandId, const css::uno::Reference< css::ucb::XCommandEnvironment > &Environment) override
 
virtual void SAL_CALL abort (sal_Int32 CommandId) override
 
virtual css::uno::Sequence< css::ucb::ContentInfo > SAL_CALL queryCreatableContentsInfo () override
 
virtual css::uno::Reference< css::ucb::XContent > SAL_CALL createNewContent (const css::ucb::ContentInfo &Info) override
 
void notifyDocumentClosed ()
 
void notifyChildRemoved (std::u16string_view rRelativeChildUri)
 
void notifyChildInserted (std::u16string_view rRelativeChildUri)
 
rtl::Reference< ContentProvidergetContentProvider () const
 
- Public Member Functions inherited from ucbhelper::ContentImplHelper
 ContentImplHelper (css::uno::Reference< css::uno::XComponentContext > xContext, rtl::Reference< ContentProviderImplHelper > xProvider, css::uno::Reference< css::ucb::XContentIdentifier > Identifier)
 
virtual ~ContentImplHelper () override
 
virtual css::uno::Any SAL_CALL queryInterface (const css::uno::Type &rType) override
 
virtual void SAL_CALL acquire () noexcept override
 
virtual void SAL_CALL release () noexcept override
 
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId () override
 
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes () override
 
virtual OUString SAL_CALL getImplementationName () override=0
 
virtual sal_Bool SAL_CALL supportsService (const OUString &ServiceName) override
 
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames () override=0
 
virtual void SAL_CALL dispose () override
 
virtual void SAL_CALL addEventListener (const css::uno::Reference< css::lang::XEventListener > &Listener) override
 
virtual void SAL_CALL removeEventListener (const css::uno::Reference< css::lang::XEventListener > &Listener) override
 
virtual css::uno::Reference< css::ucb::XContentIdentifier > SAL_CALL getIdentifier () override
 
virtual OUString SAL_CALL getContentType () override=0
 
virtual void SAL_CALL addContentEventListener (const css::uno::Reference< css::ucb::XContentEventListener > &Listener) override
 
virtual void SAL_CALL removeContentEventListener (const css::uno::Reference< css::ucb::XContentEventListener > &Listener) override
 
virtual sal_Int32 SAL_CALL createCommandIdentifier () override
 
virtual css::uno::Any SAL_CALL execute (const css::ucb::Command &aCommand, sal_Int32 CommandId, const css::uno::Reference< css::ucb::XCommandEnvironment > &Environment) override=0
 
virtual void SAL_CALL abort (sal_Int32 CommandId) override=0
 
virtual void SAL_CALL addPropertiesChangeListener (const css::uno::Sequence< OUString > &PropertyNames, const css::uno::Reference< css::beans::XPropertiesChangeListener > &Listener) override
 
virtual void SAL_CALL removePropertiesChangeListener (const css::uno::Sequence< OUString > &PropertyNames, const css::uno::Reference< css::beans::XPropertiesChangeListener > &Listener) override
 
virtual void SAL_CALL addCommandInfoChangeListener (const css::uno::Reference< css::ucb::XCommandInfoChangeListener > &Listener) override
 
virtual void SAL_CALL removeCommandInfoChangeListener (const css::uno::Reference< css::ucb::XCommandInfoChangeListener > &Listener) override
 
virtual void SAL_CALL addProperty (const OUString &Name, sal_Int16 Attributes, const css::uno::Any &DefaultValue) override
 
virtual void SAL_CALL removeProperty (const OUString &Name) override
 
virtual void SAL_CALL addPropertySetInfoChangeListener (const css::uno::Reference< css::beans::XPropertySetInfoChangeListener > &Listener) override
 
virtual void SAL_CALL removePropertySetInfoChangeListener (const css::uno::Reference< css::beans::XPropertySetInfoChangeListener > &Listener) override
 
virtual css::uno::Reference< css::uno::XInterface > SAL_CALL getParent () override
 
virtual void SAL_CALL setParent (const css::uno::Reference< css::uno::XInterface > &Parent) override
 
const rtl::Reference< ContentProviderImplHelper > & getProvider () const
 

Static Public Member Functions

static rtl::Reference< Contentcreate (const css::uno::Reference< css::uno::XComponentContext > &rxContext, ContentProvider *pProvider, const css::uno::Reference< css::ucb::XContentIdentifier > &Identifier)
 
static rtl::Reference< Contentcreate (const css::uno::Reference< css::uno::XComponentContext > &rxContext, ContentProvider *pProvider, const css::uno::Reference< css::ucb::XContentIdentifier > &Identifier, const css::ucb::ContentInfo &Info)
 
static css::uno::Reference< css::sdbc::XRow > getPropertyValues (const css::uno::Reference< css::uno::XComponentContext > &rxContext, const css::uno::Sequence< css::beans::Property > &rProperties, ContentProvider *pProvider, const OUString &rContentId)
 

Private Types

enum  ContentState {
  TRANSIENT ,
  PERSISTENT ,
  DEAD
}
 
typedef rtl::Reference< ContentContentRef
 
typedef std::vector< ContentRefContentRefList
 

Private Member Functions

 Content (const css::uno::Reference< css::uno::XComponentContext > &rxContext, ContentProvider *pProvider, const css::uno::Reference< css::ucb::XContentIdentifier > &Identifier, ContentProperties aProps)
 
 Content (const css::uno::Reference< css::uno::XComponentContext > &rxContext, ContentProvider *pProvider, const css::uno::Reference< css::ucb::XContentIdentifier > &Identifier, const css::ucb::ContentInfo &Info)
 
virtual css::uno::Sequence< css::beans::Property > getProperties (const css::uno::Reference< css::ucb::XCommandEnvironment > &xEnv) override
 
virtual css::uno::Sequence< css::ucb::CommandInfo > getCommands (const css::uno::Reference< css::ucb::XCommandEnvironment > &xEnv) override
 
virtual OUString getParentURL () override
 
bool hasData (const Uri &rUri) const
 
bool storeData (const css::uno::Reference< css::io::XInputStream > &xData, const css::uno::Reference< css::ucb::XCommandEnvironment > &xEnv)
 
void renameData (const css::uno::Reference< css::ucb::XContentIdentifier > &xOldId, const css::uno::Reference< css::ucb::XContentIdentifier > &xNewId)
 
bool removeData ()
 
bool copyData (const Uri &rSourceUri, const OUString &rNewName)
 
css::uno::Reference< css::ucb::XContentIdentifier > makeNewIdentifier (const OUString &rTitle)
 
void queryChildren (ContentRefList &rChildren)
 
bool exchangeIdentity (const css::uno::Reference< css::ucb::XContentIdentifier > &xNewId)
 
css::uno::Reference< css::sdbc::XRow > getPropertyValues (const css::uno::Sequence< css::beans::Property > &rProperties)
 
css::uno::Sequence< css::uno::Any > setPropertyValues (const css::uno::Sequence< css::beans::PropertyValue > &rValues, const css::uno::Reference< css::ucb::XCommandEnvironment > &xEnv)
 
css::uno::Any open (const css::ucb::OpenCommandArgument2 &rArg, const css::uno::Reference< css::ucb::XCommandEnvironment > &xEnv)
 
void insert (const css::uno::Reference< css::io::XInputStream > &xData, sal_Int32 nNameClashResolve, const css::uno::Reference< css::ucb::XCommandEnvironment > &xEnv)
 
void destroy (bool bDeletePhysical, const css::uno::Reference< css::ucb::XCommandEnvironment > &xEnv)
 
void transfer (const css::ucb::TransferInfo &rInfo, const css::uno::Reference< css::ucb::XCommandEnvironment > &xEnv)
 
css::uno::Reference< css::io::XInputStream > getInputStream (const css::uno::Reference< css::ucb::XCommandEnvironment > &xEnv)
 
css::uno::Reference< css::io::XOutputStream > getTruncatedOutputStream (const css::uno::Reference< css::ucb::XCommandEnvironment > &xEnv)
 
css::uno::Reference< css::ucb::XContent > queryChildContent (std::u16string_view rRelativeChildUri)
 
css::uno::Reference< css::io::XStream > getStream (const css::uno::Reference< css::ucb::XCommandEnvironment > &xEnv)
 

Static Private Member Functions

static bool hasData (ContentProvider const *pProvider, const Uri &rUri)
 
static bool loadData (ContentProvider const *pProvider, const Uri &rUri, ContentProperties &rProps)
 
static css::uno::Reference< css::sdbc::XRow > getPropertyValues (const css::uno::Reference< css::uno::XComponentContext > &rxContext, const css::uno::Sequence< css::beans::Property > &rProperties, const ContentProperties &rData, ContentProvider *pProvider, const OUString &rContentId)
 
static bool commitStorage (const css::uno::Reference< css::embed::XStorage > &xStorage)
 
static bool closeOutputStream (const css::uno::Reference< css::io::XOutputStream > &xOut)
 

Private Attributes

ContentProperties m_aProps
 
ContentState m_eState
 
ContentProviderm_pProvider
 

Additional Inherited Members

- Protected Member Functions inherited from ucbhelper::ContentImplHelper
css::uno::Reference< css::beans::XPropertySetInfo > getPropertySetInfo (const css::uno::Reference< css::ucb::XCommandEnvironment > &xEnv, bool bCache=true)
 
css::uno::Reference< css::ucb::XCommandInfo > getCommandInfo (const css::uno::Reference< css::ucb::XCommandEnvironment > &xEnv, bool bCache=true)
 
void notifyPropertiesChange (const css::uno::Sequence< css::beans::PropertyChangeEvent > &evt) const
 
void notifyPropertySetInfoChange (const css::beans::PropertySetInfoChangeEvent &evt) const
 
void notifyContentEvent (const css::ucb::ContentEvent &evt) const
 
void inserted ()
 
void deleted ()
 
bool exchange (const css::uno::Reference< css::ucb::XContentIdentifier > &rNewId)
 
css::uno::Reference< css::ucb::XPersistentPropertySet > getAdditionalPropertySet (bool bCreate)
 
bool renameAdditionalPropertySet (const OUString &rOldKey, const OUString &rNewKey)
 
bool copyAdditionalPropertySet (const OUString &rSourceKey, const OUString &rTargetKey)
 
bool removeAdditionalPropertySet ()
 
- Protected Attributes inherited from ucbhelper::ContentImplHelper
osl::Mutex m_aMutex
 
css::uno::Reference< css::uno::XComponentContext > m_xContext
 
css::uno::Reference< css::ucb::XContentIdentifier > m_xIdentifier
 
rtl::Reference< ContentProviderImplHelperm_xProvider
 
sal_uInt32 m_nCommandId
 

Detailed Description

Definition at line 88 of file tdoc_content.hxx.

Member Typedef Documentation

◆ ContentRef

Definition at line 137 of file tdoc_content.hxx.

◆ ContentRefList

typedef std::vector< ContentRef > tdoc_ucp::Content::ContentRefList
private

Definition at line 138 of file tdoc_content.hxx.

Member Enumeration Documentation

◆ ContentState

Enumerator
TRANSIENT 
PERSISTENT 
DEAD 

Definition at line 91 of file tdoc_content.hxx.

Constructor & Destructor Documentation

◆ Content() [1/2]

tdoc_ucp::Content::Content ( const css::uno::Reference< css::uno::XComponentContext > &  rxContext,
ContentProvider pProvider,
const css::uno::Reference< css::ucb::XContentIdentifier > &  Identifier,
ContentProperties  aProps 
)
private

◆ Content() [2/2]

tdoc_ucp::Content::Content ( const css::uno::Reference< css::uno::XComponentContext > &  rxContext,
ContentProvider pProvider,
const css::uno::Reference< css::ucb::XContentIdentifier > &  Identifier,
const css::ucb::ContentInfo &  Info 
)
private

◆ ~Content()

Content::~Content ( )
overridevirtual

Definition at line 172 of file tdoc_content.cxx.

Member Function Documentation

◆ abort()

void SAL_CALL Content::abort ( sal_Int32  CommandId)
overridevirtual

Implements ucbhelper::ContentImplHelper.

Definition at line 609 of file tdoc_content.cxx.

◆ acquire()

void SAL_CALL Content::acquire ( )
overridevirtualnoexcept

Reimplemented from ucbhelper::ContentImplHelper.

Definition at line 181 of file tdoc_content.cxx.

◆ closeOutputStream()

bool Content::closeOutputStream ( const css::uno::Reference< css::io::XOutputStream > &  xOut)
staticprivate

Definition at line 2583 of file tdoc_content.cxx.

References TOOLS_WARN_EXCEPTION.

◆ commitStorage()

bool Content::commitStorage ( const css::uno::Reference< css::embed::XStorage > &  xStorage)
staticprivate

Definition at line 2556 of file tdoc_content.cxx.

References TOOLS_WARN_EXCEPTION.

Referenced by copyData(), and removeData().

◆ copyData()

bool Content::copyData ( const Uri rSourceUri,
const OUString &  rNewName 
)
private

◆ create() [1/2]

static rtl::Reference< Content > tdoc_ucp::Content::create ( const css::uno::Reference< css::uno::XComponentContext > &  rxContext,
ContentProvider pProvider,
const css::uno::Reference< css::ucb::XContentIdentifier > &  Identifier 
)
static

◆ create() [2/2]

static rtl::Reference< Content > tdoc_ucp::Content::create ( const css::uno::Reference< css::uno::XComponentContext > &  rxContext,
ContentProvider pProvider,
const css::uno::Reference< css::ucb::XContentIdentifier > &  Identifier,
const css::ucb::ContentInfo &  Info 
)
static

◆ createNewContent()

virtual css::uno::Reference< css::ucb::XContent > SAL_CALL tdoc_ucp::Content::createNewContent ( const css::ucb::ContentInfo &  Info)
overridevirtual

◆ destroy()

void tdoc_ucp::Content::destroy ( bool  bDeletePhysical,
const css::uno::Reference< css::ucb::XCommandEnvironment > &  xEnv 
)
private
Exceptions
css::uno::Exception

◆ exchangeIdentity()

bool tdoc_ucp::Content::exchangeIdentity ( const css::uno::Reference< css::ucb::XContentIdentifier > &  xNewId)
private

◆ execute()

virtual css::uno::Any SAL_CALL tdoc_ucp::Content::execute ( const css::ucb::Command &  aCommand,
sal_Int32  CommandId,
const css::uno::Reference< css::ucb::XCommandEnvironment > &  Environment 
)
overridevirtual

◆ getCommands()

virtual css::uno::Sequence< css::ucb::CommandInfo > tdoc_ucp::Content::getCommands ( const css::uno::Reference< css::ucb::XCommandEnvironment > &  xEnv)
overrideprivatevirtual

◆ getContentProvider()

rtl::Reference< ContentProvider > tdoc_ucp::Content::getContentProvider ( ) const
inline

Definition at line 277 of file tdoc_content.hxx.

References m_pProvider.

◆ getContentType()

OUString SAL_CALL Content::getContentType ( )
overridevirtual

◆ getIdentifier()

uno::Reference< ucb::XContentIdentifier > SAL_CALL Content::getIdentifier ( )
overridevirtual

◆ getImplementationId()

virtual css::uno::Sequence< sal_Int8 > SAL_CALL tdoc_ucp::Content::getImplementationId ( )
overridevirtual

Reimplemented from ucbhelper::ContentImplHelper.

◆ getImplementationName()

OUString SAL_CALL Content::getImplementationName ( )
overridevirtual

Implements ucbhelper::ContentImplHelper.

Definition at line 265 of file tdoc_content.cxx.

◆ getInputStream()

css::uno::Reference< css::io::XInputStream > tdoc_ucp::Content::getInputStream ( const css::uno::Reference< css::ucb::XCommandEnvironment > &  xEnv)
private
Exceptions
css::ucb::CommandFailedException
css::task::DocumentPasswordRequest
css::uno::RuntimeException

◆ getParentURL()

OUString Content::getParentURL ( )
overrideprivatevirtual

◆ getProperties()

virtual css::uno::Sequence< css::beans::Property > tdoc_ucp::Content::getProperties ( const css::uno::Reference< css::ucb::XCommandEnvironment > &  xEnv)
overrideprivatevirtual

◆ getPropertyValues() [1/3]

static css::uno::Reference< css::sdbc::XRow > tdoc_ucp::Content::getPropertyValues ( const css::uno::Reference< css::uno::XComponentContext > &  rxContext,
const css::uno::Sequence< css::beans::Property > &  rProperties,
const ContentProperties rData,
ContentProvider pProvider,
const OUString &  rContentId 
)
staticprivate

◆ getPropertyValues() [2/3]

static css::uno::Reference< css::sdbc::XRow > tdoc_ucp::Content::getPropertyValues ( const css::uno::Reference< css::uno::XComponentContext > &  rxContext,
const css::uno::Sequence< css::beans::Property > &  rProperties,
ContentProvider pProvider,
const OUString &  rContentId 
)
static

◆ getPropertyValues() [3/3]

css::uno::Reference< css::sdbc::XRow > tdoc_ucp::Content::getPropertyValues ( const css::uno::Sequence< css::beans::Property > &  rProperties)
private

◆ getStream()

uno::Reference< io::XStream > Content::getStream ( const css::uno::Reference< css::ucb::XCommandEnvironment > &  xEnv)
private
Exceptions
css::ucb::CommandFailedException
css::task::DocumentPasswordRequest
css::uno::RuntimeException

Definition at line 2748 of file tdoc_content.cxx.

References tdoc_ucp::ContentProperties::getType(), tdoc_ucp::Uri::getUri(), ucbhelper::ContentImplHelper::m_aMutex, m_aProps, m_pProvider, ucbhelper::ContentImplHelper::m_xIdentifier, obtainPassword(), tdoc_ucp::ContentProvider::queryStream(), and tdoc_ucp::STREAM.

◆ getSupportedServiceNames()

uno::Sequence< OUString > SAL_CALL Content::getSupportedServiceNames ( )
overridevirtual

◆ getTruncatedOutputStream()

uno::Reference< io::XOutputStream > Content::getTruncatedOutputStream ( const css::uno::Reference< css::ucb::XCommandEnvironment > &  xEnv)
private
Exceptions
css::ucb::CommandFailedException
css::task::DocumentPasswordRequest
css::uno::RuntimeException

Definition at line 2735 of file tdoc_content.cxx.

References tdoc_ucp::ContentProperties::getType(), tdoc_ucp::Uri::getUri(), lcl_getTruncatedOutputStream(), m_aProps, m_pProvider, ucbhelper::ContentImplHelper::m_xIdentifier, and tdoc_ucp::STREAM.

◆ getTypes()

uno::Sequence< uno::Type > SAL_CALL Content::getTypes ( )
overridevirtual

◆ hasData() [1/2]

bool tdoc_ucp::Content::hasData ( const Uri rUri) const
inlineprivate

Definition at line 118 of file tdoc_content.hxx.

References hasData(), and m_pProvider.

Referenced by hasData().

◆ hasData() [2/2]

bool Content::hasData ( ContentProvider const *  pProvider,
const Uri rUri 
)
staticprivate

◆ insert()

void tdoc_ucp::Content::insert ( const css::uno::Reference< css::io::XInputStream > &  xData,
sal_Int32  nNameClashResolve,
const css::uno::Reference< css::ucb::XCommandEnvironment > &  xEnv 
)
private
Exceptions
css::uno::Exception

◆ loadData()

bool Content::loadData ( ContentProvider const *  pProvider,
const Uri rUri,
ContentProperties rProps 
)
staticprivate

◆ makeNewIdentifier()

uno::Reference< ucb::XContentIdentifier > Content::makeNewIdentifier ( const OUString &  rTitle)
private

◆ notifyChildInserted()

void Content::notifyChildInserted ( std::u16string_view  rRelativeChildUri)

◆ notifyChildRemoved()

void Content::notifyChildRemoved ( std::u16string_view  rRelativeChildUri)

◆ notifyDocumentClosed()

void Content::notifyDocumentClosed ( )

◆ open()

css::uno::Any tdoc_ucp::Content::open ( const css::ucb::OpenCommandArgument2 &  rArg,
const css::uno::Reference< css::ucb::XCommandEnvironment > &  xEnv 
)
private
Exceptions
css::uno::Exception

◆ queryChildContent()

uno::Reference< ucb::XContent > Content::queryChildContent ( std::u16string_view  rRelativeChildUri)
private

◆ queryChildren()

void Content::queryChildren ( ContentRefList rChildren)
private

◆ queryCreatableContentsInfo()

uno::Sequence< ucb::ContentInfo > SAL_CALL Content::queryCreatableContentsInfo ( )
overridevirtual

◆ queryInterface()

virtual css::uno::Any SAL_CALL tdoc_ucp::Content::queryInterface ( const css::uno::Type &  rType)
overridevirtual

Reimplemented from ucbhelper::ContentImplHelper.

◆ release()

void SAL_CALL Content::release ( )
overridevirtualnoexcept

Reimplemented from ucbhelper::ContentImplHelper.

Definition at line 189 of file tdoc_content.cxx.

◆ removeData()

bool Content::removeData ( )
private

◆ renameData()

void tdoc_ucp::Content::renameData ( const css::uno::Reference< css::ucb::XContentIdentifier > &  xOldId,
const css::uno::Reference< css::ucb::XContentIdentifier > &  xNewId 
)
private

◆ setPropertyValues()

css::uno::Sequence< css::uno::Any > tdoc_ucp::Content::setPropertyValues ( const css::uno::Sequence< css::beans::PropertyValue > &  rValues,
const css::uno::Reference< css::ucb::XCommandEnvironment > &  xEnv 
)
private
Exceptions
css::uno::Exception

◆ storeData()

bool tdoc_ucp::Content::storeData ( const css::uno::Reference< css::io::XInputStream > &  xData,
const css::uno::Reference< css::ucb::XCommandEnvironment > &  xEnv 
)
private
Exceptions
css::ucb::CommandFailedException
css::task::DocumentPasswordRequest
css::uno::RuntimeException

◆ transfer()

void tdoc_ucp::Content::transfer ( const css::ucb::TransferInfo &  rInfo,
const css::uno::Reference< css::ucb::XCommandEnvironment > &  xEnv 
)
private
Exceptions
css::uno::Exception

Member Data Documentation

◆ m_aProps

ContentProperties tdoc_ucp::Content::m_aProps
private

◆ m_eState

ContentState tdoc_ucp::Content::m_eState
private

Definition at line 98 of file tdoc_content.hxx.

Referenced by getIdentifier(), and notifyDocumentClosed().

◆ m_pProvider

ContentProvider* tdoc_ucp::Content::m_pProvider
private

The documentation for this class was generated from the following files: