ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ilADTDBBridge Class Reference

ADT DB bridge base class. More...

+ Inheritance diagram for ilADTDBBridge:
+ Collaboration diagram for ilADTDBBridge:

Public Member Functions

 __construct (ilADT $a_adt)
 Constructor. More...
 
 getADT ()
 
 setTable (string $a_table)
 
 getTable ()
 
 setElementId (string $a_value)
 Set element id (aka DB column[s] [prefix]) More...
 
 getElementId ()
 Get element id. More...
 
 setPrimary (array $a_value)
 Set primary fields (in MDB2 format) More...
 
 getAdditionalPrimaryFields ()
 
 getPrimary ()
 Get primary fields. More...
 
 buildPrimaryWhere ()
 Convert primary keys array to sql string. More...
 
 readRecord (array $a_row)
 Import DB values to ADT. More...
 
 prepareInsert (array &$a_fields)
 Prepare ADT values for insert. More...
 
 afterInsert ()
 After insert hook to enable sub-tables. More...
 
 prepareUpdate (array &$a_fields)
 
 afterUpdate ()
 After update hook to enable sub-tables. More...
 
 afterDelete ()
 After delete hook to enable sub-tables. More...
 
 supportsDefaultValueColumn ()
 true if table storage relies on the default 'value' column More...
 

Protected Member Functions

 isValidADT (ilADT $a_adt)
 
 setADT (ilADT $a_adt)
 

Protected Attributes

ilADT $adt
 
string $table
 
string $id
 
array $primary = []
 
ilDBInterface $db
 

Detailed Description

ADT DB bridge base class.

Author
Jörg Lützenkirchen luetz.nosp@m.enki.nosp@m.rchen.nosp@m.@lei.nosp@m.fos.c.nosp@m.om

Definition at line 25 of file class.ilADTDBBridge.php.

Constructor & Destructor Documentation

◆ __construct()

ilADTDBBridge::__construct ( ilADT  $a_adt)

Constructor.

Parameters
ilADT$a_adt

Definition at line 38 of file class.ilADTDBBridge.php.

39 {
40 global $DIC;
41
42 $this->db = $DIC->database();
43 $this->setADT($a_adt);
44 }
setADT(ilADT $a_adt)
global $DIC
Definition: shib_login.php:26

References $DIC, and setADT().

+ Here is the call graph for this function:

Member Function Documentation

◆ afterDelete()

ilADTDBBridge::afterDelete ( )

After delete hook to enable sub-tables.

Reimplemented in ilADTMultiDBBridge, and ilADTGroupDBBridge.

Definition at line 160 of file class.ilADTDBBridge.php.

160 : void
161 {
162 }

◆ afterInsert()

ilADTDBBridge::afterInsert ( )

After insert hook to enable sub-tables.

Reimplemented in ilADTMultiDBBridge, ilADTGroupDBBridge, ilADTLocalizedTextDBBridge, and ilADTMultiEnumDBBridge.

Definition at line 141 of file class.ilADTDBBridge.php.

141 : void
142 {
143 }

◆ afterUpdate()

ilADTDBBridge::afterUpdate ( )

After update hook to enable sub-tables.

Reimplemented in ilADTMultiDBBridge, ilADTGroupDBBridge, ilADTLocalizedTextDBBridge, and ilADTMultiEnumDBBridge.

Definition at line 153 of file class.ilADTDBBridge.php.

153 : void
154 {
155 }

◆ buildPrimaryWhere()

ilADTDBBridge::buildPrimaryWhere ( )

Convert primary keys array to sql string.

Returns
string
See also
ilADTActiveRecord (:TODO: needed for multi)

Definition at line 117 of file class.ilADTDBBridge.php.

117 : string
118 {
119 $sql = [];
120 foreach ($this->primary as $field => $def) {
121 $sql[] = $field . "=" . $this->db->quote($def[1], $def[0]);
122 }
123 return implode(" AND ", $sql);
124 }

Referenced by ilADTMultiEnumDBBridge\deleteIndices(), ilADTLocalizedTextDBBridge\deleteTranslations(), and ilADTMultiDBBridge\readRecord().

+ Here is the caller graph for this function:

◆ getAdditionalPrimaryFields()

ilADTDBBridge::getAdditionalPrimaryFields ( )

Reimplemented in ilADTLocalizedTextDBBridge.

Definition at line 98 of file class.ilADTDBBridge.php.

98 : array
99 {
100 return [];
101 }

◆ getADT()

