fix: clear UPNP port mapping when exist app (#624)

This commit is contained in:
Levi authored and GitHub committed 2024-07-30 18:43:54 +08:00
1 parent 3b50465708
commit 4fbe13a1f0
22 files changed
+506 -320

No files matched your search

+22 -11
View File
@@ -456,41 +456,48 @@ type fetcherData struct {
Chunks []*chunk
}
type FetcherBuilder struct {
type FetcherManager struct {
}
var schemes = []string{"HTTP", "HTTPS"}
func (fb *FetcherBuilder) Name() string {
func (fm *FetcherManager) Name() string {
return "http"
}
func (fb *FetcherBuilder) Schemes() []string {
return schemes
func (fm *FetcherManager) Filters() []*fetcher.SchemeFilter {
return []*fetcher.SchemeFilter{
{
Type: fetcher.FilterTypeUrl,
Pattern: "HTTP",
},
{
Type: fetcher.FilterTypeUrl,
Pattern: "HTTPS",
},
}
}
func (fb *FetcherBuilder) Build() fetcher.Fetcher {
func (fm *FetcherManager) Build() fetcher.Fetcher {
return &Fetcher{}
}
func (fb *FetcherBuilder) DefaultConfig() any {
func (fm *FetcherManager) DefaultConfig() any {
return &config{
UserAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36",
Connections: 16,
}
}
func (fb *FetcherBuilder) Store(f fetcher.Fetcher) (data any, err error) {
func (fm *FetcherManager) Store(f fetcher.Fetcher) (data any, err error) {
_f := f.(*Fetcher)
return &fetcherData{
Chunks: _f.chunks,
}, nil
}
func (fb *FetcherBuilder) Restore() (v any, f func(meta *fetcher.FetcherMeta, v any) fetcher.Fetcher) {
func (fm *FetcherManager) Restore() (v any, f func(meta *fetcher.FetcherMeta, v any) fetcher.Fetcher) {
return &fetcherData{}, func(meta *fetcher.FetcherMeta, v any) fetcher.Fetcher {
fd := v.(*fetcherData)
fb := &FetcherBuilder{}
fb := &FetcherManager{}
fetcher := fb.Build().(*Fetcher)
fetcher.meta = meta
base.ParseReqExtra[fhttp.ReqExtra](fetcher.meta.Req)
@@ -501,3 +508,7 @@ func (fb *FetcherBuilder) Restore() (v any, f func(meta *fetcher.FetcherMeta, v
return fetcher
}
}
func (fm *FetcherManager) Close() error {
return nil
}