ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
exception.ilAtomQueryException.php
Go to the documentation of this file.
1<?php
2require_once('exception.ilDatabaseException.php');
3
10{
11 const DB_ATOM_GENERAL = 10900;
17 const DB_ATOM_LOCK_NO_TABLE = 10906;
18 const DB_ATOM_CLOSURE_NONE = 10907;
21
22
27 protected function tranlateException($code)
28 {
29 $message = 'An undefined Exception occured';
30 switch ($code) {
31 case static::DB_ATOM_GENERAL:
32 $message = 'An undefined exception in ilAtomQuery has occured';
33 break;
34 case static::DB_ATOM_LOCK_TABLE_NONEXISTING:
35 $message = 'Table locks only work with existing tables';
36 break;
37 case static::DB_ATOM_LOCK_WRONG_LEVEL:
38 $message = 'The current Isolation-level does not support the desired lock-level. use ilAtomQuery::LOCK_READ or ilAtomQuery::LOCK_WRITE';
39 break;
40 case static::DB_ATOM_CLOSURE_WRONG_FORMAT:
41 $message = 'Please provide a Closure with your database-actions by adding with ilAtomQuery->addQueryClosure(function($ilDB) use ($my_vars) { $ilDB->doStuff(); });';
42 break;
43 case static::DB_ATOM_ISO_WRONG_LEVEL:
44 $message = 'This isolation-level is currently unsupported';
45 break;
46 case static::DB_ATOM_ANO_NOT_AVAILABLE:
47 $message = 'Anomaly not available';
48 break;
49 case static::DB_ATOM_LOCK_NO_TABLE:
50 $message = 'ilAtomQuery needs at least one table to be locked';
51 break;
52 case static::DB_ATOM_CLOSURE_NONE:
53 $message = 'There is no Closure available';
54 break;
55 case static::DB_ATOM_CLOSURE_ALREADY_SET:
56 $message = 'Only one Closure per ilAtomQuery is possible';
57 break;
58 case static::DB_ATOM_IDENTICAL_TABLES:
59 $message = 'A Table and/or alias-name can only be locked once';
60 break;
61 }
62
63 return 'ilAtomQuery: ' . $message . '. ';
64 }
65}
An exception for terminatinating execution or to throw for unit testing.
Class ilAtomQueryException.
Class ilDatabaseException.
$code
Definition: example_050.php:99
catch(Exception $e) $message