LibreOffice Module ucb (master)
1
|
#include <sortdynres.hxx>
Public Member Functions | |
SortedDynamicResultSet (const css::uno::Reference< css::ucb::XDynamicResultSet > &xOriginal, const css::uno::Sequence< css::ucb::NumberedSortingInfo > &aOptions, const css::uno::Reference< css::ucb::XAnyCompareFactory > &xCompFac, const css::uno::Reference< css::uno::XComponentContext > &rxContext) | |
virtual | ~SortedDynamicResultSet () override |
virtual OUString SAL_CALL | getImplementationName () override |
virtual sal_Bool SAL_CALL | supportsService (const OUString &ServiceName) override |
virtual css::uno::Sequence< OUString > SAL_CALL | getSupportedServiceNames () override |
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::sdbc::XResultSet > SAL_CALL | getStaticResultSet () override |
virtual void SAL_CALL | setListener (const css::uno::Reference< css::ucb::XDynamicResultSetListener > &Listener) override |
virtual void SAL_CALL | connectToCache (const css::uno::Reference< css::ucb::XDynamicResultSet > &xCache) override |
virtual sal_Int16 SAL_CALL | getCapabilities () override |
void | impl_disposing () |
void | impl_notify (const css::ucb::ListEvent &Changes) |
In the first notify-call the listener gets the two <type>XResultSet</type>s and has to hold them. More... | |
Private Member Functions | |
void | SendNotify () |
Private Attributes | |
std::unique_ptr< comphelper::OInterfaceContainerHelper3< css::lang::XEventListener > > | mpDisposeEventListeners |
css::uno::Reference< css::ucb::XDynamicResultSetListener > | mxListener |
css::uno::Reference< css::ucb::XDynamicResultSet > | mxOriginal |
css::uno::Sequence< css::ucb::NumberedSortingInfo > | maOptions |
css::uno::Reference< css::ucb::XAnyCompareFactory > | mxCompFac |
css::uno::Reference< css::uno::XComponentContext > | m_xContext |
rtl::Reference< SortedResultSet > | mxOne |
rtl::Reference< SortedResultSet > | mxTwo |
rtl::Reference< SortedDynamicResultSetListener > | mxOwnListener |
EventList | maActions |
osl::Mutex | maMutex |
bool | mbGotWelcome:1 |
bool | mbUseOne:1 |
bool | mbStatic:1 |
Definition at line 37 of file sortdynres.hxx.
SortedDynamicResultSet::SortedDynamicResultSet | ( | const css::uno::Reference< css::ucb::XDynamicResultSet > & | xOriginal, |
const css::uno::Sequence< css::ucb::NumberedSortingInfo > & | aOptions, | ||
const css::uno::Reference< css::ucb::XAnyCompareFactory > & | xCompFac, | ||
const css::uno::Reference< css::uno::XComponentContext > & | rxContext | ||
) |
Definition at line 50 of file sortdynres.cxx.
References m_xContext.
|
overridevirtual |
Definition at line 70 of file sortdynres.cxx.
|
overridevirtual |
Definition at line 119 of file sortdynres.cxx.
References getContainerMutex(), and maMutex.
|
overridevirtual |
Definition at line 181 of file sortdynres.cxx.
References Exception, m_xContext, mxListener, and xTarget.
Definition at line 101 of file sortdynres.cxx.
References maMutex.
|
overridevirtual |
Definition at line 212 of file sortdynres.cxx.
References maMutex.
|
overridevirtual |
Definition at line 84 of file sortdynres.cxx.
|
overridevirtual |
Definition at line 144 of file sortdynres.cxx.
References SortedResultSet::Initialize(), maMutex, and mxListener.
|
overridevirtual |
Definition at line 94 of file sortdynres.cxx.
void SortedDynamicResultSet::impl_disposing | ( | ) |
css::uno::RuntimeException |
Definition at line 371 of file sortdynres.cxx.
References mxListener.
void SortedDynamicResultSet::impl_notify | ( | const css::ucb::ListEvent & | Changes | ) |
In the first notify-call the listener gets the two <type>XResultSet</type>s and has to hold them.
css::uno::RuntimeException |
The <type>XResultSet</type>s are implementations of the service <type>ContentResultSet</type>.
The notified new <type>XResultSet</type> will stay valid after returning notification. The old one will become invalid after returning notification.
While in notify-call the listener is allowed to read old and new version, except in the first call, where only the new Resultset is valid.
The Listener is allowed to blockade this call, until he really want to go to the new version. The only situation, where the listener has to return the update call at once is, while he disposes his broadcaster or while he is removing himself as listener (otherwise you deadlock)!!!
Definition at line 245 of file sortdynres.cxx.
References Any, SortedResultSet::CheckProperties(), SortedResultSet::CopyData(), SortedResultSet::GetCount(), SortedResultSet::getPropertyValue(), SortedResultSet::InsertNew(), maMutex, SortedResultSet::Move(), SortedResultSet::Remove(), SortedResultSet::ResortModified(), SortedResultSet::ResortNew(), and SortedResultSet::SetChanged().
|
overridevirtual |
Definition at line 131 of file sortdynres.cxx.
References maMutex.
|
private |
Definition at line 379 of file sortdynres.cxx.
References i, mxListener, and nCount.
|
overridevirtual |
Definition at line 164 of file sortdynres.cxx.
References maMutex, and mxListener.
|
overridevirtual |
Definition at line 89 of file sortdynres.cxx.
References cppu::supportsService().
|
private |
Definition at line 48 of file sortdynres.hxx.
|
private |
Definition at line 54 of file sortdynres.hxx.
|
private |
Definition at line 55 of file sortdynres.hxx.
|
private |
Definition at line 46 of file sortdynres.hxx.
|
private |
Definition at line 56 of file sortdynres.hxx.
|
private |
Definition at line 58 of file sortdynres.hxx.
|
private |
Definition at line 57 of file sortdynres.hxx.
|
private |
Definition at line 41 of file sortdynres.hxx.
|
private |
Definition at line 47 of file sortdynres.hxx.
|
private |
Definition at line 43 of file sortdynres.hxx.
|
private |
Definition at line 50 of file sortdynres.hxx.
|
private |
Definition at line 45 of file sortdynres.hxx.
|
private |
Definition at line 52 of file sortdynres.hxx.
|
private |
Definition at line 51 of file sortdynres.hxx.