| @@ 254-283 (lines=30) @@ | ||
| 251 | /** |
|
| 252 | * Resolves the canonical column types of the audit table columns. |
|
| 253 | */ |
|
| 254 | private function resolveCanonicalAuditColumns() |
|
| 255 | { |
|
| 256 | if (empty($this->config['audit_columns'])) |
|
| 257 | { |
|
| 258 | $this->auditColumnsMetadata = new TableColumnsMetadata(); |
|
| 259 | } |
|
| 260 | else |
|
| 261 | { |
|
| 262 | $schema = $this->config['database']['audit_schema']; |
|
| 263 | $tableName = '_TMP_'.uniqid(); |
|
| 264 | AuditDataLayer::createTemporaryTable($schema, $tableName, $this->config['audit_columns']); |
|
| 265 | $columns = AuditDataLayer::getTableColumns($schema, $tableName); |
|
| 266 | AuditDataLayer::dropTemporaryTable($schema, $tableName); |
|
| 267 | ||
| 268 | foreach ($this->config['audit_columns'] as $audit_column) |
|
| 269 | { |
|
| 270 | $key = StaticDataLayer::searchInRowSet('column_name', $audit_column['column_name'], $columns); |
|
| 271 | if (isset($audit_column['value_type'])) |
|
| 272 | { |
|
| 273 | $columns[$key]['value_type'] = $audit_column['value_type']; |
|
| 274 | } |
|
| 275 | if (isset($audit_column['expression'])) |
|
| 276 | { |
|
| 277 | $columns[$key]['expression'] = $audit_column['expression']; |
|
| 278 | } |
|
| 279 | } |
|
| 280 | ||
| 281 | $this->auditColumnsMetadata = new TableColumnsMetadata($columns, 'AuditColumnMetadata'); |
|
| 282 | } |
|
| 283 | } |
|
| 284 | ||
| 285 | //-------------------------------------------------------------------------------------------------------------------- |
|
| 286 | } |
|
| @@ 195-224 (lines=30) @@ | ||
| 192 | /** |
|
| 193 | * Resolves the canonical column types of the audit table columns. |
|
| 194 | */ |
|
| 195 | protected function resolveCanonicalAuditColumns() |
|
| 196 | { |
|
| 197 | if (empty($this->config['audit_columns'])) |
|
| 198 | { |
|
| 199 | $this->auditColumnsMetadata = new TableColumnsMetadata(); |
|
| 200 | } |
|
| 201 | else |
|
| 202 | { |
|
| 203 | $schema = $this->config['database']['audit_schema']; |
|
| 204 | $tableName = '_TMP_'.uniqid(); |
|
| 205 | AuditDataLayer::createTemporaryTable($schema, $tableName, $this->config['audit_columns']); |
|
| 206 | $columns = AuditDataLayer::getTableColumns($schema, $tableName); |
|
| 207 | AuditDataLayer::dropTemporaryTable($schema, $tableName); |
|
| 208 | ||
| 209 | foreach ($this->config['audit_columns'] as $audit_column) |
|
| 210 | { |
|
| 211 | $key = StaticDataLayer::searchInRowSet('column_name', $audit_column['column_name'], $columns); |
|
| 212 | if (isset($audit_column['value_type'])) |
|
| 213 | { |
|
| 214 | $columns[$key]['value_type'] = $audit_column['value_type']; |
|
| 215 | } |
|
| 216 | if (isset($audit_column['expression'])) |
|
| 217 | { |
|
| 218 | $columns[$key]['expression'] = $audit_column['expression']; |
|
| 219 | } |
|
| 220 | } |
|
| 221 | ||
| 222 | $this->auditColumnsMetadata = new TableColumnsMetadata($columns, 'AuditColumnMetadata'); |
|
| 223 | } |
|
| 224 | } |
|
| 225 | ||
| 226 | //-------------------------------------------------------------------------------------------------------------------- |
|
| 227 | /** |
|