class ConfigurationManager
cangjie
public class ConfigurationManager <: IConfigurationManager & IConfigurationRoot功能:提供配置读取、写入和动态追加配置源的管理器。
父类型:
成员概览
| 成员 | 功能 |
|---|---|
| prop sources | 返回当前已注册的配置源列表。 |
| prop providers | 返回当前已加载的配置提供程序列表。 |
| prop properties | 返回配置管理过程共享的属性集合。 |
| func [](String) | 获取指定键对应的配置值。 |
| func [](String, ?String) | 设置指定键对应的配置值。 |
| func reload() | 重新加载当前所有配置提供程序。 |
| func getSection(String) | 返回指定键对应的配置节。 |
| func getChildren() | 返回当前配置下的直接子配置节集合。 |
| func asEnumerable() | 返回当前配置树中的所有键值对。 |
| func asEnumerable(Bool) | 返回当前配置树中的所有键值对。 |
| func getValue(TypeInfo, String) | 按指定类型信息获取配置值。 |
| func getValue(String) | 按泛型类型获取配置值。 |
| func bind(Object) | 将当前配置节点自身绑定到对象实例的可变字段。 |
| func bind(String, Object) | 将指定配置节的值绑定到对象实例的可变字段。 |
| func add(IConfigurationSource) | 添加一个配置源并立即加载对应提供程序。 |
| func build() | 返回当前配置根对象。 |
prop sources
cangjie
public prop sources: List<IConfigurationSource>功能:返回当前已注册的配置源列表。
类型:List<IConfigurationSource>
prop providers
cangjie
public prop providers: ReadOnlyList<IConfigurationProvider>功能:返回当前已加载的配置提供程序列表。
类型:ReadOnlyList<IConfigurationProvider>
prop properties
cangjie
public prop properties: Map<String, Any>功能:返回配置管理过程共享的属性集合。
类型:Map<String, Any>
func [](String)
cangjie
public operator func [](key: String): ?String功能:获取指定键对应的配置值。
参数:
- key:
String- 配置项的键。
返回值:
?String- 返回对应的配置值;如果不存在则返回 None。
func [](String, ?String)
cangjie
public operator func [](key: String, value!: ?String): Unit功能:设置指定键对应的配置值。
参数:
- key:
String- 配置项的键。 - value:
?String- 要写入的配置值。
返回值:
Unit
func reload()
cangjie
public func reload(): Unit功能:重新加载当前所有配置提供程序。
返回值:
Unit
func getSection(String)
cangjie
public func getSection(key: String): IConfigurationSection功能:返回指定键对应的配置节。
参数:
- key:
String- 配置节的键。
返回值:
- IConfigurationSection - 返回对应的配置节对象。
func getChildren()
cangjie
public func getChildren(): Collection<IConfigurationSection>功能:返回当前配置下的直接子配置节集合。
返回值:
- Collection<IConfigurationSection> - 返回直接子配置节集合。
func asEnumerable()
cangjie
public func asEnumerable(): Collection<(String, ?String)>功能:返回当前配置树中的所有键值对。
返回值:
Collection<(String, ?String)>- 返回键值对集合。
func asEnumerable(Bool)
cangjie
public func asEnumerable(makePathsRelative: Bool): Collection<(String, ?String)>功能:返回当前配置树中的所有键值对。
参数:
- makePathsRelative:
Bool- 是否将路径裁剪为相对于当前配置节点。
返回值:
Collection<(String, ?String)>- 返回键值对集合。
func getValue(TypeInfo, String)
cangjie
public func getValue(typeInfo: TypeInfo, name: String): ?Any功能:按指定类型信息获取配置值。
参数:
- typeInfo:
TypeInfo- 目标值的类型信息。 - name:
String- 配置项的键。
返回值:
?Any- 返回转换后的配置值;如果不存在或无法提供则返回 None。
func getValue(String)
cangjie
public func getValue<T>(name: String): ?T功能:按泛型类型获取配置值。
参数:
- name:
String- 配置项的键。
返回值:
?T- 返回转换后的配置值;如果不存在或类型不匹配则返回 None。
func bind(Object)
cangjie
public func bind(instance: Object): Unit功能:将当前配置节点自身绑定到对象实例的可变字段。
参数:
- instance:
Object- 待绑定的对象实例。
返回值:
Unit
func bind(String, Object)
cangjie
public func bind(name: String, instance: Object): Unit功能:将指定配置节的值绑定到对象实例的可变字段。
参数:
- name:
String- 配置节的键。 - instance:
Object- 待绑定的对象实例。
返回值:
Unit
func add(IConfigurationSource)
cangjie
public func add(source: IConfigurationSource): IConfigurationBuilder功能:添加一个配置源并立即加载对应提供程序。
参数:
- source: IConfigurationSource - 要添加的配置源。
返回值:
- IConfigurationBuilder - 返回当前配置管理器。
func build()
cangjie
public func build(): IConfigurationRoot功能:返回当前配置根对象。
返回值:
- IConfigurationRoot - 返回当前配置管理器自身。
扩展成员
| 成员 | 功能 |
|---|---|
| func addConfiguration(IConfiguration, Bool) | 将现有配置对象作为链式配置源添加到配置管理器。 |
| func addCmdArgs(Array<String>, ?Map<String, String>) | 添加一个命令行参数配置源。 |
| func addEnvVars() | 添加一个不带前缀过滤的环境变量配置源。 |
| func addEnvVars(String) | 添加一个按前缀过滤的环境变量配置源。 |
| func addJsonStream(IOStream) | 添加一个从输入流读取的 JSON 配置源。 |
| func addJsonString(String) | 添加一个基于 JSON 字符串的配置源。 |
| func addJsonFile(String, Bool) | 添加一个基于 JSON 文件的配置源。 |
| func addMemory() | 添加一个空的内存配置源。 |
| func addMemory(Collection<(String, String)>) | 添加一个基于键值集合的内存配置源。 |
func addConfiguration(IConfiguration, Bool)
cangjie
public func addConfiguration(configuration: IConfiguration, shouldDisposeConfiguration!: Bool = false): ConfigurationManager功能:将现有配置对象作为链式配置源添加到配置管理器。
参数:
- configuration: IConfiguration - 被链接的配置对象。
- shouldDisposeConfiguration:
Bool- 保留的兼容参数;当前运行时不执行释放动作。
返回值:
- ConfigurationManager - 返回当前配置管理器。
func addCmdArgs(Array<String>, ?Map<String, String>)
cangjie
public func addCmdArgs(args: Array<String>, switchMappings!: ?Map<String, String> = None): ConfigurationManager功能:添加一个命令行参数配置源。
参数:
- args:
Array<String>- 命令行参数数组。 - switchMappings:
?Map<String, String>- 可选的短开关到配置键映射。
返回值:
- ConfigurationManager - 返回当前配置管理器。
func addEnvVars()
cangjie
public func addEnvVars(): ConfigurationManager功能:添加一个不带前缀过滤的环境变量配置源。
返回值:
- ConfigurationManager - 返回当前配置管理器。
func addEnvVars(String)
cangjie
public func addEnvVars(prefix: String): ConfigurationManager功能:添加一个按前缀过滤的环境变量配置源。
参数:
- prefix:
String- 环境变量名前缀。
返回值:
- ConfigurationManager - 返回当前配置管理器。
func addJsonStream(IOStream)
cangjie
public func addJsonStream(stream: IOStream): ConfigurationManager功能:添加一个从输入流读取的 JSON 配置源。
参数:
- stream:
IOStream- 提供 JSON 内容的输入流。
返回值:
- ConfigurationManager - 返回当前配置管理器。
func addJsonString(String)
cangjie
public func addJsonString(json: String): ConfigurationManager功能:添加一个基于 JSON 字符串的配置源。
参数:
- json:
String- JSON 格式的配置内容。
返回值:
- ConfigurationManager - 返回当前配置管理器。
func addJsonFile(String, Bool)
cangjie
public func addJsonFile(path: String, optional!: Bool = true): ConfigurationManager功能:添加一个基于 JSON 文件的配置源。
参数:
- path:
String- JSON 配置文件路径。 - optional:
Bool- 指示文件不存在时是否忽略。
返回值:
- ConfigurationManager - 返回当前配置管理器。
func addMemory()
cangjie
public func addMemory(): ConfigurationManager功能:添加一个空的内存配置源。
返回值:
- ConfigurationManager - 返回当前配置管理器。
func addMemory(Collection<(String, String)>)
cangjie
public func addMemory(values: Collection<(String, String)>): ConfigurationManager功能:添加一个基于键值集合的内存配置源。
参数:
- values:
Collection<(String, String)>- 初始化内存配置源的键值集合。
返回值:
- ConfigurationManager - 返回当前配置管理器。