Sha256: 7704008daa27d5d9c7ff9cd14d2e3375046d7b67bd85886dcbab64c5126e11a6

Contents?: true

Size: 487 Bytes

Versions: 1

Compression:

Stored size: 487 Bytes

Contents

# typed: true
# frozen_string_literal: true

require 'zip'
require 'plist'
require 'net/http'

module MooTool
  # Represents a single IPSW package
  class IPSW
    attr_reader :manifest

    def initialize(file)
      @file = file
      @zip = Zip::File.open(file)
      manifest = @zip.find_entry('BuildManifest.plist')

      raise 'Invalid IPSW, does not contain BuildManifest.plist' unless manifest

      @manifest = Plist.parse_xml manifest.get_input_stream.read
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mootool-0.2.8 lib/mootool/models/ipsw.rb