You are here

public function PartyB2BContactPartyMigration::__construct in Party 7

Same name and namespace in other branches
  1. 8.2 starterkits/party_starterkit_b2b/party_starterkit_b2b_migrate/party_starterkit_b2b_migrate_contacts.inc \PartyB2BContactPartyMigration::__construct()

General initialization of a Migration object.

Overrides Migration::__construct

File

starterkits/party_starterkit_b2b/party_starterkit_b2b_migrate/party_starterkit_b2b_migrate_contacts.inc, line 78
Migrate Contacts into Party

Class

PartyB2BContactPartyMigration
Create Parties for the Profile2s created by PartyB2BContactProfileMigration

Code

public function __construct() {
  parent::__construct();
  $this->description = t('Migration of organizations from Profile2 to Party entities.');
  $this->dependencies = array(
    'PartyB2BContactProfile2',
    'PartyB2BOrganizationParty',
  );
  $this->map = new MigrateSQLMap($this->machineName, array(
    'contact_id' => array(
      'type' => 'int',
      'unsigned' => TRUE,
      'not null' => TRUE,
    ),
  ), MigrateDestinationEntityAPI::getKeySchema('party'));

  // MigrateSource
  // This should be the same CSV file as the MigrateSource for PartyOrganizationProfile2 migration.
  $this->source = new MigrateSourceCSV(__DIR__ . '/contact.csv', $this
    ->csvcolumns(), array(
    'header_rows' => 1,
  ));

  // MigrateDestination
  $this->destination = new MigrateDestinationEntityAPI('party', 'party');

  // Field Mappings
  $this
    ->addFieldMapping('profile2_id', 'contact_id')
    ->sourceMigration('PartyB2BContactProfile2');
  $this
    ->addfieldMapping('org_id', 'org_id')
    ->sourceMigration('PartyB2BOrganizationParty');
}