Class ProviderRegistry
java.lang.Object
cloud.opencode.base.oauth2.provider.ProviderRegistry
OAuth2 Provider Registry
OAuth2 Provider 注册表
Registry for managing OAuth2 providers.
用于管理 OAuth2 提供者的注册表。
Features | 主要功能:
- Provider registration - Provider 注册
- Provider lookup - Provider 查找
- Built-in providers - 内置 Provider
- Custom provider support - 自定义 Provider 支持
Usage Examples | 使用示例:
// Get the global registry
ProviderRegistry registry = ProviderRegistry.global();
// Register a custom provider
registry.register(new CustomProvider.Builder()
.name("MyProvider")
.authorizationEndpoint("https://auth.example.com/authorize")
.tokenEndpoint("https://auth.example.com/token")
.build());
// Get a provider
OAuth2Provider provider = registry.get("Google");
// List all providers
Set<String> names = registry.names();
Thread Safety | 线程安全:
This class is thread-safe.
此类是线程安全的。
- Since:
- JDK 25, opencode-base-oauth2 V1.0.0
- Author:
- Leon Soo www.LeonSoo.com
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionall()Get all registered providers 获取所有已注册的 Providervoidclear()Clear all providers 清除所有 ProviderbooleanCheck if a provider is registered 检查 Provider 是否已注册Find a provider by name 按名称查找 ProviderGet a provider by name 按名称获取 Providerstatic ProviderRegistryglobal()Get the global registry with built-in providers 获取带有内置提供者的全局注册表booleanisEmpty()Check if the registry is empty 检查注册表是否为空names()Get all registered provider names 获取所有已注册的 Provider 名称register(OAuth2Provider provider) Register a provider 注册 Providerregister(String name, OAuth2Provider provider) Register a provider with a custom name 使用自定义名称注册 ProviderRemove a provider 移除 Providerintsize()Get the number of registered providers 获取已注册的 Provider 数量static ProviderRegistryCreate a new registry with built-in providers 创建带有内置提供者的新注册表
-
Constructor Details
-
ProviderRegistry
public ProviderRegistry()Create a new empty registry 创建新的空注册表
-
-
Method Details
-
global
Get the global registry with built-in providers 获取带有内置提供者的全局注册表- Returns:
- the global registry | 全局注册表
-
withBuiltins
Create a new registry with built-in providers 创建带有内置提供者的新注册表- Returns:
- the new registry | 新注册表
-
register
Register a provider 注册 Provider- Parameters:
provider- the provider to register | 要注册的 Provider- Returns:
- this registry | 此注册表
-
register
Register a provider with a custom name 使用自定义名称注册 Provider- Parameters:
name- the name to register under | 注册的名称provider- the provider to register | 要注册的 Provider- Returns:
- this registry | 此注册表
-
get
Get a provider by name 按名称获取 Provider- Parameters:
name- the provider name (case-insensitive) | Provider 名称(不区分大小写)- Returns:
- the provider | Provider
- Throws:
OAuth2Exception- if provider not found | 如果 Provider 未找到
-
find
Find a provider by name 按名称查找 Provider- Parameters:
name- the provider name (case-insensitive) | Provider 名称(不区分大小写)- Returns:
- the provider if found | 找到的 Provider
-
contains
Check if a provider is registered 检查 Provider 是否已注册- Parameters:
name- the provider name | Provider 名称- Returns:
- true if registered | 如果已注册返回 true
-
remove
Remove a provider 移除 Provider- Parameters:
name- the provider name | Provider 名称- Returns:
- the removed provider if found | 移除的 Provider
-
names
-
all
Get all registered providers 获取所有已注册的 Provider- Returns:
- the providers | Provider 列表
-
size
public int size()Get the number of registered providers 获取已注册的 Provider 数量- Returns:
- the count | 数量
-
isEmpty
public boolean isEmpty()Check if the registry is empty 检查注册表是否为空- Returns:
- true if empty | 如果为空返回 true
-
clear
public void clear()Clear all providers 清除所有 Provider
-