1<?php 2/* Copyright (c) 1998-2013 ILIAS open source, Extended GPL, see docs/LICENSE */ 3 4require_once 'Modules/TestQuestionPool/classes/questions/class.ilAssQuestionSolutionComparisonExpressionImport.php'; 5 6/** 7 * @author Björn Heyser <bheyser@databay.de> 8 * @version $Id$ 9 * 10 * @package Modules/TestQuestionPool 11 */ 12class ilAssQuestionSolutionComparisonExpressionImportList implements Iterator 13{ 14 /** 15 * @var integer 16 */ 17 private $importQuestionId; 18 19 /** 20 * @var integer 21 */ 22 private $importSkillBaseId; 23 24 /** 25 * @var integer 26 */ 27 private $importSkillTrefId; 28 29 /** 30 * @var array 31 */ 32 private $expressions; 33 34 /** 35 * ilAssQuestionSolutionComparisonExpressionImportList constructor. 36 */ 37 public function __construct() 38 { 39 $this->importQuestionId = null; 40 $this->importSkillBaseId = null; 41 $this->importSkillTrefId = null; 42 43 $this->expressions = array(); 44 } 45 46 /** 47 * @return int 48 */ 49 public function getImportQuestionId() 50 { 51 return $this->importQuestionId; 52 } 53 54 /** 55 * @param int $importQuestionId 56 */ 57 public function setImportQuestionId($importQuestionId) 58 { 59 $this->importQuestionId = $importQuestionId; 60 } 61 62 /** 63 * @return int 64 */ 65 public function getImportSkillBaseId() 66 { 67 return $this->importSkillBaseId; 68 } 69 70 /** 71 * @param int $importSkillBaseId 72 */ 73 public function setImportSkillBaseId($importSkillBaseId) 74 { 75 $this->importSkillBaseId = $importSkillBaseId; 76 } 77 78 /** 79 * @return int 80 */ 81 public function getImportSkillTrefId() 82 { 83 return $this->importSkillTrefId; 84 } 85 86 /** 87 * @param int $importSkillTrefId 88 */ 89 public function setImportSkillTrefId($importSkillTrefId) 90 { 91 $this->importSkillTrefId = $importSkillTrefId; 92 } 93 94 /** 95 * @return array 96 */ 97 public function getExpressions() 98 { 99 return $this->expressions; 100 } 101 102 public function addExpression(ilAssQuestionSolutionComparisonExpressionImport $expression) 103 { 104 $expression->setImportQuestionId($this->getImportQuestionId()); 105 $expression->setImportSkillBaseId($this->getImportSkillBaseId()); 106 $expression->setImportSkillTrefId($this->getImportSkillTrefId()); 107 108 $this->expressions[$expression->getOrderIndex()] = $expression; 109 } 110 111 /** 112 * @return ilAssQuestionSolutionComparisonExpressionImport 113 */ 114 public function current() 115 { 116 return current($this->expressions); 117 } 118 119 /** 120 * @return ilAssQuestionSolutionComparisonExpressionImport 121 */ 122 public function next() 123 { 124 return next($this->expressions); 125 } 126 127 /** 128 * @return integer|bool 129 */ 130 public function key() 131 { 132 return key($this->expressions); 133 } 134 135 /** 136 * @return bool 137 */ 138 public function valid() 139 { 140 return key($this->expressions) !== null; 141 } 142 143 /** 144 * @return ilAssQuestionSolutionComparisonExpressionImport|bool 145 */ 146 public function rewind() 147 { 148 return reset($this->expressions); 149 } 150 151 public function sleep() 152 { 153 // TODO: Implement __sleep() method. 154 } 155 156 public function wakeup() 157 { 158 // TODO: Implement __wakeup() method. 159 } 160} 161