28 lines
954 B
C#
28 lines
954 B
C#
namespace StellaOps.Plugin.Sandbox;
|
|
|
|
/// <summary>
|
|
/// Factory for creating sandbox instances.
|
|
/// </summary>
|
|
public interface ISandboxFactory
|
|
{
|
|
/// <summary>
|
|
/// Create a new sandbox with the specified configuration.
|
|
/// </summary>
|
|
/// <param name="configuration">Sandbox configuration.</param>
|
|
/// <returns>A new sandbox instance.</returns>
|
|
ISandbox Create(SandboxConfiguration configuration);
|
|
|
|
/// <summary>
|
|
/// Create a new sandbox with default configuration.
|
|
/// </summary>
|
|
/// <returns>A new sandbox instance with default settings.</returns>
|
|
ISandbox CreateDefault();
|
|
|
|
/// <summary>
|
|
/// Create a sandbox with configuration appropriate for the given trust level.
|
|
/// </summary>
|
|
/// <param name="trustLevel">Trust level of the plugin.</param>
|
|
/// <returns>A sandbox configured for the trust level.</returns>
|
|
ISandbox CreateForTrustLevel(Abstractions.PluginTrustLevel trustLevel);
|
|
}
|