Nebula
Control plane

SpacetimeControlPlane

IControlPlane over the SpacetimeDB module in Assets/Nebula/SpacetimeDB/Module~.

generated from the sources
public sealed class SpacetimeControlPlane : IControlPlane

IControlPlane over the SpacetimeDB module in Assets/Nebula/SpacetimeDB/Module~. Subscribes to the whole (tiny) database and mirrors it into plain lists; writes go through reducers. The connection is pumped from Tick so every callback lands on the main thread.

Constructors

SpacetimeControlPlane

public SpacetimeControlPlane(string uri, string database);

Properties

IsConnected

public bool IsConnected { get; }

Now

public DateTime Now { get; }

Workers

public IReadOnlyList<WorkerInfo> Workers { get; }

Leases

public IReadOnlyList<LeaseInfo> Leases { get; }

Gateways

public IReadOnlyList<GatewayInfo> Gateways { get; }

Settings

public IReadOnlyDictionary<string, string> Settings { get; }

Events

Changed

public event Action Changed;

Methods

Connect

public void Connect();

Tick

public void Tick();

RegisterWorker

public void RegisterWorker(string workerId, uint workerIndex, string address, ushort port);

HeartbeatWorker

public void HeartbeatWorker(string workerId, string status, in WorkerStats s);

UnregisterWorker

public void UnregisterWorker(string workerId);

RegisterGateway

public void RegisterGateway(string gatewayId, string address, ushort port);

HeartbeatGateway

public void HeartbeatGateway(string gatewayId);

UnregisterGateway

public void UnregisterGateway(string gatewayId);

HeartbeatOrchestrator

public void HeartbeatOrchestrator(string orchestratorId, uint desiredWorkers);

SetSetting

public void SetSetting(string key, string value);

EnsureContainer

public void EnsureContainer(string containerId);

AssignContainer

public void AssignContainer(string containerId, string workerId);

SetLeaseState

public void SetLeaseState(string containerId, string state);

ReleaseContainer

public void ReleaseContainer(string containerId);

ResetControlPlane

public void ResetControlPlane();

Dispose

public void Dispose();

On this page