22#include <com/sun/star/sdbcx/CompareBookmark.hpp>
23#include <com/sun/star/beans/XPropertySet.hpp>
27#include <osl/diagnose.h>
39void OStaticSet::fillValueRow(
ORowSetRow& _rRow,sal_Int32 )
53 return absolute(::comphelper::getINT32(bookmark));
58 sal_Int32 nFirst = 0, nSecond = 0;
61 return (nFirst < nSecond) ? CompareBookmark::LESS : ((nFirst > nSecond) ? CompareBookmark::GREATER : CompareBookmark::EQUAL);
71 return ::comphelper::getINT32(bookmark);
83 (**m_aSetIter)[0] =
getRow();
170 OSL_ENSURE(!
isAfterLast(),
"getRow is not allowed when afterlast record!");
171 OSL_ENSURE(!
isBeforeFirst(),
"getRow is not allowed when beforefirst record!");
174 OSL_ENSURE(
nPos > 0,
"RowPos is < 0");
181 OSL_ENSURE(row,
"OStaticSet::absolute: INVALID row number!");
188 sal_Int32 nRow =
getRow();
190 if(nRow <=
static_cast<sal_Int32
>(
m_aSet.size()))
202 for(sal_Int32
i=
m_aSet.size()-1;
i < row && bNext;++
i)
254 (**m_aSetIter)[0] = (*_rInsertRow)[0] =
getBookmark();
264 ORowSetMatrix::iterator aPos =
m_aSet.begin()+(*_rDeleteRow)[0].getInt32();
265 if(aPos == (
m_aSet.end()-1))
277 m_aSet.emplace_back(
nullptr);
css::uno::Reference< css::sdbc::XResultSetMetaData > m_xSetMetaData
css::uno::Reference< css::sdbc::XResultSet > m_xDriverSet
virtual void fillValueRow(ORowSetRow &_rRow, sal_Int32 _nPosition)
virtual void insertRow(const ORowSetRow &_rInsertRow, const connectivity::OSQLTable &_xTable)
virtual void deleteRow(const ORowSetRow &_rDeleteRow, const connectivity::OSQLTable &_xTable)=0
virtual void construct(const css::uno::Reference< css::sdbc::XResultSet > &_xDriverSet, const OUString &i_sRowSetFilter)
virtual sal_Int32 getRow() override
virtual css::uno::Any getBookmark() override
virtual bool first() override
virtual void deleteRow(const ORowSetRow &_rInsertRow, const connectivity::OSQLTable &_xTable) override
virtual void insertRow(const ORowSetRow &_rInsertRow, const connectivity::OSQLTable &_xTable) override
virtual bool previous() override
virtual void beforeFirst() override
virtual bool rowDeleted() override
virtual bool moveToBookmark(const css::uno::Any &bookmark) override
virtual bool absolute(sal_Int32 row) override
virtual sal_Int32 hashBookmark(const css::uno::Any &bookmark) override
virtual sal_Int32 compareBookmarks(const css::uno::Any &first, const css::uno::Any &second) override
virtual bool rowInserted() override
virtual void reset(const css::uno::Reference< css::sdbc::XResultSet > &_xDriverSet) override
virtual bool hasOrderedBookmarks() override
virtual void afterLast() override
virtual bool rowUpdated() override
ORowSetMatrix::iterator m_aSetIter
virtual bool next() override
virtual void refreshRow() override
virtual bool last() override
css::uno::Reference< css::sdbcx::XColumnsSupplier > OSQLTable
std::vector< ORowSetRow > ORowSetMatrix
constexpr std::enable_if_t< std::is_signed_v< T >, std::make_unsigned_t< T > > make_unsigned(T value)