more on patch handling

This commit is contained in:
Jeff Carr 2025-09-06 17:10:42 -05:00
parent 0d1f53afee
commit f8b2ff5ace
1 changed files with 88 additions and 3 deletions

91
http.go
View File

@ -82,6 +82,79 @@ func okHandler(w http.ResponseWriter, r *http.Request) {
return return
} }
if strings.HasPrefix(route, "/patches/applied") {
log.Info("todo: handle applied patches")
return
}
if route == "/patchset" {
if err := savePatchset(w, msg); err != nil {
log.Warn("forged /patchset error", err)
return
}
if err := me.forge.SavePatchsets(); err != nil {
log.Warn("savePatchsets() failed", err)
return
}
return
}
if route == "/lookup" {
log.Info("doing lookup len(msg) =", len(msg))
found, err := lookupRepos(msg)
if err != nil {
return
}
/*
for repo := range repos.IterAll() {
repo.Namespace += "good"
log.Infof("repo:%s,%s\n", repo.Namespace, repo.FullPath)
}
*/
found.SendPB(w)
return
}
if strings.HasPrefix(route, "/patches/") {
handlePatches(w, r, msg)
return
}
if route == "/patchset" {
if err := savePatchset(w, msg); err != nil {
log.Warn("forged /patchset error", err)
return
}
if err := me.forge.SavePatchsets(); err != nil {
log.Warn("savePatchsets() failed", err)
return
}
return
}
if route == "/lookup" {
log.Info("doing lookup len(msg) =", len(msg))
found, err := lookupRepos(msg)
if err != nil {
return
}
/*
for repo := range repos.IterAll() {
repo.Namespace += "good"
log.Infof("repo:%s,%s\n", repo.Namespace, repo.FullPath)
}
*/
found.SendPB(w)
return
}
if strings.HasPrefix(route, "/patches/") {
handlePatches(w, r, msg)
return
}
if route == "/patchset" { if route == "/patchset" {
if err := savePatchset(w, msg); err != nil { if err := savePatchset(w, msg); err != nil {
log.Warn("forged /patchset error", err) log.Warn("forged /patchset error", err)
@ -122,10 +195,22 @@ func okHandler(w http.ResponseWriter, r *http.Request) {
return return
} }
if route == "/GetPatchsets" { if route == "/GetPatchsets" || route == "/patchsets/get" {
data, err := me.forge.Patchsets.Marshal()
if err != nil {
log.Info("patchsets.Marshal() to wire failed", err)
return
}
start := time.Now() start := time.Now()
log.Info("going to w.Write(msg) with len", len(msg)) log.Info("going to w.Write(data) with len", len(data))
w.Write(msg) w.Write(data)
/*
start := time.Now()
log.Info("going to w.Write(msg) with len", len(msg))
w.Write(msg)
*/
age := shell.FormatDuration(time.Since(start)) age := shell.FormatDuration(time.Since(start))
log.Printf("Done with xfer in (%s). happy hacking!\n", age) log.Printf("Done with xfer in (%s). happy hacking!\n", age)
return return