diff options
Diffstat (limited to 'steam/http.go')
| -rw-r--r-- | steam/http.go | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/steam/http.go b/steam/http.go deleted file mode 100644 index df756e4..0000000 --- a/steam/http.go +++ /dev/null @@ -1,61 +0,0 @@ -package steam - -import ( - "fmt" - "net/http" - "os" - "strconv" -) - -// ExtractFile is a wrapper around Extract that handles an HTTP endpoint. -// this spawns an "extractFile" on the library. Status will be updated there -// as this goes along. Non fatal and fatal errors will be populated there -func (l *Library) ExtractFile(fn string) (*Game, error) { - g := &Game{} - j := newJob("extractFile", g) - defer j.done() - - l.status.addJob(j) - - fi, err := os.Stat(fn) - if err != nil { - j.addError(err) - return g, err - } - j.setSize(fi.Size()) - - fh, err := os.Open(fn) - if err != nil { - j.addError(err) - return g, err - } - - return l.extractUpdate(j, g, fh) -} - -// ExtractHTTP is a wrapper around Extract that handles an HTTP endpoint. -// this spawns an "extractHTTP" on the library. Status will be updated there -// as this goes along. Non fatal and fatal errors will be populated there -func (l *Library) ExtractHTTP(url string) (*Game, error) { - g := &Game{} - j := newJob("extractHTTP", g) - defer j.done() - - l.status.addJob(j) - - resp, err := http.Get(url) - if err != nil { - j.addError(err) - return g, err - } - - estSize, err := strconv.ParseInt(resp.Header.Get("Estimated-size"), 10, 64) - if err != nil { - j.addError(err) - return g, fmt.Errorf("Failed to convert estimated size header: %w", err) - } - - j.setSize(estSize) - - return l.extractUpdate(j, g, resp.Body) -} |
