public function audit(MigrationInterface
$migration) { // If the migration does not opt into auditing, it passes.
if (!
$migration->
isAuditable()) { return AuditResult::
pass($migration);
} $interface = HighestIdInterface::
class;
$destination =
$migration->
getDestinationPlugin();
if (!
$destination instanceof HighestIdInterface
) { throw new AuditException($migration, "Destination does not implement
$interface"
);
} $id_map =
$migration->
getIdMap();
if (!
$id_map instanceof HighestIdInterface
) { throw new AuditException($migration, "ID map does not implement
$interface"
);
} if ($destination->
getHighestId() >
$id_map->
getHighestId() || ($destination instanceof EntityContentComplete && !
$this->
auditEntityComplete($migration))) { return AuditResult::
fail($migration,
[ $this->
t('The destination system contains data which was not created by a migration.'
),
]);
}