Shad Storhaug created LUCENENET-638:
---------------------------------------

             Summary: Finish implementation of "System Properties" for .NET
                 Key: LUCENENET-638
                 URL: https://issues.apache.org/jira/browse/LUCENENET-638
             Project: Lucene.Net
          Issue Type: Task
          Components: Lucene.Net.TestFramework
    Affects Versions: Lucene.Net 4.8.0
            Reporter: Shad Storhaug


In Java, [System 
Properties|https://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html]
 are file based properties that can be overridden by for the specific 
environment (environment variables).

To implement similar functionality in .NET, we have added the 
{{Lucene.Net.Support.SystemProperties}} class, which currently just 
reads/writes environment variables.

With the release of the TestFramework, it is now more important to have 
Hierarchical file configuration based properties that can be utilized in test 
projects in order to control the features of the TestFramework. They should 
also still be able to be specified as environment variables that override the 
file-based settings.

We should use a JSON-based file format, ideally following an existing 
convention in .NET.

The closest match in .NET Core appears to be the 
[Microsoft.Extensions.Configuration 
API|https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration/index].
 We need to investigate using this API as a replacement for 
{{Lucene.Net.Support.SystemProperties}}, and come up with a read-write 
hierarchical file-based configuration solution that can be overridden by 
environment variables on any platform.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to