MCPcopy Index your code
hub / github.com/wavetermdev/waveterm / WriteTempFileCommand

Method WriteTempFileCommand

pkg/wshrpc/wshserver/wshserver.go:439–461  ·  view source on GitHub ↗
(ctx context.Context, data wshrpc.CommandWriteTempFileData)

Source from the content-addressed store, hash-verified

437}
438
439func (ws *WshServer) WriteTempFileCommand(ctx context.Context, data wshrpc.CommandWriteTempFileData) (string, error) {
440 if data.FileName == "" {
441 return "", fmt.Errorf("filename is required")
442 }
443 name := filepath.Base(data.FileName)
444 if name == "" || name == "." || name == ".." {
445 return "", fmt.Errorf("invalid filename")
446 }
447 tempDir, err := os.MkdirTemp("", "waveterm-")
448 if err != nil {
449 return "", fmt.Errorf("error creating temp directory: %w", err)
450 }
451 decoded, err := base64.StdEncoding.DecodeString(data.Data64)
452 if err != nil {
453 return "", fmt.Errorf("error decoding base64 data: %w", err)
454 }
455 tempPath := filepath.Join(tempDir, name)
456 err = os.WriteFile(tempPath, decoded, 0600)
457 if err != nil {
458 return "", fmt.Errorf("error writing temp file: %w", err)
459 }
460 return tempPath, nil
461}
462
463func (ws *WshServer) DeleteSubBlockCommand(ctx context.Context, data wshrpc.CommandDeleteBlockData) error {
464 if data.BlockId == "" {

Callers

nothing calls this directly

Calls 1

WriteFileMethod · 0.80

Tested by

no test coverage detected