Skip to content

Class SandboxContext

Namespace: DotBoxD.Kernels.Sandbox
Assembly: DotBoxD.Kernels.dll

public sealed class SandboxContext

objectSandboxContext

object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.ReferenceEquals(object?, object?), object.ToString()

SandboxContext(SandboxRunId, SandboxPolicy, ResourceMeter, BindingRegistry, IAuditSink, CancellationToken, IReadOnlySet<string>?, string?, string?)

Section titled “ SandboxContext(SandboxRunId, SandboxPolicy, ResourceMeter, BindingRegistry, IAuditSink, CancellationToken, IReadOnlySet<string>?, string?, string?)”
public SandboxContext(SandboxRunId runId, SandboxPolicy policy, ResourceMeter budget, BindingRegistry bindings, IAuditSink audit, CancellationToken cancellationToken, IReadOnlySet<string>? allowedBindingIds = null, string? moduleHash = null, string? policyHash = null)

runId SandboxRunId

policy SandboxPolicy

budget ResourceMeter

bindings BindingRegistry

audit IAuditSink

cancellationToken CancellationToken

allowedBindingIds IReadOnlySet<string>?

moduleHash string?

policyHash string?

public bool AsyncEnabled { get; }

bool

public IAuditSink Audit { get; }

IAuditSink

public BindingRegistry Bindings { get; }

BindingRegistry

public ResourceMeter Budget { get; }

ResourceMeter

public CancellationToken CancellationToken { get; }

CancellationToken

public string ModuleHash { get; }

string

public SandboxPolicy Policy { get; }

SandboxPolicy

public string PolicyHash { get; }

string

public SandboxRunId RunId { get; }

SandboxRunId

public long AuditCheckpoint()

long

public DateTimeOffset AuditTimestamp()

DateTimeOffset

public IDisposable BeginBindingReturnCreditScope()

IDisposable

BindingAuditFields(string, DateTimeOffset, long?, long?)

Section titled “ BindingAuditFields(string, DateTimeOffset, long?, long?)”
public IReadOnlyDictionary<string, string> BindingAuditFields(string resourceKind, DateTimeOffset startedAt, long? bytesRead = null, long? bytesWritten = null)

resourceKind string

startedAt DateTimeOffset

bytesRead long?

bytesWritten long?

IReadOnlyDictionary<string, string>

public void ChargeAllocation(long bytes)

bytes long

public void ChargeBindingCall(BindingDescriptor descriptor)

descriptor BindingDescriptor

ChargeBindingReturn(BindingDescriptor, SandboxValue)

Section titled “ ChargeBindingReturn(BindingDescriptor, SandboxValue)”
public SandboxValue ChargeBindingReturn(BindingDescriptor descriptor, SandboxValue value)

descriptor BindingDescriptor

value SandboxValue

SandboxValue

public void ChargeCollection(SandboxValue value)

value SandboxValue

public void ChargeFuel(long amount)

amount long

public void ChargeLogEvent(string message)

message string

public void ChargeLoopIteration(long fuelAmount)

fuelAmount long

public void ChargeLoopIterations(long iterations, long fuelPerIteration)

iterations long

fuelPerIteration long

public void ChargeString(string value)

value string

public void ChargeStringAllocation(int charLength)

charLength int

public void ChargeValue(SandboxValue value)

value SandboxValue

public void Checkpoint()

CreateChargedStringConcat(string, string)

Section titled “ CreateChargedStringConcat(string, string)”
public string CreateChargedStringConcat(string left, string right)

left string

right string

string

public string CreateChargedSubstring(string value, int startIndex, int length)

value string

startIndex int

length int

string

public CancellationTokenSource CreateWallTimeToken()

CancellationTokenSource

EnsureRequiredBindingFailureAudit(BindingDescriptor, long, SandboxErrorCode)

Section titled “ EnsureRequiredBindingFailureAudit(BindingDescriptor, long, SandboxErrorCode)”
public void EnsureRequiredBindingFailureAudit(BindingDescriptor descriptor, long checkpoint, SandboxErrorCode errorCode)

descriptor BindingDescriptor

checkpoint long

errorCode SandboxErrorCode

EnsureRequiredBindingSuccessAudit(BindingDescriptor, long)

Section titled “ EnsureRequiredBindingSuccessAudit(BindingDescriptor, long)”
public void EnsureRequiredBindingSuccessAudit(BindingDescriptor descriptor, long checkpoint)

descriptor BindingDescriptor

checkpoint long

public void EnterCall()
public void ExitCall()
public CapabilityGrant GetCapability(string capabilityId)

capabilityId string

CapabilityGrant

public int NextRandomInt32(int minInclusive, int maxExclusive)

minInclusive int

maxExclusive int

int

public void RequireCapability(string capabilityId)

capabilityId string

public DateTimeOffset UtcNow()

DateTimeOffset