Converted the original project to a PCL project - named it "Serilog.Sinks.RollingFileAlternate.Portable"
The .NET 4.5 project remains but now only contains a couple of classes that are .NET 4.5 specific. This is basically FileAccess class - and the Extensions methods (for the Fluent Syntax)
The idea behind this is it now becomes very easy to add support for other platforms within this solution.
The next phase of this PR (which I am happy to proceed with if desired) would be to add MonoDroid support by:
Adding the platform specific project (i.e monodroid)
In the new monodroid project add a reference to "Serilog.Sinks.RollingFileAlternate.Portable"
Create an IFileSystem implementation to provide the filesystem operations for the target platform (monodroid).
Create the Extension methods that defer to the extension methods already defined in "Serilog.Sinks.RollingFileAlternate.Portable" but pass in the droid specific IFileSystem instance for convenience.
Ensure the NuGet package produced contains the Android assemly as well as the .NET 4.5 one.
Have refactored for cross platform support.
The idea behind this is it now becomes very easy to add support for other platforms within this solution.
The next phase of this PR (which I am happy to proceed with if desired) would be to add MonoDroid support by:
IFileSystem
implementation to provide the filesystem operations for the target platform (monodroid).IFileSystem
instance for convenience.This PR closes BedeGaming/sinks-rollingfile#9