Scope sources

Requires: main sources module.

A source can be scoped just like settings nodes can. Resulting source's data is exactly base source's data scoped to given path:

var baseSource = new JsonFileSource("settings.json");
var scopedSource = baseSource.ScopeTo("secrets");
var scopedTooFarSource = baseSource.ScopeTo("timeouts", "unknown-section");
Data in baseSource:

{
    "Timeouts":
    {
        "DbTimeout": "20 seconds"
    },
    "Secrets":
    {
        "ApiKey": "xxxx-xxxx-xxxx"
    } 
}
Data in scopedSource:

{
    "Secrets":
    {
        "ApiKey": "xxxx-xxxx-xxxx"
    }
}
Data in scopedTooFarSource:

{
}

Last updated