class CocoaPodsAcknowledgements::SettingsPlistGenerator

Public Class Methods

generate(target_description, sandbox, excluded) click to toggle source
# File lib/cocoapods_acknowledgements/settings_plist_generator.rb, line 8
def generate(target_description, sandbox, excluded)
  root_specs = target_description.specs.map(&:root).uniq.reject { |spec| excluded.include?(spec.name) }

  return nil if root_specs.empty?

  specs_metadata = [header]

  root_specs.each do |spec|
    platform = Pod::Platform.new(target_description.platform_name)
    file_accessor = file_accessor(spec, platform, sandbox)
    license_text = license_text(spec, file_accessor)

    spec_metadata = {
      "Title" => spec.name,
      "Type" => "PSGroupSpecifier",
      "FooterText" => license_text
    }
    specs_metadata << spec_metadata
  end

  specs_metadata << footer
  {
    "PreferenceSpecifiers" => specs_metadata,
    "Title" => "Acknowledgements",
    "StringsTable" => "Acknowledgements"
  }
end
header() click to toggle source
# File lib/cocoapods_acknowledgements/settings_plist_generator.rb, line 36
def header
  {
    "FooterText" => "This application makes use of the following third party libraries:",
    "Title" => "Acknowledgements",
    "Type" => "PSGroupSpecifier"
  }
end