MCPcopy Create free account
hub / github.com/dropbox/dbxcli / removeTargets

Function removeTargets

cmd/rm.go:157–186  ·  view source on GitHub ↗
(dbx filesClient, targets []removeTarget, opts removeOptions)

Source from the content-addressed store, hash-verified

155}
156
157func removeTargets(dbx filesClient, targets []removeTarget, opts removeOptions) ([]removeResult, error) {
158 results := make([]removeResult, 0, len(targets))
159
160 for _, target := range targets {
161 arg := files.NewDeleteArg(target.path)
162 metadata := target.metadata
163
164 if opts.permanent {
165 if err := dbx.PermanentlyDeleteContext(currentContext(), arg); err != nil {
166 return nil, withJSONErrorDetails(err, operationErrorDetails(removeOperation(opts)), pathErrorDetails(target.path))
167 }
168 } else {
169 res, err := dbx.DeleteV2Context(currentContext(), arg)
170 if err != nil {
171 return nil, withJSONErrorDetails(err, operationErrorDetails(removeOperation(opts)), pathErrorDetails(target.path))
172 }
173 if res != nil && res.Metadata != nil {
174 metadata = res.Metadata
175 }
176 }
177
178 result, err := newRemoveResult(target.path, metadata, opts)
179 if err != nil {
180 return nil, withJSONErrorDetails(err, operationErrorDetails(removeOperation(opts)), pathErrorDetails(target.path))
181 }
182 results = append(results, result)
183 }
184
185 return results, nil
186}
187
188func newRemoveResult(path string, metadata files.IsMetadata, opts removeOptions) (removeResult, error) {
189 result, err := removeMetadataFromDropbox(path, metadata)

Callers 1

rmFunction · 0.85

Calls 8

currentContextFunction · 0.85
withJSONErrorDetailsFunction · 0.85
operationErrorDetailsFunction · 0.85
removeOperationFunction · 0.85
pathErrorDetailsFunction · 0.85
newRemoveResultFunction · 0.85
DeleteV2ContextMethod · 0.65

Tested by

no test coverage detected