(tempFile *os.File, filename string)
| 110 | } |
| 111 | |
| 112 | func detectFileTypeFromTempFile(tempFile *os.File, filename string) (string, error) { |
| 113 | header := make([]byte, 512) |
| 114 | if _, err := tempFile.Read(header); err != nil && err != io.EOF { |
| 115 | return "", fmt.Errorf("error reading file header: %w", err) |
| 116 | } |
| 117 | |
| 118 | fileType, err := DetectFileType(header, filename) |
| 119 | if err != nil { |
| 120 | return "", fmt.Errorf("error detecting file type: %w", err) |
| 121 | } |
| 122 | |
| 123 | if _, err := tempFile.Seek(0, 0); err != nil { |
| 124 | return "", fmt.Errorf("error seeking temporary file: %w", err) |
| 125 | } |
| 126 | |
| 127 | return fileType, nil |
| 128 | } |
| 129 | |
| 130 | func parseAndStoreData(ctx context.Context, uploadID, source string, reader io.Reader, fileType string, store StoreFunc) (int, error) { |
| 131 | switch fileType { |
no test coverage detected