ILIAS
trunk Revision v11.0_alpha-2638-g80c1d007f79
◀ ilDoc Overview
class.ilAssQuestionProcessLockerFactory.php
Go to the documentation of this file.
1
<?php
2
25
class
ilAssQuestionProcessLockerFactory
26
{
30
protected
$settings
;
31
35
protected
$db
;
36
40
protected
$question_id
;
41
45
protected
$userId
;
46
51
public
function
__construct
(
ilSetting
$settings
,
ilDBInterface
$db
)
52
{
53
$this->
settings
=
$settings
;
54
$this->db =
$db
;
55
56
$this->question_id =
null
;
57
$this->userId =
null
;
58
}
59
63
public
function
setQuestionId
($questionId): void
64
{
65
$this->question_id = $questionId;
66
}
67
71
public
function
getQuestionId
(): ?
int
72
{
73
return
$this->question_id
;
74
}
75
79
public
function
setUserId
(
$userId
): void
80
{
81
$this->userId =
$userId
;
82
}
83
87
public
function
getUserId
(): ?
int
88
{
89
return
$this->userId
;
90
}
91
92
private
function
getLockModeSettingValue
(): ?string
93
{
94
return
$this->
settings
->get(
'ass_process_lock_mode'
,
ilObjTestFolder::ASS_PROC_LOCK_MODE_NONE
);
95
}
96
100
public
function
getLocker
()
101
{
102
switch
($this->
getLockModeSettingValue
()) {
103
case
ilObjTestFolder::ASS_PROC_LOCK_MODE_NONE
:
104
105
$locker =
new
ilAssQuestionProcessLockerNone
();
106
break
;
107
108
case
ilObjTestFolder::ASS_PROC_LOCK_MODE_FILE
:
109
$storage =
new
ilAssQuestionProcessLockFileStorage
($this->
getQuestionId
(), $this->
getUserId
());
110
$storage->create();
111
112
$locker =
new
ilAssQuestionProcessLockerFile
($storage);
113
break
;
114
115
case
ilObjTestFolder::ASS_PROC_LOCK_MODE_DB
:
116
117
$locker =
new
ilAssQuestionProcessLockerDb
($this->db);
118
break
;
119
}
120
121
return
$locker;
122
}
123
}
ilAssQuestionProcessLockFileStorage
Definition:
class.ilAssQuestionProcessLockFileStorage.php:24
ilAssQuestionProcessLockerFactory\setQuestionId
setQuestionId($questionId)
Definition:
class.ilAssQuestionProcessLockerFactory.php:63
ilAssQuestionProcessLockerFile
Definition:
class.ilAssQuestionProcessLockerFile.php:25
ilAssQuestionProcessLockerFactory\setUserId
setUserId($userId)
Definition:
class.ilAssQuestionProcessLockerFactory.php:79
ilAssQuestionProcessLockerFactory\__construct
__construct(ilSetting $settings, ilDBInterface $db)
Definition:
class.ilAssQuestionProcessLockerFactory.php:51
ilObjTestFolder\ASS_PROC_LOCK_MODE_FILE
const ASS_PROC_LOCK_MODE_FILE
Definition:
ilObjTestFolder.php:36
ilObjTestFolder\ASS_PROC_LOCK_MODE_NONE
const ASS_PROC_LOCK_MODE_NONE
Definition:
ilObjTestFolder.php:35
ilObjTestFolder\ASS_PROC_LOCK_MODE_DB
const ASS_PROC_LOCK_MODE_DB
Definition:
ilObjTestFolder.php:37
ilAssQuestionProcessLockerNone
Definition:
class.ilAssQuestionProcessLockerNone.php:25
ilAssQuestionProcessLockerFactory\getLockModeSettingValue
getLockModeSettingValue()
Definition:
class.ilAssQuestionProcessLockerFactory.php:92
ilAssQuestionProcessLockerFactory\$db
$db
Definition:
class.ilAssQuestionProcessLockerFactory.php:35
null
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
Definition:
shib_logout.php:144
ilAssQuestionProcessLockerFactory\$question_id
$question_id
Definition:
class.ilAssQuestionProcessLockerFactory.php:40
ilAssQuestionProcessLockerDb
Definition:
class.ilAssQuestionProcessLockerDb.php:25
ilDBInterface
ILIAS\Repository\settings
settings()
Definition:
trait.GlobalDICDomainServices.php:96
ilAssQuestionProcessLockerFactory\$settings
$settings
Definition:
class.ilAssQuestionProcessLockerFactory.php:30
ilAssQuestionProcessLockerFactory\getUserId
getUserId()
Definition:
class.ilAssQuestionProcessLockerFactory.php:87
ilAssQuestionProcessLockerFactory\getLocker
getLocker()
Definition:
class.ilAssQuestionProcessLockerFactory.php:100
ilAssQuestionProcessLockerFactory\getQuestionId
getQuestionId()
Definition:
class.ilAssQuestionProcessLockerFactory.php:71
ilAssQuestionProcessLockerFactory\$userId
$userId
Definition:
class.ilAssQuestionProcessLockerFactory.php:45
ILIAS\Repository\int
int(string $key)
Definition:
trait.BaseGUIRequest.php:61
ilSetting
ilAssQuestionProcessLockerFactory
Definition:
class.ilAssQuestionProcessLockerFactory.php:25
components
ILIAS
TestQuestionPool
classes
class.ilAssQuestionProcessLockerFactory.php
Generated on Sun Aug 31 2025 23:04:02 for ILIAS by
1.8.13 (using
Doxyfile
)