Developer Resources
If you would like to participate in the development of Cleversafe Dispersed Storage Networks, you will need to have the following development tools and libraries installed.
Tools
- Environment: Eclipse 3.3.
- Language: Java, jdk 1.5
Third-party Libraries
- iSCSI Target
The jSCSI Library was extended to provide support for the dsNet iSCSI Target.
jscsi-modified-070601.jar http://jscsi.org/
- Background Process
The Wrapper Library is used to create Unix daemons or Windows services for the Slicestors and iSCSI Target.
wrapper.jar libwrapper.so (native library required by the portion of the Wrapper which runs within the JVM) http://wrapper.tanukisoftware.org/
- Command Line Parsing
JSAP is used to parse arguments to the dsNet programs, which include dsgrid-create-account, dsgrid-create-vault, dsgrid-server, and dsgrid-iscsi.
JSAP-2.1.jar xstream-1.2.2.jar (JSAP dependency) http://www.martiansoftware.com/jsap/
- Networking
MINA is a network application framework used to provides networking functionality for the Slicestors and iSCSI Target.
mina-core-1.1.0-sources.jar mina-core-1.1.0.jar mina-filter-ssl-1.1.0.jar http://mina.apache.org/
- Authentication
JPAM is used to implement PAM authentication on the Slicestors.
JPam-1.0.jar libjpam.so (native library used by the JPAM Java Library) http://jpam.sourceforge.net/
- Logging
Log4j is used for logging and its configuration.
log4j-1.2.14.jar http://logging.apache.org/log4j/
- Testing
JUnit is used to create and run unit tests.
junit-4.1.jar http://www.junit.org/
- XML Parser
ws-commons-java5 implements several Java classes, which are a part of Java 5 and is used to parse XML files.
ws-commons-java5-1.0.1.jar ws-commons-util-1.0.1.jar (Dependency of ws-commons-java5) http://ws.apache.org/commons/ws-commons-java5/
- Cryptographic Operations and Serialization
Bouncy Castle's Cryptographic library used for serialization and cryptographic operations.
bcprov-jdk15-136.jar http://www.bouncycastle.org/
- 10. BDB Access
je is used to access and created Berkeley Databases (BDB) to support a database-based implentation of the slice-store.
je-3.2.23.jar (Used for accessing and created Berkeley Databases (BDB)) http://www.oracle.com/technology/software/products/berkeley-db/je/
- XBeans
Used to convert XML schemas into Java classes.
xbean.jar http://xmlbeans.apache.org/
- Unimod
Unimod is used to create code based on finite-state machine definitions.
unimod-core.jar velocity-1.4.jar antlr.jar http://unimod.sourceforge.net/
- Embedded HTTP Server and Servlet Container
Jetty is a web server used for the configuration of files from a web interface.
jetty-6.1.5.jar jetty-util-6.1.5.jar servlet-api-2.5-6.1.5.jar servlet-api.jar http://www.mortbay.org/
- Miscelaneous Support Libraries
- Used for Compression
bzip2.jar
- Used for Java Subversion Support
svnkit.jar
- Used in the Generation of Random Number
commons-math-1.1.jar


