name = $object->hostname . ';' . $object->service; $this->hostname = $object->hostname; $this->service = $object->service; $this->bp = $bp; if (isset($object->state)) { $this->setState($object->state); } else { $this->setState(0)->setMissing(); } } public function renderLink($view) { if ($this->isMissing()) { return '' . $view->escape($this->getAlias()) . ''; } $params = array( 'host' => $this->getHostname(), 'service' => $this->getServiceDescription() ); if ($this->bp->hasBackendName()) { $params['backend'] = $this->bp->getBackendName(); } $link = $view->qlink($this->getAlias(), 'monitoring/service/show', $params); return $link; } protected function getActionIcons($view) { $icons = array(); if (! $this->bp->isLocked()) { $url = Url::fromPath( 'businessprocess/node/simulate', array( 'config' => $this->bp->getName(), 'node' => $this->name )); $icons[] = $this->actionIcon( $view, 'magic', $url, 'Simulation' ); } return $icons; } public function getHostname() { return $this->hostname; } public function getServiceDescription() { return $this->service; } public function getAlias() { return $this->hostname . ': ' . $this->service; } }