You are here

function find_existing_views_data_tables in Views Database Connector 8

Find all tables that are already processed by hook_views_data().

Return value

array $existing_tables Existing tables.

1 call to find_existing_views_data_tables()
views_database_connector_views_data in ./views_database_connector.views.inc
Implements hook_views_data().

File

./views_database_connector.views.inc, line 127
Responsible for hooking views to add each database and its tables.

Code

function find_existing_views_data_tables() {

  /** @var \Drupal\Core\Extension\ModuleHandlerInterface $module_handler */
  $module_handler = Drupal::service('module_handler');
  $modules = $module_handler
    ->getImplementations('views_data');
  $existing_tables = [];
  foreach ($modules as $module) {
    if ($module !== 'views_database_connector') {
      $views_data = $module_handler
        ->invoke($module, 'views_data');
    }

    // Set the provider key for each base table.
    foreach ($views_data as $table_name => $table) {
      $existing_tables[$table_name] = $table_name;
    }
  }
  return $existing_tables;
}