Add factory methods for config loading options
This commit is contained in:
parent
350f7b0704
commit
888f7b4068
|
@ -0,0 +1,28 @@
|
|||
import Foundation
|
||||
|
||||
public extension Config {
|
||||
func load(env filename: String) throws {
|
||||
try load(from: CommonConfigurationProvider(loader: Fetcher.file(filename), parser: Parser.donEnv))
|
||||
}
|
||||
|
||||
func load(env data: Data) throws {
|
||||
try load(from: CommonConfigurationProvider(loader: Fetcher.direct(data), parser: Parser.donEnv))
|
||||
}
|
||||
|
||||
func load(json filename: String) throws {
|
||||
try load(from: CommonConfigurationProvider(loader: Fetcher.file(filename), parser: Parser.json))
|
||||
}
|
||||
|
||||
func load(json data: Data) throws {
|
||||
try load(from: CommonConfigurationProvider(loader: Fetcher.direct(data), parser: Parser.json))
|
||||
}
|
||||
|
||||
func load(plist filename: String) throws {
|
||||
try load(from: CommonConfigurationProvider(loader: Fetcher.file(filename), parser: Parser.plist))
|
||||
}
|
||||
|
||||
func load(plist data: Data) throws {
|
||||
try load(from: CommonConfigurationProvider(loader: Fetcher.direct(data), parser: Parser.plist))
|
||||
}
|
||||
|
||||
}
|
|
@ -4,7 +4,7 @@ import Foundation
|
|||
enum Fetcher { }
|
||||
|
||||
extension Fetcher {
|
||||
|
||||
|
||||
static let direct: (Data) -> CommonConfigurationProvider.Fetcher = { data in
|
||||
return { data }
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue