MCPcopy
hub / github.com/keploy/keploy / Decompress

Function Decompress

pkg/util.go:3623–3650  ·  view source on GitHub ↗
(logger *zap.Logger, encoding string, data []byte)

Source from the content-addressed store, hash-verified

3621}
3622
3623func Decompress(logger *zap.Logger, encoding string, data []byte) ([]byte, error) {
3624 switch encoding {
3625 case "br":
3626 logger.Debug("decompressing brotli compressed data")
3627 reader := brotli.NewReader(bytes.NewReader(data))
3628 decodedData, err := io.ReadAll(reader)
3629 if err != nil {
3630 utils.LogError(logger, err, "failed to read the brotli compressed data")
3631 return nil, err
3632 }
3633 return decodedData, nil
3634 case "gzip":
3635 logger.Debug("decoding gzip compressed data")
3636 reader, err := gzip.NewReader(bytes.NewReader(data))
3637 if err != nil {
3638 utils.LogError(logger, err, "failed to create gzip reader")
3639 return nil, err
3640 }
3641 defer reader.Close()
3642 decodedData, err := io.ReadAll(reader)
3643 if err != nil {
3644 utils.LogError(logger, err, "failed to read the gzip compressed data")
3645 return nil, err
3646 }
3647 return decodedData, nil
3648 }
3649 return data, nil
3650}
3651
3652func Compress(logger *zap.Logger, encoding string, data []byte) ([]byte, error) {
3653 switch encoding {

Callers 6

parseFinalHTTPMethod · 0.92
buildHTTPMockMethod · 0.92
decodeHTTPMethod · 0.92
CaptureFunction · 0.92
SimulateHTTPFunction · 0.85

Calls 3

LogErrorFunction · 0.92
DebugMethod · 0.65
CloseMethod · 0.65

Tested by 1