6#include <icomp/CComponentBase.h>
9#include <imtcol/ICollectionHeadersProvider.h>
16class CCollectionHeadersProviderComp :
public icomp::CComponentBase,
virtual public ICollectionHeadersProvider
19 typedef icomp::CComponentBase BaseClass;
21 I_BEGIN_COMPONENT(CCollectionHeadersProviderComp);
22 I_REGISTER_INTERFACE(imtcol::ICollectionHeadersProvider);
23 I_ASSIGN_MULTI_0(m_headersIdsAttrPtr,
"HeaderIds",
"Headers Ids",
true);
24 I_ASSIGN_MULTI_0(m_arrayTypeHeadersIdsAttrPtr,
"ArrayTypeHeaderIds",
"List of header IDs that represent ARRAY-type fields. Any header NOT listed here is treated as SCALAR by default.",
false);
25 I_ASSIGN_MULTI_0(m_headersNamesAttrPtr,
"HeaderNames",
"Headers names",
true);
26 I_ASSIGN_MULTI_0(m_sortableHeaderIdsAttrPtr,
"SortableHeaderIds",
"Header-IDs that can be sorted",
false);
27 I_ASSIGN_MULTI_0(m_filterableHeaderIdsAttrPtr,
"FilterableHeaderIds",
"Header-IDs that can be filtered",
false);
28 I_ASSIGN_MULTI_0(m_headerPermissionsAttrPtr,
"HeaderPermissions",
"Header access permissions",
false);
33 virtual HeaderIds GetHeaderIds()
const override;
34 virtual bool GetHeaderInfo(
const QByteArray& headerId, HeaderInfo& headerInfo)
const override;
37 I_MULTIATTR(QByteArray, m_headersIdsAttrPtr);
38 I_MULTIATTR(QByteArray, m_arrayTypeHeadersIdsAttrPtr);
39 I_MULTITEXTATTR(m_headersNamesAttrPtr);
40 I_MULTIATTR(QByteArray, m_sortableHeaderIdsAttrPtr);
41 I_MULTIATTR(QByteArray, m_filterableHeaderIdsAttrPtr);
42 I_MULTIATTR(QByteArray, m_headerPermissionsAttrPtr);