diff options
Diffstat (limited to '')
-rw-r--r-- | library/Director/Db/Branch/MergeError.php | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/library/Director/Db/Branch/MergeError.php b/library/Director/Db/Branch/MergeError.php new file mode 100644 index 0000000..45c7b5e --- /dev/null +++ b/library/Director/Db/Branch/MergeError.php @@ -0,0 +1,37 @@ +<?php + +namespace Icinga\Module\Director\Db\Branch; + +use Exception; +use gipfl\Translation\TranslationHelper; + +abstract class MergeError extends Exception +{ + use TranslationHelper; + + /** @var BranchActivity */ + protected $activity; + + public function __construct(BranchActivity $activity) + { + $this->activity = $activity; + parent::__construct($this->prepareMessage()); + } + + abstract protected function prepareMessage(); + + public function getObjectTypeName() + { + return preg_replace('/^icinga_/', '', $this->getActivity()->getObjectTable()); + } + + public function getNiceObjectName() + { + return $this->activity->getObjectName(); + } + + public function getActivity() + { + return $this->activity; + } +} |