protected void Init(int users = 5, YDocOptions options = null) { Users = new List <TestYInstance>(); Arrays = new Dictionary <TestYInstance, YArray>(); Maps = new Dictionary <TestYInstance, YMap>(); Texts = new Dictionary <TestYInstance, YText>(); Connector = new TestConnector(); for (int i = 0; i < users; i++) { var y = Connector.CreateY(i, options); Users.Add(y); Arrays[y] = y.GetArray("array"); Maps[y] = y.GetMap("map"); Texts[y] = y.GetText("text"); } Connector.SyncAll(); }
public TestYInstance(TestConnector connector, int clientId, YDocOptions options) : base(options) { ClientId = clientId; _tc = connector; _tc._allConns.Add(this); // Setup observe on local model. UpdateV2 += (s, e) => { if (e.origin != _tc) { using var stream = new MemoryStream(); SyncProtocol.WriteUpdate(stream, e.data); BroadcastMessage(this, stream.ToArray()); } }; Connect(); }