(args []string)
| 72 | } |
| 73 | |
| 74 | func (c *searchNamesSetCmd) RunCommand(args []string) error { |
| 75 | if len(args) != 2 { |
| 76 | return cmdmain.UsageError("expected 2 arguments") |
| 77 | } |
| 78 | named, substitute := args[0], args[1] |
| 79 | |
| 80 | cc := newClient("") |
| 81 | uh := client.NewUploadHandleFromString(substitute) |
| 82 | substpr, err := cc.Upload(ctxbg, uh) |
| 83 | if err != nil { |
| 84 | return err |
| 85 | } |
| 86 | var pn blob.Ref |
| 87 | claims := []*schema.Builder{} |
| 88 | gr, err := getNamedSearch(named) |
| 89 | if err == nil { |
| 90 | pn = gr.PermaRef |
| 91 | } else { |
| 92 | pnpr, err := cc.UploadAndSignBlob(ctxbg, schema.NewUnsignedPermanode()) |
| 93 | if err != nil { |
| 94 | return err |
| 95 | } |
| 96 | pn = pnpr.BlobRef |
| 97 | |
| 98 | claims = append(claims, schema.NewSetAttributeClaim(pn, "camliNamedSearch", named)) |
| 99 | claims = append(claims, schema.NewSetAttributeClaim(pn, "title", fmt.Sprintf("named:%s", named))) |
| 100 | } |
| 101 | claims = append(claims, schema.NewSetAttributeClaim(pn, "camliContent", substpr.BlobRef.String())) |
| 102 | for _, claimBuilder := range claims { |
| 103 | _, err := cc.UploadAndSignBlob(ctxbg, claimBuilder) |
| 104 | if err != nil { |
| 105 | return err |
| 106 | } |
| 107 | } |
| 108 | snr := setNamedResponse{PermaRef: pn, SubstRef: substpr.BlobRef} |
| 109 | out, err := json.MarshalIndent(snr, " ", "") |
| 110 | if err != nil { |
| 111 | return err |
| 112 | } |
| 113 | fmt.Fprintln(cmdmain.Stdout, string(out)) |
| 114 | return nil |
| 115 | } |
| 116 | |
| 117 | type getNamedResponse struct { |
| 118 | Named string `json:"named"` |
nothing calls this directly
no test coverage detected