* Add sigs and docs to transformers * Add sigs and docs to downloaders * Adds sigs and docs to importers
53 lines
1.3 KiB
Text
53 lines
1.3 KiB
Text
module Granblue
|
|
module Downloaders
|
|
class BaseDownloader
|
|
SIZES: Array[String]
|
|
|
|
# Define allowed storage types
|
|
type storage = :local | :s3 | :both
|
|
|
|
@id: String
|
|
@base_url: String
|
|
@test_mode: bool
|
|
@verbose: bool
|
|
@storage: storage
|
|
@aws_service: AwsService
|
|
|
|
def initialize: (String id, ?test_mode: bool, ?verbose: bool, ?storage: storage) -> void
|
|
|
|
def download: -> void
|
|
|
|
private
|
|
|
|
def process_download: (String url, String size, String path, ?last: bool) -> void
|
|
|
|
def download_to_local: (String url, String download_uri) -> void
|
|
|
|
def stream_to_s3: (String url, String s3_key) -> void
|
|
|
|
def download_to_both: (String url, String download_uri, String s3_key) -> void
|
|
|
|
def should_download?: (String local_path, String s3_key) -> bool
|
|
|
|
def ensure_directories_exist: -> void
|
|
|
|
def store_locally?: -> bool
|
|
|
|
def download_path: (String size) -> String
|
|
|
|
def build_s3_key: (String size, String filename) -> String
|
|
|
|
def log_info: (String message) -> void
|
|
|
|
def download_elemental_image: (String url, String size, String path, String filename) -> void
|
|
|
|
def object_type: -> String
|
|
|
|
def base_url: -> String
|
|
|
|
def directory_for_size: (String size) -> String
|
|
|
|
def build_url: (String size) -> String
|
|
end
|
|
end
|
|
end
|