2015-05-08 09:18:56 -04:00
|
|
|
<?php
|
2026-03-26 12:46:27 -04:00
|
|
|
|
|
|
|
|
// SPDX-FileCopyrightText: 2018 Icinga GmbH <https://icinga.com>
|
|
|
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
2015-05-08 09:18:56 -04:00
|
|
|
|
|
|
|
|
namespace Icinga\Data;
|
|
|
|
|
|
|
|
|
|
use Icinga\Data\Filter\Filter;
|
|
|
|
|
use Icinga\Exception\StatementException;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Interface for data updating
|
|
|
|
|
*/
|
|
|
|
|
interface Updatable
|
|
|
|
|
{
|
|
|
|
|
/**
|
|
|
|
|
* Update the target with the given data and optionally limit the affected entries by using a filter
|
|
|
|
|
*
|
2025-11-20 07:44:24 -05:00
|
|
|
* @param string $target
|
|
|
|
|
* @param array $data
|
|
|
|
|
* @param ?Filter $filter
|
2015-05-08 09:18:56 -04:00
|
|
|
*
|
2025-11-20 07:44:24 -05:00
|
|
|
* @throws StatementException
|
2015-05-08 09:18:56 -04:00
|
|
|
*/
|
2025-11-20 07:44:24 -05:00
|
|
|
public function update($target, array $data, ?Filter $filter = null);
|
2015-05-08 09:18:56 -04:00
|
|
|
}
|