Rework tracker status lines
This commit is contained in:
parent
cad8802e9c
commit
15fff58d7b
|
@ -603,11 +603,11 @@ func (t *Torrent) writeStatus(w io.Writer) {
|
||||||
fmt.Fprintf(w, "Enabled trackers:\n")
|
fmt.Fprintf(w, "Enabled trackers:\n")
|
||||||
func() {
|
func() {
|
||||||
tw := tabwriter.NewWriter(w, 0, 0, 2, ' ', 0)
|
tw := tabwriter.NewWriter(w, 0, 0, 2, ' ', 0)
|
||||||
fmt.Fprintf(tw, " URL\tNext announce\tLast announce\n")
|
fmt.Fprintf(tw, " URL\tExtra\n")
|
||||||
for _, ta := range slices.Sort(slices.FromMapElems(t.trackerAnnouncers), func(l, r torrentTrackerAnnouncer) bool {
|
for _, ta := range slices.Sort(slices.FromMapElems(t.trackerAnnouncers), func(l, r torrentTrackerAnnouncer) bool {
|
||||||
lu := l.URL()
|
lu := l.URL()
|
||||||
ru := r.URL()
|
ru := r.URL()
|
||||||
var luns, runs url.URL = lu, ru
|
var luns, runs url.URL = *lu, *ru
|
||||||
luns.Scheme = ""
|
luns.Scheme = ""
|
||||||
runs.Scheme = ""
|
runs.Scheme = ""
|
||||||
var ml missinggo.MultiLess
|
var ml missinggo.MultiLess
|
||||||
|
@ -615,7 +615,7 @@ func (t *Torrent) writeStatus(w io.Writer) {
|
||||||
ml.StrictNext(lu.String() == ru.String(), lu.String() < ru.String())
|
ml.StrictNext(lu.String() == ru.String(), lu.String() < ru.String())
|
||||||
return ml.Less()
|
return ml.Less()
|
||||||
}).([]torrentTrackerAnnouncer) {
|
}).([]torrentTrackerAnnouncer) {
|
||||||
fmt.Fprintf(tw, " %s\n", ta.statusLine())
|
fmt.Fprintf(tw, " %q\t%v\n", ta.URL(), ta.statusLine())
|
||||||
}
|
}
|
||||||
tw.Flush()
|
tw.Flush()
|
||||||
}()
|
}()
|
||||||
|
|
|
@ -24,17 +24,16 @@ type trackerScraper struct {
|
||||||
|
|
||||||
type torrentTrackerAnnouncer interface {
|
type torrentTrackerAnnouncer interface {
|
||||||
statusLine() string
|
statusLine() string
|
||||||
URL() url.URL
|
URL() *url.URL
|
||||||
}
|
}
|
||||||
|
|
||||||
func (me trackerScraper) URL() url.URL {
|
func (me trackerScraper) URL() *url.URL {
|
||||||
return me.u
|
return &me.u
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ts *trackerScraper) statusLine() string {
|
func (ts *trackerScraper) statusLine() string {
|
||||||
var w bytes.Buffer
|
var w bytes.Buffer
|
||||||
fmt.Fprintf(&w, "%q\t%s\t%s",
|
fmt.Fprintf(&w, "next ann: %v, last ann: %v",
|
||||||
ts.u.String(),
|
|
||||||
func() string {
|
func() string {
|
||||||
na := time.Until(ts.lastAnnounce.Completed.Add(ts.lastAnnounce.Interval))
|
na := time.Until(ts.lastAnnounce.Completed.Add(ts.lastAnnounce.Interval))
|
||||||
if na > 0 {
|
if na > 0 {
|
||||||
|
|
|
@ -18,11 +18,11 @@ type websocketTrackerStatus struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (me websocketTrackerStatus) statusLine() string {
|
func (me websocketTrackerStatus) statusLine() string {
|
||||||
return fmt.Sprintf("%q: %+v", me.tc.Url, me.tc.Stats())
|
return fmt.Sprintf("%+v", me.tc.Stats())
|
||||||
}
|
}
|
||||||
|
|
||||||
func (me websocketTrackerStatus) URL() url.URL {
|
func (me websocketTrackerStatus) URL() *url.URL {
|
||||||
return me.url
|
return &me.url
|
||||||
}
|
}
|
||||||
|
|
||||||
type refCountedWebtorrentTrackerClient struct {
|
type refCountedWebtorrentTrackerClient struct {
|
||||||
|
|
Loading…
Reference in New Issue