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…
Reference in New Issue