Warning: session_start(): open(/var/lib/php/sessions/sess_7kvat8rht12ehq5f0o1fgke6c4, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
// TODO: run dbBot()
sclass ConceptsLoadedOnDemand {
new Map loaded; // key = just the case ID. value can be null in case of error
L onCaseLoaded; // L
Lock lock = lock();
Concepts get(S caseID) { ret conceptsForCase(caseID); }
Concepts conceptsForCase(S caseID) {
lock lock;
assertNempty(+caseID);
if (loaded.containsKey(caseID))
ret assertNotNull("Concepts load error", loaded.get(caseID));
S id = combineWithSlash(getDBProgramID(), caseID);
print("Loading concepts for case " + id);
Concepts c = new Concepts(id);
loaded.put(caseID, c);
pcallFAll(onCaseLoaded, caseID, c);
ret c;
}
void cleanMeUp {
cleanUpAndClear(loaded);
}
void onLoad(VF2 f) {
onLoad = listCreateAndAdd(onLoad, f);
}
}