/** * Creates a DataTable for one record from an archive data row. * * @see makeFromBlobRow * * @param array $blobRow * @return DataTable */ private function makeDataTableFromSingleBlob($blobRow) { $recordName = reset($this->dataNames); if ($this->idSubtable !== null) { $recordName .= '_' . $this->idSubtable; } if (!empty($blobRow[$recordName])) { $table = DataTable::fromSerializedArray($blobRow[$recordName]); } else { $table = new DataTable(); } // set table metadata $table->setMetadataValues(DataCollection::getDataRowMetadata($blobRow)); if ($this->expandDataTable) { $table->enableRecursiveFilters(); $this->setSubtables($table, $blobRow); } return $table; }