Class ProtobufSerializerProvider
java.lang.Object
cloud.opencode.base.serialization.binary.ProtobufSerializerProvider
- All Implemented Interfaces:
SerializerProvider
ProtobufSerializerProvider - SPI Provider for Protobuf Serializer
Protobuf 序列化器 SPI 提供者
Provides ProtobufSerializer instances through the SPI mechanism. Only available when Protobuf dependency is present.
通过 SPI 机制提供 ProtobufSerializer 实例。 仅当 Protobuf 依赖存在时可用。
Features | 主要功能:
- SPI provider for Protocol Buffers serialization - Protocol Buffers序列化的SPI提供者
- Auto-discovery via ServiceLoader - 通过ServiceLoader自动发现
Usage Examples | 使用示例:
// Registered via META-INF/services
// 通过META-INF/services注册
Serializer serializer = SerializerProvider.load("protobuf");
Security | 安全性:
- Thread-safe: Yes (immutable) - 线程安全: 是(不可变)
- Null-safe: No - 空值安全: 否
Performance | 性能特性:
- Time complexity: O(1) for provider creation - 提供者创建 O(1)
- Space complexity: O(1) - O(1)
- Since:
- JDK 25, opencode-base-serialization V1.0.0
- Author:
- Leon Soo www.LeonSoo.com
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreate()Creates a new serializer instance.intReturns the priority of this provider.booleanReturns whether this provider is available.
-
Constructor Details
-
ProtobufSerializerProvider
public ProtobufSerializerProvider()
-
-
Method Details
-
create
Description copied from interface:SerializerProviderCreates a new serializer instance. 创建新的序列化器实例。- Specified by:
createin interfaceSerializerProvider- Returns:
- the serializer instance - 序列化器实例
-
getPriority
public int getPriority()Description copied from interface:SerializerProviderReturns the priority of this provider. 返回此提供者的优先级。Lower values indicate higher priority. When multiple providers are available, the one with the lowest priority value becomes the default.
较小的值表示较高的优先级。当有多个提供者可用时, 具有最小优先级值的提供者成为默认值。
- Specified by:
getPriorityin interfaceSerializerProvider- Returns:
- the priority (default is 100) - 优先级(默认为 100)
-
isAvailable
public boolean isAvailable()Description copied from interface:SerializerProviderReturns whether this provider is available. 返回此提供者是否可用。Providers may check for required dependencies and return false if they are not available.
提供者可以检查所需依赖项,如果不可用则返回 false。
- Specified by:
isAvailablein interfaceSerializerProvider- Returns:
- true if available - 如果可用则返回 true
-