mirror of
https://github.com/Icinga/icingaweb2.git
synced 2025-07-31 01:34:09 +02:00
monitoring/lib: Add iterator for iterating over non-pseudo monitoring query columns
refs #9956
This commit is contained in:
parent
5008537683
commit
0a8369e6e5
@ -0,0 +1,33 @@
|
|||||||
|
<?php
|
||||||
|
/* Icinga Web 2 | (c) 2013-2015 Icinga Development Team | GPLv2+ */
|
||||||
|
|
||||||
|
namespace Icinga\Module\Monitoring\Data;
|
||||||
|
|
||||||
|
use ArrayIterator;
|
||||||
|
use FilterIterator;
|
||||||
|
use Zend_Db_Expr;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Iterator over non-pseudo monitoring query columns
|
||||||
|
*/
|
||||||
|
class ColumnFilterIterator extends FilterIterator
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Create a new ColumnFilterIterator
|
||||||
|
*
|
||||||
|
* @param array $columns
|
||||||
|
*/
|
||||||
|
public function __construct(array $columns)
|
||||||
|
{
|
||||||
|
parent::__construct(new ArrayIterator($columns));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@inheritdoc}
|
||||||
|
*/
|
||||||
|
public function accept()
|
||||||
|
{
|
||||||
|
$column = $this->current();
|
||||||
|
return ! ($column instanceof Zend_Db_Expr || $column === '(NULL)');
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user