summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Carr <[email protected]>2025-09-06 17:10:42 -0500
committerJeff Carr <[email protected]>2025-09-06 17:12:46 -0500
commitf8b2ff5acedc1835cee10acca49649d1957ed781 (patch)
tree1a1b268ee05087be69be039ef71e3784000d3da2
parent0d1f53afee67293e930d9f67bd71442c154d196a (diff)
more on patch handlingv0.0.22
-rw-r--r--http.go91
1 files changed, 88 insertions, 3 deletions
diff --git a/http.go b/http.go
index 5d844e1..fce515a 100644
--- a/http.go
+++ b/http.go
@@ -82,6 +82,79 @@ func okHandler(w http.ResponseWriter, r *http.Request) {
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 err := savePatchset(w, msg); err != nil {
log.Warn("forged /patchset error", err)
@@ -122,10 +195,22 @@ func okHandler(w http.ResponseWriter, r *http.Request) {
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()
- log.Info("going to w.Write(msg) with len", len(msg))
- w.Write(msg)
+ log.Info("going to w.Write(data) with len", len(data))
+ 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))
log.Printf("Done with xfer in (%s). happy hacking!\n", age)
return