Investigator Toolkit APIs
-------------------------
.. module:: ITK_APIs
Components of the Investigator Toolkit leverage the service interfaces exposed
by Coordinating and Member Nodes to facilitate content discovery, retrieval,
and creation.
Documentation for specific tools is maintained separately with the respective
distributions.
Developers are strongly encouraged to utilize at least the ``common`` and
``libclient`` libraries for their implementations, as these will handle the
necessary communications and message processing for interaction with the
DataONE service interfaces.
Java Tools
~~~~~~~~~~
The DataONE developed Java libraries are available through the `DataONE
subversion repository`_ as source, and as compiled artifacts through the
DataONE private Maven repository which is located at:
http://maven.dataone.org/
These can be readily integrated into Maven project by adding the repository to
the pom.xml file::
dataone.org
http://maven.dataone.org
true
true
Documentation for the libraries is generated by the Maven ``javadoc:javadoc``
goal. Javadocs for some libraries is available on the `continuous build
environment`_.
The two main libraries for client application development include
``d1_common_java`` ( `documentation `_ ) which provides message
generation and parsing capabilities, and ``d1_libclient_java provides``
( `documentation `_ ) the implementation of methods that
support communication with Member and Coordinating Nodes through the DataONE
service interfaces.
Python Tools
~~~~~~~~~~~~
The DataONE developed Python libraries are distributed through PyPi_, and the
latest versions can be found there by `searching for "dataone"`_.
The core libraries of `dataone.common`_, `dataone.certificate_extensions`_,
and `dataone.libclient`_ provide low level support for message generation and
parsing, x509 certificate processing, and communications with the Coordinating
and Member Node service interfaces respectively. The source for each of these
is available in the `DataONE subversion repository`_, and generated documentation
is available from `pythonhosted.org`_ for the respective components (see
documentation links in the PyPi entries for each component).
.. _PyPi: https://pypi.python.org
.. _dataone.common: https://pypi.python.org/pypi/dataone.common
.. _dataone.certificate_extensions: https://pypi.python.org/pypi/dataone.certificate_extensions
.. _dataone.libclient: https://pypi.python.org/pypi/dataone.libclient
.. _DataONE subversion repository: https://repository.dataone.org/software/cicore/trunk/
.. _pythonhosted.org: http://pythonhosted.org
.. _continuous build environment: http://jenkins-1.dataone.org/jenkins
.. _d1_common_java: http://jenkins-1.dataone.org/jenkins/job/d1_common_java/ws/d1_common_java/target/site/apidocs/index.html
.. _d1_libclient_java: http://jenkins-1.dataone.org/jenkins/job/d1_libclient_java/ws/d1_libclient_java/target/site/apidocs/index.html
.. _searching for "dataone": https://pypi.python.org/pypi?%3Aaction=search&term=dataone&submit=search