blacktop / go-download

Golang download manager package

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

go-download

Go Go Reference License

Golang download manager package.


Install

$ go get github.com/blacktop/go-download

Getting Started

package main

import (
    "context"
    "log/slog"
    "os"
    "os/signal"
    "syscall"    

    "github.com/blacktop/go-download"
)

func main() {
    ctx, stop := signal.NotifyContext(context.Background(), syscall.SIGINT, syscall.SIGTERM)
    defer stop()

    log := slog.NewJSONHandler(os.Stdout, nil)

    mgr, err := download.New(&download.Config{
        Context:  ctx,
        Logger:   log,
        Progress: true,
        Parts:    4,
    })
    if err != nil {
        log.Error(err.Error())
        os.Exit(1)
    }

    if err := mgr.Get(os.Args[1]); err != nil {
        log.Error(err.Error())
        os.Exit(1)
    }
}

License

MIT Copyright (c) 2024 blacktop

About

Golang download manager package

License:MIT License


Languages

Language:Go 100.0%