// SPDX-License-Identifier: GPL-3.0-or-later namespace Icinga\Module\Icingadb\Model; use ipl\Orm\Behavior\Binary; use ipl\Orm\Behaviors; use Icinga\Module\Icingadb\Common\Model; use ipl\Orm\Relations; /** * @property string $id * @property string $eventcommand_id * @property string $customvar_id * @property string $environment_id */ class EventcommandCustomvar extends Model { public function getTableName() { return 'eventcommand_customvar'; } public function getKeyName() { return 'id'; } public function getColumns() { return [ 'eventcommand_id', 'customvar_id', 'environment_id' ]; } public function createBehaviors(Behaviors $behaviors) { $behaviors->add(new Binary([ 'id', 'eventcommand_id', 'customvar_id', 'environment_id' ])); } public function createRelations(Relations $relations) { $relations->belongsTo('environment', Environment::class); $relations->belongsTo('eventcommand', Eventcommand::class); $relations->belongsTo('customvar', Customvar::class); $relations->belongsTo('customvar_flat', CustomvarFlat::class) ->setCandidateKey('customvar_id') ->setForeignKey('customvar_id'); } }