annotate modules/contrib/migrate_plus/migrate_example_advanced/migrate_example_advanced.install @ 0:4c8ae668cc8c

Initial import (non-working)
author Chris Cannam
date Wed, 29 Nov 2017 16:09:58 +0000
parents
children
rev   line source
Chris@0 1 <?php
Chris@0 2
Chris@0 3 /**
Chris@0 4 * @file
Chris@0 5 * Install, update and uninstall functions for the migrate_example_advanced module.
Chris@0 6 */
Chris@0 7
Chris@0 8 use Drupal\migrate_plus\Entity\Migration;
Chris@0 9
Chris@0 10 /**
Chris@0 11 * Implements hook_install().
Chris@0 12 */
Chris@0 13 function migrate_example_advanced_install() {
Chris@0 14 // We need the urls to be absolute for the XML source plugin to read them, but
Chris@0 15 // the static configuration files on disk can't know the server and port to
Chris@0 16 // use. So, in the .yml files we provide the REST resources relative to the
Chris@0 17 // site root and here rewrite them to fully-qualified paths.
Chris@0 18
Chris@0 19 /** @var \Drupal\migrate_plus\Entity\MigrationInterface $wine_role_xml_migration */
Chris@0 20 $wine_role_xml_migration = Migration::load('wine_role_xml');
Chris@0 21 if ($wine_role_xml_migration) {
Chris@0 22 $source = $wine_role_xml_migration->get('source');
Chris@0 23 $request = \Drupal::request();
Chris@0 24 $source['urls'] = 'http://' . $request->getHttpHost() . $source['urls'];
Chris@0 25 $wine_role_xml_migration->set('source', $source);
Chris@0 26 $wine_role_xml_migration->save();
Chris@0 27 }
Chris@0 28 /** @var \Drupal\migrate_plus\Entity\MigrationInterface $wine_role_json_migration */
Chris@0 29 $wine_role_json_migration = Migration::load('wine_role_json');
Chris@0 30 if ($wine_role_json_migration) {
Chris@0 31 $source = $wine_role_json_migration->get('source');
Chris@0 32 $request = \Drupal::request();
Chris@0 33 $source['urls'] = 'http://' . $request->getHttpHost() . $source['urls'];
Chris@0 34 $wine_role_json_migration->set('source', $source);
Chris@0 35 $wine_role_json_migration->save();
Chris@0 36 }
Chris@0 37 /** @var \Drupal\migrate_plus\Entity\MigrationInterface $wine_variety_multi_xml_migration */
Chris@0 38 $wine_variety_multi_xml_migration = Migration::load('wine_variety_multi_xml');
Chris@0 39 if ($wine_variety_multi_xml_migration) {
Chris@0 40 $source = $wine_variety_multi_xml_migration->get('source');
Chris@0 41 $request = \Drupal::request();
Chris@0 42 $urls = [];
Chris@0 43 foreach ($source['urls'] as $url) {
Chris@0 44 $urls[] = 'http://' . $request->getHttpHost() . $url;
Chris@0 45 }
Chris@0 46 $source['urls'] = $urls;
Chris@0 47 $wine_variety_multi_xml_migration->set('source', $source);
Chris@0 48 $wine_variety_multi_xml_migration->save();
Chris@0 49 }
Chris@0 50 }