AS AgentScopeAPI 手册 / API Reference

CompressionUtils

public final class CompressionUtils
源码Source io/agentscope/examples/compression/extra/CompressionUtils.java:59–507

压缩 Utils,为框架提供通用类型与基础能力。位于 io.agentscope.examples.compression.extra 包。核心成员包括 isEncodingAvailable、isBrotliAvailable、isZstdAvailable、compress、decompress、decompressToString。

Utility class for HTTP request/response body compression and decompression.

This class provides static methods for compressing and decompressing data using the compression algorithms defined in CompressionEncoding.

Supported compression formats:

  • GZIP - Always available (built into Java). The de facto standard for HTTP compression.

  • Brotli - Requires optional dependency: com.aayushatharva.brotli4j:brotli4j. Provides 20-26% better compression than GZIP.

  • Zstd - Requires optional dependency: com.github.luben:zstd-jni. Very fast compression/decompression with excellent ratios.

Usage example:

`// Check if an encoding is available
if (CompressionUtils.isEncodingAvailable(CompressionEncoding.BROTLI)) {
byte[] compressed = CompressionUtils.compress(jsonBody, CompressionEncoding.BROTLI);
}

// Compress request body (falls back to GZIP if preferred encoding unavailable)
String jsonBody = "{\"messages\": [...]}";
byte[] compressed = CompressionUtils.compress(jsonBody, CompressionEncoding.GZIP);

// Decompress response body
byte[] compressedResponse = ...;
String decompressed = CompressionUtils.decompressToString(compressedResponse, CompressionEncoding.GZIP);
`

嵌套类摘要Nested Class Summary

类Class类型Kind说明Description
CompressionException类class
压缩异常,表示执行过程中的错误。
Exception thrown when compression or decompression fails.

方法摘要Method Summary

方法Method说明Description
public static boolean isEncodingAvailable(CompressionEncoding encoding)
static
判断是否 `isEncodingAvailable`。
Check if a compression encoding is available at runtime.
public static boolean isBrotliAvailable()
static
判断是否 `isBrotliAvailable`。
Check if Brotli compression is available.
public static boolean isZstdAvailable()
static
判断是否 `isZstdAvailable`。
Check if Zstd compression is available.
public static byte[] compress(String data, CompressionEncoding encoding)
static
执行压缩相关操作。
Compress a string using the specified encoding.
public static byte[] compress(byte[] data, CompressionEncoding encoding)
static
执行压缩相关操作。
Compress a byte array using the specified encoding.
public static byte[] decompress(byte[] data, CompressionEncoding encoding)
static
执行 `decompress` 方法。
Decompress a byte array using the specified encoding.
public static String decompressToString(byte[] data, CompressionEncoding encoding)
static
执行 `decompressToString` 方法。
Decompress a byte array to a UTF-8 string.
public static InputStream decompressStream(InputStream inputStream, CompressionEncoding encoding)
static
执行 `decompressStream` 方法。
Decompress an input stream using the specified encoding.
public static boolean isGzipCompressed(byte[] data)
static
判断是否 `isGzipCompressed`。
Check if the data appears to be GZIP compressed.

方法详情Method Detail

isEncodingAvailable

public static boolean isEncodingAvailable(CompressionEncoding encoding)
static

判断是否 isEncodingAvailable。

Check if a compression encoding is available at runtime.

参数Parameters
名称Name类型Type说明Description
encodingCompressionEncodingencoding(类型 `CompressionEncoding`)。the encoding to check
返回Returns boolean
返回布尔值,表示判断结果。true if the encoding is available
源码Source io/agentscope/examples/compression/extra/CompressionUtils.java:96–105

isBrotliAvailable

public static boolean isBrotliAvailable()
static

判断是否 isBrotliAvailable。

Check if Brotli compression is available.

返回Returns boolean
返回布尔值,表示判断结果。true if Brotli is available
源码Source io/agentscope/examples/compression/extra/CompressionUtils.java:112–114

isZstdAvailable

public static boolean isZstdAvailable()
static

判断是否 isZstdAvailable。

Check if Zstd compression is available.

