Instead of exposing the database via the SphinxClient interface,
this commit introduces the concept of a Project. Projects are
simply the data exposed via the database created by the sphinx agent.
By separating the two, not only does the SphinxClient get to focus
solely on managing the underlying Sphinx process but we open up
interesting opportunities. For example, we can run the server without
an active Sphinx connection - a kind of "offline" mode.
Something that might be interesting to try as an initial vscode.dev
implementation of the server...
Instead of exposing the database via the
SphinxClient
interface, this commit introduces the concept of aProject
. Projects are simply the data exposed via the database created by the sphinx agent.By separating the two, not only does the
SphinxClient
get to focus solely on managing the underlying Sphinx process but we open up interesting opportunities. For example, we can run the server without an active Sphinx connection - a kind of "offline" mode.Something that might be interesting to try as an initial vscode.dev implementation of the server...