20#ifndef INCLUDED_UCBHELPER_PROPERTYVALUESET_HXX
21#define INCLUDED_UCBHELPER_PROPERTYVALUESET_HXX
23#include <com/sun/star/sdbc/XColumnLocate.hpp>
24#include <com/sun/star/sdbc/XRow.hpp>
25#include <com/sun/star/beans/Property.hpp>
58 public cppu::WeakImplHelper<
60 css::sdbc::XColumnLocate>
62 css::uno::Reference< css::uno::XComponentContext >
m_xContext;
73 template <
class T, T ucbhelper_impl::PropertyValue::*_member_name_>
76 template <
class T, T ucbhelper_impl::PropertyValue::*_member_name_>
77 void appendValue(
const OUString& rPropName,
PropsSet nTypeName,
const T& rValue);
81 const css::uno::Reference< css::uno::XComponentContext >& rxContext );
87 virtual OUString SAL_CALL
88 getString( sal_Int32 columnIndex )
override;
90 getBoolean( sal_Int32 columnIndex )
override;
92 getByte( sal_Int32 columnIndex )
override;
93 virtual sal_Int16 SAL_CALL
94 getShort( sal_Int32 columnIndex )
override;
95 virtual sal_Int32 SAL_CALL
96 getInt( sal_Int32 columnIndex )
override;
97 virtual sal_Int64 SAL_CALL
98 getLong( sal_Int32 columnIndex )
override;
99 virtual float SAL_CALL
100 getFloat( sal_Int32 columnIndex )
override;
101 virtual double SAL_CALL
102 getDouble( sal_Int32 columnIndex )
override;
103 virtual css::uno::Sequence< sal_Int8 > SAL_CALL
104 getBytes( sal_Int32 columnIndex )
override;
105 virtual css::util::Date SAL_CALL
106 getDate( sal_Int32 columnIndex )
override;
107 virtual css::util::Time SAL_CALL
108 getTime( sal_Int32 columnIndex )
override;
109 virtual css::util::DateTime SAL_CALL
110 getTimestamp( sal_Int32 columnIndex )
override;
111 virtual css::uno::Reference<
112 css::io::XInputStream > SAL_CALL
113 getBinaryStream( sal_Int32 columnIndex )
override;
114 virtual css::uno::Reference<
115 css::io::XInputStream > SAL_CALL
116 getCharacterStream( sal_Int32 columnIndex )
override;
117 virtual css::uno::Any SAL_CALL
118 getObject( sal_Int32 columnIndex,
119 const css::uno::Reference<
120 css::container::XNameAccess >& typeMap )
override;
121 virtual css::uno::Reference<
122 css::sdbc::XRef > SAL_CALL
123 getRef( sal_Int32 columnIndex )
override;
124 virtual css::uno::Reference<
125 css::sdbc::XBlob > SAL_CALL
126 getBlob( sal_Int32 columnIndex )
override;
127 virtual css::uno::Reference<
128 css::sdbc::XClob > SAL_CALL
129 getClob( sal_Int32 columnIndex )
override;
130 virtual css::uno::Reference<
131 css::sdbc::XArray > SAL_CALL
132 getArray( sal_Int32 columnIndex )
override;
135 virtual sal_Int32 SAL_CALL
136 findColumn(
const OUString& columnName )
override;
141 void appendString(
const OUString& rPropName,
const OUString& rValue );
142 void appendString(
const css::beans::Property& rProp,
const OUString& rValue )
144 appendString( rProp.Name, rValue );
147 void appendBoolean(
const OUString& rPropName,
bool bValue );
150 appendBoolean( rProp.Name, bValue );
153 void appendLong(
const OUString& rPropName, sal_Int64 nValue );
154 void appendLong(
const css::beans::Property& rProp, sal_Int64 nValue )
156 appendLong( rProp.Name,
nValue );
160 void appendTimestamp(
const css::beans::Property& rProp,
const css::util::DateTime& rValue )
162 appendTimestamp( rProp.Name, rValue );
165 void appendObject(
const OUString& rPropName,
const css::uno::Any& rValue );
166 void appendObject(
const css::beans::Property& rProp,
const css::uno::Any& rValue )
168 appendObject( rProp.Name, rValue );
171 void appendVoid(
const OUString& rPropName );
174 appendVoid( rProp.Name );
183 void appendPropertySet(
const css::uno::Reference< css::beans::XPropertySet >& rSet );
194 bool appendPropertySetValue(
195 const css::uno::Reference< css::beans::XPropertySet >& rSet,
196 const css::beans::Property& rProperty );
This class implements the interface XRow.
std::unique_ptr< PropertyValues > m_pValues
css::uno::Reference< css::uno::XComponentContext > m_xContext
void appendVoid(const css::beans::Property &rProp)
bool m_bTriedToGetTypeConverter
void appendLong(const css::beans::Property &rProp, sal_Int64 nValue)
void appendTimestamp(const css::beans::Property &rProp, const css::util::DateTime &rValue)
void appendString(const css::beans::Property &rProp, const OUString &rValue)
void appendObject(const OUString &rPropName, const css::uno::Any &rValue)
css::uno::Reference< css::script::XTypeConverter > m_xTypeConverter
void appendTimestamp(const OUString &rPropName, const css::util::DateTime &rValue)
void appendBoolean(const css::beans::Property &rProp, bool bValue)
void appendObject(const css::beans::Property &rProp, const css::uno::Any &rValue)
class SAL_NO_VTABLE XPropertySet
double getDouble(const Any &_rAny)
float getFloat(const Any &_rAny)
OUString getString(const Any &_rAny)
std::map< sal_Int32, std::shared_ptr< SetItemPropertyStorage > > PropertyValues
css::beans::Optional< css::uno::Any > getValue(std::u16string_view id)
VBAHELPER_DLLPUBLIC css::uno::Reference< css::script::XTypeConverter > const & getTypeConverter(const css::uno::Reference< css::uno::XComponentContext > &xContext)
#define UCBHELPER_DLLPUBLIC
#define UCBHELPER_DLLPRIVATE