MCPcopy Create free account
hub / github.com/syncthing/syncthing / saveToFile

Function saveToFile

cmd/syncthing/cli/utils.go:60–96  ·  view source on GitHub ↗
(url string, apiClientFactory *apiClientFactory)

Source from the content-addressed store, hash-verified

58}
59
60func saveToFile(url string, apiClientFactory *apiClientFactory) error {
61 client, err := apiClientFactory.getClient()
62 if err != nil {
63 return err
64 }
65 response, err := client.Get(url)
66 if err != nil {
67 return err
68 }
69 _, params, err := mime.ParseMediaType(response.Header.Get("Content-Disposition"))
70 if err != nil {
71 return err
72 }
73 filename := params["filename"]
74 if filename == "" {
75 return errors.New("Missing filename in response")
76 }
77 bs, err := responseToBArray(response)
78 if err != nil {
79 return err
80 }
81 f, err := os.Create(filename)
82 if err != nil {
83 return err
84 }
85 _, err = f.Write(bs)
86 if err != nil {
87 _ = f.Close()
88 return err
89 }
90 err = f.Close()
91 if err != nil {
92 return err
93 }
94 fmt.Println("Wrote results to", filename)
95 return nil
96}
97
98func getConfig(c APIClient) (config.Configuration, error) {
99 cfg := config.Configuration{}

Callers 1

RunMethod · 0.85

Calls 7

responseToBArrayFunction · 0.85
getClientMethod · 0.80
GetMethod · 0.65
NewMethod · 0.65
CreateMethod · 0.65
CloseMethod · 0.65
WriteMethod · 0.45

Tested by

no test coverage detected