hensei-api/lib/granblue/downloaders/download_manager.rb
Justin Edmund 0d5d4d5f59
Jedmund/import (#167)
* Move app/helpers/granblue_wiki to lib/parsers/wiki

This clears up the namespace beginning with "Granblue"

* Removed some top-level Granblue libs

DataImporter and DownloadManager exist inside of the PostDeployment namespace now so these files are redundant

* Fix Downloaders namespace

Our namespace was singular Downloader, now it is plural Downloaders to match the folder name

* Fix import paths

* DownloadManager was moved to downloaders/
* import_data task now uses the PostDeployment version of DataImporter

* Update application.rb

Eager-Load/Autoload the lib/ folder

* Update cors.rb

Add Granblue website and Extension ID to CORS

* Add transformers

Transformers take raw data from Granblue Fantasy and transforms them into hensei-compatible JSON. Transformers heavily borrow from vazkii/hensei-transfer.

* Add ImportController and route

This adds the controller that handles creating a full party from transformed Granblue Fantasy data
2025-01-17 12:02:12 -08:00

28 lines
828 B
Ruby

# frozen_string_literal: true
module Granblue
module Downloaders
class DownloadManager
class << self
def download_for_object(type, granblue_id, test_mode: false, verbose: false, storage: :both)
downloader_options = {
test_mode: test_mode,
verbose: verbose,
storage: storage
}
case type
when 'character'
CharacterDownloader.new(granblue_id, **downloader_options).download
when 'weapon'
WeaponDownloader.new(granblue_id, **downloader_options).download
when 'summon'
SummonDownloader.new(granblue_id, **downloader_options).download
else
log_info "Unknown object type: #{type}" if verbose || test_mode
end
end
end
end
end
end