mirror of https://github.com/Icinga/icinga2.git
22 lines
549 B
C++
22 lines
549 B
C++
/* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
|
|
|
|
#include "livestatus/column.hpp"
|
|
|
|
using namespace icinga;
|
|
|
|
Column::Column(ValueAccessor valueAccessor, ObjectAccessor objectAccessor)
|
|
: m_ValueAccessor(std::move(valueAccessor)), m_ObjectAccessor(std::move(objectAccessor))
|
|
{ }
|
|
|
|
Value Column::ExtractValue(const Value& urow, LivestatusGroupByType groupByType, const Object::Ptr& groupByObject) const
|
|
{
|
|
Value row;
|
|
|
|
if (m_ObjectAccessor)
|
|
row = m_ObjectAccessor(urow, groupByType, groupByObject);
|
|
else
|
|
row = urow;
|
|
|
|
return m_ValueAccessor(row);
|
|
}
|