1<?php 2 3/* Copyright (c) 1998-2018 ILIAS open source, Extended GPL, see docs/LICENSE */ 4 5/** 6 * Condition service 7 * 8 * @author @leifos.de 9 * @ingroup 10 */ 11class ilConditionService 12{ 13 /** 14 * @var ilConditionObjectAdapterInterface 15 */ 16 protected $cond_obj_adapter; 17 18 /** 19 * Constructor 20 */ 21 protected function __construct(ilConditionObjectAdapterInterface $cond_obj_adapter = null) 22 { 23 if (is_null($cond_obj_adapter)) { 24 $this->cond_obj_adapter = new ilConditionObjectAdapter(); 25 } 26 } 27 28 /** 29 * Get instance 30 * 31 * @return ilConditionService 32 */ 33 public static function getInstance(ilConditionObjectAdapterInterface $cond_obj_adapter = null) 34 { 35 return new self($cond_obj_adapter); 36 } 37 38 /** 39 * factory 40 * 41 * @return ilConditionFactory 42 */ 43 public function factory() 44 { 45 return new ilConditionFactory($this->cond_obj_adapter); 46 } 47 48 /** 49 * utilities 50 * 51 * @return ilConditionUtil 52 */ 53 public function util() 54 { 55 return new ilConditionUtil(); 56 } 57} 58