Control plane
SpacetimeControlPlane
IControlPlane over the SpacetimeDB module in Assets/Nebula/SpacetimeDB/Module~.
generated from the sources
Class in namespace
Nebula · Packages/com.1by3.nebula/Runtime/ControlPlane/SpacetimeControlPlane.cspublic sealed class SpacetimeControlPlane : IControlPlaneIControlPlane 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();