(data []byte, boundary string)
| 1779 | } |
| 1780 | |
| 1781 | func parseMultipartQueueBytes(data []byte, boundary string) ([]multipartPartPayload, error) { |
| 1782 | mr := multipart.NewReader(bytes.NewReader(data), boundary) |
| 1783 | queue := make([]multipartPartPayload, 0) |
| 1784 | |
| 1785 | for { |
| 1786 | part, err := mr.NextPart() |
| 1787 | if err == io.EOF { |
| 1788 | break |
| 1789 | } |
| 1790 | if err != nil { |
| 1791 | return nil, err |
| 1792 | } |
| 1793 | |
| 1794 | payload, readErr := readMultipartPart(part) |
| 1795 | _ = part.Close() |
| 1796 | if readErr != nil { |
| 1797 | return nil, readErr |
| 1798 | } |
| 1799 | if payload.contentType == "" && len(payload.body) == 0 { |
| 1800 | continue |
| 1801 | } |
| 1802 | queue = append(queue, payload) |
| 1803 | } |
| 1804 | |
| 1805 | return queue, nil |
| 1806 | } |
| 1807 | |
| 1808 | func readMultipartPart(part *multipart.Part) (multipartPartPayload, error) { |
| 1809 | bodyBytes, err := io.ReadAll(part) |
no test coverage detected