Custom Docker Feature Configuration
/// <summary>
/// A sample docker feature
/// </summary>
public class FooDockerFeature : IDockerFeature
{
public const string FooBarSetting = "BAR";
/// <summary>
/// This is the feature ID on the SDB_FEATURE
/// </summary>
public string Id => "FOO";
/// <summary>
/// Settings for the foobar feature
/// </summary>
public IEnumerable<string> Settings => new String[] { FooBarSetting };
/// <summary>
/// Configure this service
/// </summary>
public void Configure(SanteDBConfiguration configuration, IDictionary<string, string> settings)
{
// We can fetch the settings for our feature (parsed from docker
// environment) with the settings parameter
if (!settings.TryGetValue(FooBarSetting, out string fooBar))
{
fooBar = "Hello World!";
}
// Set my settings
configuration.AddSection(new FooBarConfigurationSection() {
Bar = fooBar
});
// Add foobar services
var serviceConfiguration = configuration.GetSection<ApplicationServiceContextConfigurationSection>().ServiceProviders;
serviceConfiguration.Add(new TypeReferenceConfiguration(typeof(FooBarService)));
}
}Last updated
Was this helpful?