Folders
No notes
Syntax:
C#
/// <summary>
/// Returns the full path to the folder where the plugin's data files are stored.
/// </summary>
public string DataFolder(params string[] path)
{
return DataFolder(true, path);
}
/// <summary>
/// Returns the full path to the folder where the plugin's data files are stored.
/// </summary>
/// <param name="path">Any number of optional files/folders to append to the path</param>
public string DataFolder(bool fallbackToCopy, params string[] path)
{
string separator = Path.DirectorySeparatorChar.ToString();
string target = dataFolder + separator + string.Join(separator, path);
if (!File.Exists(target) && fallbackToCopy)
{
string installedPath = InstallFolder(path);
if (File.Exists(installedPath))
{
Folders.RecursiveCreateDirectory(Path.GetDirectoryName(target));
File.Copy(installedPath, target);
}
}
return target;
}
/// <summary>
/// Returns the full path to the folder where the plugin was loaded from.
/// </summary>
/// <param name="path">Any number of optional files/folders to append to the path</param>
public virtual string InstallFolder(params string[] path)
{
string separator = Path.DirectorySeparatorChar.ToString();
return installFolder + separator + string.Join(separator, path);
}