Thursday, November 17, 2016

AbiathRPC - Writing to the server

Today I wired up all the previously-stubbed parts of the AbiathRPC client that get notified of local changes. They now keep records of pending updates, and when MarkChangesMade is called, those changes get pushed to the server.

I decided to abolish the server-side checks for out-of-order tile updates, since they just made things more complicated, especially if I wanted to make them work on full-plane updates. "Last writer wins" makes a lot of sense anyway. Speaking of full-plane updates, full-level updates are temporarily removed because they're basically the same as either three full-plane updates or a level deletion/creation cycle. (The latter will be used in metadata changes.)

After fixing a bug that left the original stub level in the memory of the first tool, AbiathRPC can successfully write to a server from one client! Changes are indeed persisted on the server. The next thing to do is write the parts of the client that receive server updates so some real-time collaboration can happen.

No comments:

Post a Comment