[REEF-1584] Fix CoreCLR Issues in Org.Apache.REEF.IO
This addressed the issue by
* Targeting .NET Core 2.0 Framework
* Rewriting the DirectoryInfo.Create(DirectorySecurity) and CreateSubdirectory(DirectorySecurity) commands to use the SetAccessControl APIs that are supported in .NET Core 2.0
* See the Extension Methods section of the [.NET Standard 2.0 documentation](https://docs.microsoft.com/en-us/dotnet/api/system.io.directoryinfo?view=netstandard-2.0) for details on the supported APIs. (Note that these extensions are all .NET Core 2.0, not .NET Standard.)
JIRA:
[REEF-1584](https://issues.apache.org/jira/browse/REEF-1584)
Pull request:
This closes #1351
diff --git a/lang/cs/Org.Apache.REEF.IO/Files/DefaultDirectoryInfo.cs b/lang/cs/Org.Apache.REEF.IO/Files/DefaultDirectoryInfo.cs
index 47a86fe..29011a8 100644
--- a/lang/cs/Org.Apache.REEF.IO/Files/DefaultDirectoryInfo.cs
+++ b/lang/cs/Org.Apache.REEF.IO/Files/DefaultDirectoryInfo.cs
@@ -180,7 +180,8 @@
/// </summary>
public void Create(DirectorySecurity directorySecurity)
{
- _directoryInfo.Create(directorySecurity);
+ _directoryInfo.Create();
+ _directoryInfo.SetAccessControl(directorySecurity);
}
/// <summary>
@@ -196,7 +197,9 @@
/// </summary>
public IDirectoryInfo CreateSubdirectory(string path, DirectorySecurity directorySecurity)
{
- return FromDirectoryInfo(_directoryInfo.CreateSubdirectory(path, directorySecurity));
+ var directoryInfo = CreateSubdirectory(path);
+ directoryInfo.SetAccessControl(directorySecurity);
+ return directoryInfo;
}
/// <summary>