Updated gemfile, added comments to repairer, updater, and uninstaller task stubs

This commit is contained in:
2021-11-22 12:36:38 -06:00
parent b3665af5c4
commit 8c8a051034
6 changed files with 54 additions and 1 deletions

View File

@@ -3,4 +3,5 @@ source "https://rubygems.org"
gem "cyberarm_engine"
gem "launchy"
gem "i18n"
gem "rexml"
# gem "async-websocket"

View File

@@ -4,6 +4,7 @@ GEM
addressable (2.8.0)
public_suffix (>= 2.0.2, < 5.0)
clipboard (1.3.6)
concurrent-ruby (1.1.9)
cyberarm_engine (0.19.1)
clipboard (~> 1.3.5)
excon (~> 0.78.0)
@@ -12,9 +13,12 @@ GEM
excon (0.78.1)
gosu (1.2.0)
gosu_more_drawables (0.3.1)
i18n (1.8.11)
concurrent-ruby (~> 1.0)
launchy (2.5.0)
addressable (~> 2.7)
public_suffix (4.0.6)
rexml (3.2.5)
PLATFORMS
x64-mingw32
@@ -22,7 +26,9 @@ PLATFORMS
DEPENDENCIES
cyberarm_engine
i18n
launchy
rexml
BUNDLED WITH
2.2.28

View File

@@ -1,6 +1,19 @@
class W3DHub
class ApplicationManager
class Repairer < Task
def type
:repairer
end
def exec_task
# fetch manifests
# load manifests
# run presence and checksum checks
# extract and re/place broken/missing files
# if a large number of files are missing from a single package
# simply reextract the whole thing
# mark application as installed/repaired
end
end
end
end

View File

@@ -1,6 +1,21 @@
class W3DHub
class ApplicationManager
class Uninstaller < Task
def type
:uninstaller
end
def exec_task
# TODO: cherrypick or nuke installation folder
# A:
# fetch manifests
# load manifests
# build list of files
# delete list of files
# B:
# Nuke installation folder
# mark application as uninstalled
end
end
end
end

View File

@@ -0,0 +1,19 @@
class W3DHub
class ApplicationManager
class Updater < Task
def type
:updater
end
def exec_task
# Fetch manifests
# Load manifests
# build file list
# find new packages
# unpack new packages
# TODO: detect patch files and handle them
# update installed game version
end
end
end
end

View File

@@ -12,7 +12,6 @@ require "rexml"
require "i18n"
require "launchy"
require "zip"
I18n.load_path << Dir[File.expand_path("locales") + "/*.yml"]
I18n.default_locale = :en