Spec-Zone.ru › Homebrew

Класс: Cask::Download Приватный

Наследует:
Object
  • Object
  • Cask::Download
показать все
Включает:
Context, Downloadable
Определён в:
cask/download.rb

Обзор

Этот класс является частью приватного API. Этот класс можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого класса, так как он может быть удалён или изменён без предупреждения.

Загрузка, соответствующая Cask.

Краткое описание атрибутов экземпляра свернуть

  • #cask ⇒ ::Cask::Cask только для чтения приватный

Атрибуты, включённые из Downloadable

#mirrors, #phase

Краткое описание методов экземпляра свернуть

  • #basename ⇒ Pathname приватный
  • #checksum ⇒ ::Checksum? приватный
  • #download_queue_name ⇒ String приватный
  • #download_queue_type ⇒ String приватный
  • #downloaded_and_valid? ⇒ Boolean приватный
  • #fetch(quiet: nil, verify_download_integrity: true, timeout: nil) ⇒ Pathname приватный
  • #initialize(cask, quarantine: nil, require_sha: false) ⇒ void конструктор приватный
  • #time_file_size(timeout: nil) ⇒ Array<([Time, nil], Integer)> приватный
  • #url ⇒ ::URL? приватный
  • #verify_download_integrity(filename) ⇒ void приватный
  • #version ⇒ Version? приватный

Методы, включённые из Context

current, current=, #debug?, #quiet?, #verbose?, #with_context

Методы, включённые из Downloadable

#cached_download, #clear_cache, #download_queue_message, #download_strategy, #downloaded!, #downloaded?, #downloader, #downloading!, #extracting!, #fetched_size, #freeze, #initialize_dup, #total_size, #verified!, #verifying!

Методы, включённые из Utils::Output::Mixin

#issue_reporting_message, #odebug, #odeprecated, #odie, #odisabled, #ofail, #oh1, #oh1_title, #ohai, #ohai_title, #onoe, #opoo, #opoo_outside_github_actions, #opoo_without_github_actions_annotation, #pretty_deprecated, #pretty_disabled, #pretty_duration, #pretty_install_status, #pretty_installed, #pretty_uninstalled, #pretty_upgradable, #pretty_warning

Подробное описание конструкторов

#initialize(cask, quarantine: nil, require_sha: false) ⇒ void

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.

Параметры:

  • cask (::Cask::Cask)
  • quarantine (Boolean, nil) (по умолчанию: nil)
  • require_sha (Boolean) (по умолчанию: false)


26
27
28
29
30
31
32
# File 'cask/download.rb', line 26

def initialize(cask, quarantine: nil, require_sha: false)
  super()

  @cask = cask
  @quarantine = quarantine
  @require_sha = require_sha
end

Подробное описание атрибутов экземпляра

#cask ⇒ ::Cask::Cask (только для чтения)

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Возвращает:

  • (::Cask::Cask)


17
18
19
# File 'cask/download.rb', line 17

def cask
  @cask
end

Подробное описание методов экземпляра

#basename ⇒ Pathname

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Возвращает:

  • (Pathname)


86
87
88
# File 'cask/download.rb', line 86

def basename
  downloader.basename
end

#checksum ⇒ ::Checksum?

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Возвращает:

  • (::Checksum, nil)


42
43
44
# File 'cask/download.rb', line 42

def checksum
  @checksum ||= cask.sha256 if cask.sha256 != :no_check
end

#download_queue_name ⇒ String

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Возвращает:

  • (String)


109
# File 'cask/download.rb', line 109

def download_queue_name = "#{cask.token} (#{version})"

#download_queue_type ⇒ String

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Возвращает:

  • (String)


112
# File 'cask/download.rb', line 112

def download_queue_type = "Cask"

#downloaded_and_valid? ⇒ Boolean

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Возвращает:

  • (Boolean)


91
92
93
94
95
96
# File 'cask/download.rb', line 91

def downloaded_and_valid?
  return false unless super

  quarantine(cached_download)
  true
end

#fetch(quiet: nil, verify_download_integrity: true, timeout: nil) ⇒ Pathname

Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам следует по возможности избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Параметры:

  • quiet (Boolean, nil) (по умолчанию: nil)
  • verify_download_integrity (Boolean) (по умолчанию: true)
  • timeout (Integer, Float, nil) (по умолчанию: nil)

Возвращает:

  • (Pathname)


60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# File 'cask/download.rb', line 60

def fetch(quiet: nil, verify_download_integrity: true, timeout: nil)
  verify_has_sha if @require_sha
  downloader.quiet! if quiet

  begin
    super(verify_download_integrity: false, timeout:)
  rescue DownloadError => e
    error = CaskError.new("Download failed on Cask '#{cask}' with message: #{e.cause}")
    error.set_backtrace e.backtrace
    raise error
  end

  downloaded_path = cached_download
  quarantine(downloaded_path)
  self.verify_download_integrity(downloaded_path) if verify_download_integrity
  downloaded_path
end

#time_file_size(timeout: nil) ⇒ Array<([Time, nil], Integer)>

Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Параметры:

  • timeout (Float, Integer, nil) (по умолчанию: nil)

Возвращает:

  • (Array<([Time, nil], Integer)>)

Вызывает исключения:

  • (ArgumentError)


79
80
81
82
83
# File 'cask/download.rb', line 79

def time_file_size(timeout: nil)
  raise ArgumentError, "not supported for this download strategy" unless downloader.is_a?(CurlDownloadStrategy)

  T.cast(downloader, CurlDownloadStrategy).resolved_time_file_size(timeout:)
end

#url ⇒ ::URL?

Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Возвращает:

  • (::URL, nil)


35
36
37
38
39
# File 'cask/download.rb', line 35

def url
  return if (cask_url = cask.url).nil?

  @url ||= ::URL.new(cask_url.to_s, cask_url.specs)
end

#verify_download_integrity(filename) ⇒ void

Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Этот метод не возвращает определённого значения.

Параметры:

  • filename (Pathname)


99
100
101
102
103
104
105
106
# File 'cask/download.rb', line 99

def verify_download_integrity(filename)
  if no_checksum_defined? && !official_cask_tap?
    opoo "No checksum defined for cask '#{@cask}', skipping verification."
    return
  end

  super
end

#version ⇒ Version?

Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Третьим сторонам по возможности следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.

Возвращает:

  • (Version, nil)


47
48
49
50
51
# File 'cask/download.rb', line 47

def version
  return if cask.version.nil?

  @version ||= Version.new(cask.version)
end

© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/rubydoc/Cask/Download.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API