返回Returns boolean
返回布尔值,表示判断结果。true if Zstd is available
源码Source io/agentscope/examples/compression/extra/CompressionUtils.java:121–123

compress

public static byte[] compress(String data, CompressionEncoding encoding)
static

执行压缩相关操作。

Compress a string using the specified encoding.

参数Parameters
名称Name类型Type说明Description
dataString数据(类型 `String`)。the string to compress
encodingCompressionEncodingencoding(类型 `CompressionEncoding`)。the compression encoding to use
返回Returns byte[]
返回byte[]。the compressed data as a byte array
抛出Throws
  • CompressionException 可能抛出 `CompressionException`。if compression fails or encoding is unavailable
源码Source io/agentscope/examples/compression/extra/CompressionUtils.java:135–140

compress

public static byte[] compress(byte[] data, CompressionEncoding encoding)
static

执行压缩相关操作。

Compress a byte array using the specified encoding.

参数Parameters
名称Name类型Type说明Description
databyte[]数据到压缩。the data to compress
encodingCompressionEncodingencoding(类型 `CompressionEncoding`)。the compression encoding to use
返回Returns byte[]
返回byte[]。the compressed data as a byte array
抛出Throws
  • CompressionException 可能抛出 `CompressionException`。if compression fails or encoding is unavailable
源码Source io/agentscope/examples/compression/extra/CompressionUtils.java:150–173

decompress

public static byte[] decompress(byte[] data, CompressionEncoding encoding)
static

执行 decompress 方法。

Decompress a byte array using the specified encoding.

参数Parameters
名称Name类型Type说明Description
databyte[]数据(类型 `byte[]`)。the compressed data
encodingCompressionEncodingencoding(类型 `CompressionEncoding`)。the compression encoding used
返回Returns byte[]
返回byte[]。the decompressed data as a byte array
抛出Throws
  • CompressionException 可能抛出 `CompressionException`。if decompression fails or encoding is unavailable
源码Source io/agentscope/examples/compression/extra/CompressionUtils.java:183–206

decompressToString

public static String decompressToString(byte[] data, CompressionEncoding encoding)
static

执行 decompressToString 方法。

Decompress a byte array to a UTF-8 string.

参数Parameters
名称Name类型Type说明Description
databyte[]数据(类型 `byte[]`)。the compressed data
encodingCompressionEncodingencoding(类型 `CompressionEncoding`)。the compression encoding used
返回Returns String
返回字符串结果。the decompressed data as a UTF-8 string
抛出Throws
源码Source io/agentscope/examples/compression/extra/CompressionUtils.java:216–222

decompressStream

public static InputStream decompressStream(InputStream inputStream, CompressionEncoding encoding)
static

执行 decompressStream 方法。

Decompress an input stream using the specified encoding.

参数Parameters
名称Name类型Type说明Description
inputStreamInputStream输入流(类型 `InputStream`)。the compressed input stream
encodingCompressionEncodingencoding(类型 `CompressionEncoding`)。the compression encoding used
返回Returns InputStream
返回InputStream。the decompression input stream
抛出Throws
  • CompressionException 可能抛出 `CompressionException`。if creating the decompression stream fails
源码Source io/agentscope/examples/compression/extra/CompressionUtils.java:235–260

isGzipCompressed

public static boolean isGzipCompressed(byte[] data)
static

判断是否 isGzipCompressed。

Check if the data appears to be GZIP compressed.

参数Parameters
名称Name类型Type说明Description
databyte[]数据到检查。the data to check
返回Returns boolean
返回布尔值,表示判断结果。true if the data appears to be GZIP compressed
源码Source io/agentscope/examples/compression/extra/CompressionUtils.java:270–276

嵌套类详情Nested Class Detail

CompressionException

public static class CompressionException extends RuntimeException

压缩异常,表示执行过程中的错误。位于 io.agentscope.examples.compression.extra 包,继承自 RuntimeException。核心成员包括 CompressionException。

Exception thrown when compression or decompression fails.

基于官方固定版本源码静态生成Generated from pinned official sources · Python 2.0.11 · Java 2.0.4
签名与文档为静态抽取;如有疑问请以源码为准。Signatures and docs are extracted statically; verify against the source when in doubt.