-
Notifications
You must be signed in to change notification settings - Fork 1
SDshareImplementation
The sandbox contains an experimental implementation of the SDshare protocol. There is both a server and a client, but neither production quality at the moment. You are hereby warned.
The server is designed to support high-performance replication of a topic map from one node to another. It therefore makes no attempt to persist snapshots or fragments, but instead produces these on-demand. Different modifications to a single topic at different times will produce a single fragment for that topic.
Key missing features:
Persisting the fragment feed when the server is restarted.Faster detection of duplicate fragments (ie: performance with many changes).- A fix for SDshare bug #3675.
- A fix for SDshare bug #3672.
- A fix for SDshare bug #3667.
Expiry of old fragments after a given time interval.- Support for XTM 2.0 in fragments.
The server is at the moment written as a JSP web application for ease of development. This may change with time.
The client is a straightforward client which attempts to follow the protocol definition as closely as possible. It is intended to work with any SDshare server. It supports pluggable backends, making it easy to implement new SDshare clients. Currently there is an Ontopia backend and a SPARQL backend.
To install the server, run "ant jar server.war" in the sdshare directory. Copy sdshare.jar into the same directory in your web server that contains ontopia.jar. Modify sdshare.properties, and copy it into the corresponding /classes directory. Copy sdshare.war into your webapps directory. Restart the server. Now you can access http://localhost:8080/sdshare/
To make the ant jar server.war
command succeed, you must have ontopia.jar
and servlet-api.jar
on the classpath.
To install the client, run "ant jar client.war" in the sdshare directory. Copy sdshare.jar into the same directory in your web server that contains ontopia.jar. Modify sdshare-client.xml and copy it into the corresponding /classes directory. Copy sdshare-client.war into your webapps directory. Restart the server.
Now you can access http://localhost:8080/sdshare-client/ and the rest should be self-explanatory.
The client now supports multiple frontends providing change information (basically, reading SDshare/Atom remotely, and getting directly from Ontopia locally), as well as multiple backends for receiving change information (writing to Ontopia locally, SDshare push, and using SPARQL Update).
The SDshare implementation requires Ontopia version 5.1.3 or higher.
At the moment, the .jar file has a dependency on HttpComponents for the SDshare push and SPARQL Update backends.
Download:
http://apache.uib.no//httpcomponents/httpclient/binary/httpcomponents-client-4.1-bin.zip http://apache.uib.no//httpcomponents/httpcore/binary/httpcomponents-core-4.1-bin.zip
The httpclient-4.0.3.jar and httpcore-4.1.jar files need to go into the same directory that sdshare.jar is already in.