Files
LanMountainDesktop/LanMountainDesktop/plugins/PluginLoaderOptions.cs
2026-04-13 08:02:47 +08:00

29 lines
956 B
C#

using System;
using System.Collections.Generic;
using LanMountainDesktop.PluginSdk;
namespace LanMountainDesktop.Plugins;
public sealed class PluginLoaderOptions
{
public string ManifestFileName { get; init; } = PluginSdkInfo.ManifestFileName;
public string PackageFileExtension { get; init; } = PluginSdkInfo.PackageFileExtension;
public string DataDirectoryName { get; init; } = PluginSdkInfo.DataDirectoryName;
public string RuntimeDirectoryName { get; init; } = PluginSdkInfo.RuntimeDirectoryName;
public string ExtractedPackagesDirectoryName { get; init; } = PluginSdkInfo.ExtractedPackagesDirectoryName;
public string PackagedDataDirectoryName { get; init; } = PluginSdkInfo.PackagedDataDirectoryName;
public bool IsDevMode { get; init; }
public ISet<string> SharedAssemblyNames { get; } = new HashSet<string>(StringComparer.OrdinalIgnoreCase)
{
typeof(IPlugin).Assembly.GetName().Name!
};
}