You are here

public function CRMCoreDataImport::getMigrationInstances in CRM Core 7

Returns all available migration instances.

File

modules/crm_core_data_import/includes/controllers/CRMCoreDataImport.inc, line 186
Handler for data imports in CRM Core

Class

CRMCoreDataImport
@file Handler for data imports in CRM Core

Code

public function getMigrationInstances() {
  $mapping = $this
    ->getMappingSettings();
  $migrations = array();
  if (!empty($mapping)) {
    foreach ($mapping as $key => $mapping_item) {
      list($entity_controller_type, $entity_bundle, $bundle_delta) = explode(':', $key);
      $entity_type = crm_core_data_import_get_destination_entity_type($entity_controller_type);
      $machine_name = _crm_core_data_import_migration_machine_name($this->id, $entity_type, $entity_bundle, $bundle_delta);
      $migration = Migration::getInstance($machine_name);
      if ($migration) {
        $migrations[] = $migration;
      }

      // Remove errors "No migration found" if migration not available.
      drupal_get_messages('error');
    }
  }
  return $migrations;
}