You are here

function archiver_get_archiver in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 core/includes/common.inc \archiver_get_archiver()

Creates the appropriate archiver for the specified file.

Parameters

$file: The full path of the archive file. Note that stream wrapper paths are supported, but not remote ones.

Return value

A newly created instance of the archiver class appropriate for the specified file, already bound to that file. If no appropriate archiver class was found, will return FALSE.

1 call to archiver_get_archiver()
update_manager_archive_extract in core/modules/update/update.manager.inc
Unpacks a downloaded archive file.

File

core/includes/common.inc, line 1246
Common functions that many Drupal modules will need to reference.

Code

function archiver_get_archiver($file) {

  // Archivers can only work on local paths
  $filepath = drupal_realpath($file);
  if (!is_file($filepath)) {
    throw new Exception(t('Archivers can only operate on local files: %file not supported', array(
      '%file' => $file,
    )));
  }
  return \Drupal::service('plugin.manager.archiver')
    ->getInstance(array(
    'filepath' => $filepath,
  ));
}