mirror of
				https://github.com/Icinga/icingaweb2.git
				synced 2025-10-31 11:24:51 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			65 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| // {{{ICINGA_LICENSE_HEADER}}}
 | |
| // {{{ICINGA_LICENSE_HEADER}}}
 | |
| 
 | |
| namespace Icinga\Module\Monitoring\Form\Command;
 | |
| 
 | |
| use Icinga\Module\Monitoring\Backend\MonitoringBackend;
 | |
| use Icinga\Module\Monitoring\Command\Transport\CommandTransport;
 | |
| use Icinga\Web\Form;
 | |
| use Icinga\Web\Request;
 | |
| 
 | |
| /**
 | |
|  * Base class for command forms
 | |
|  */
 | |
| abstract class CommandForm extends Form
 | |
| {
 | |
|     /**
 | |
|      * Monitoring backend
 | |
|      *
 | |
|      * @var Backend
 | |
|      */
 | |
|     protected $backend;
 | |
| 
 | |
|     /**
 | |
|      * Set the monitoring backend
 | |
|      *
 | |
|      * @param   MonitoringBackend $backend
 | |
|      *
 | |
|      * @return  $this
 | |
|      */
 | |
|     public function setBackend(MonitoringBackend $backend)
 | |
|     {
 | |
|         $this->backend = $backend;
 | |
|         return $this;
 | |
|     }
 | |
| 
 | |
|     /**
 | |
|      * Get the monitoring backend
 | |
|      *
 | |
|      * @return Backend
 | |
|      */
 | |
|     public function getBackend()
 | |
|     {
 | |
|         return $this->backend;
 | |
|     }
 | |
| 
 | |
|     /**
 | |
|      * Get the transport used to send commands
 | |
|      *
 | |
|      * @param   Request $request
 | |
|      *
 | |
|      * @return  \Icinga\Module\Monitoring\Command\Transport\CommandTransportInterface
 | |
|      */
 | |
|     public function getTransport(Request $request)
 | |
|     {
 | |
|         $instance = $request->getParam('instance');
 | |
|         if ($instance !== null) {
 | |
|             $transport = CommandTransport::create($instance);
 | |
|         } else {
 | |
|             $transport = CommandTransport::first();
 | |
|         }
 | |
|         return $transport;
 | |
|     }
 | |
| }
 |