◆ getElementId()

◆ getPrimary()

ilADTDBBridge::getPrimary ( )

Get primary fields.

Returns
array

Definition at line 107 of file class.ilADTDBBridge.php.

107 : array
108 {
109 return $this->primary;
110 }

References $primary.

Referenced by ilADTGroupDBBridge\afterUpdateElement(), ilADTMultiEnumDBBridge\insertIndices(), ilADTLocalizedTextDBBridge\insertTranslations(), ilADTGroupDBBridge\prepareElements(), and ilADTGroupDBBridge\setPrimary().

+ Here is the caller graph for this function:

◆ getTable()

ilADTDBBridge::getTable ( )

Reimplemented in ilADTLocalizedTextDBBridge, and ilADTMultiEnumDBBridge.

Definition at line 66 of file class.ilADTDBBridge.php.

66 : ?string
67 {
68 return $this->table;
69 }

References $table.

Referenced by ilADTMultiDBBridge\getSubTableName(), ilADTGroupDBBridge\prepareElements(), and ilADTGroupDBBridge\setTable().

+ Here is the caller graph for this function:

◆ isValidADT()

◆ prepareInsert()

ilADTDBBridge::prepareInsert ( array &  $a_fields)
abstract

◆ prepareUpdate()

ilADTDBBridge::prepareUpdate ( array &  $a_fields)

Definition at line 145 of file class.ilADTDBBridge.php.

145 : void
146 {
147 $this->prepareInsert($a_fields);
148 }
prepareInsert(array &$a_fields)
Prepare ADT values for insert.

References prepareInsert().

+ Here is the call graph for this function:

◆ readRecord()

◆ setADT()

ilADTDBBridge::setADT ( ilADT  $a_adt)
protected

Definition at line 48 of file class.ilADTDBBridge.php.

48 : void
49 {
50 if (!$this->isValidADT($a_adt)) {
51 throw new \InvalidArgumentException('ADTDBBridge Type mismatch.');
52 }
53 $this->adt = $a_adt;
54 }
isValidADT(ilADT $a_adt)

References isValidADT().

Referenced by __construct().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setElementId()

ilADTDBBridge::setElementId ( string  $a_value)

Set element id (aka DB column[s] [prefix])

Parameters
string$a_value

Definition at line 75 of file class.ilADTDBBridge.php.

75 : void
76 {
77 $this->id = $a_value;
78 }

◆ setPrimary()

ilADTDBBridge::setPrimary ( array  $a_value)

Set primary fields (in MDB2 format)

Parameters
array$a_value

Reimplemented in ilADTGroupDBBridge.

Definition at line 93 of file class.ilADTDBBridge.php.

93 : void
94 {
95 $this->primary = $a_value;
96 }

Referenced by ilADTTest\initDBBridge().

+ Here is the caller graph for this function:

◆ setTable()

ilADTDBBridge::setTable ( string  $a_table)

Reimplemented in ilADTGroupDBBridge.

Definition at line 61 of file class.ilADTDBBridge.php.

61 : void
62 {
63 $this->table = $a_table;
64 }

Referenced by ilADTTest\initDBBridge().

+ Here is the caller graph for this function:

◆ supportsDefaultValueColumn()

ilADTDBBridge::supportsDefaultValueColumn ( )

true if table storage relies on the default 'value' column

Returns
bool

Reimplemented in ilADTEnumDBBridge, ilADTExternalLinkDBBridge, ilADTLocationDBBridge, and ilADTMultiEnumDBBridge.

Definition at line 168 of file class.ilADTDBBridge.php.

168 : bool
169 {
170 return true;
171 }

Field Documentation

◆ $adt

ilADT ilADTDBBridge::$adt
protected

Definition at line 27 of file class.ilADTDBBridge.php.

Referenced by getADT(), and ilADTLocalizedTextDBBridge\isValidADT().

◆ $db

ilDBInterface ilADTDBBridge::$db
protected

Definition at line 32 of file class.ilADTDBBridge.php.

◆ $id

string ilADTDBBridge::$id
protected

Definition at line 29 of file class.ilADTDBBridge.php.

Referenced by getElementId().

◆ $primary

array ilADTDBBridge::$primary = []
protected

Definition at line 30 of file class.ilADTDBBridge.php.

Referenced by getPrimary().

◆ $table

string ilADTDBBridge::$table
protected

Definition at line 28 of file class.ilADTDBBridge.php.

Referenced by getTable().


The documentation for this class was generated from the following file: