I2P Address: [http://git.idk.i2p]

Skip to content
Snippets Groups Projects
Commit 0fb4f6ab authored by zzz's avatar zzz
Browse files

javadocs

parent ebc5e729
No related branches found
No related tags found
No related merge requests found
...@@ -16,6 +16,18 @@ import java.io.OutputStream; ...@@ -16,6 +16,18 @@ import java.io.OutputStream;
/** /**
* Defines the class as a standard object with particular bit representation, * Defines the class as a standard object with particular bit representation,
* exposing methods to read and write that representation. * exposing methods to read and write that representation.
*<p>
* Do not reuse objects.
* Many of modifying methods contain checks to prevent
* altering a DataStructure after it is initialized. This protects the netdb,
* messages that contain DataStructures,
* caches, and the object itself from simple causes of corruption, by
* throwing IllegalStateExceptions.
* These checks are not necessarily thread-safe, and are not guaranteed
* to catch all possible means of corruption.
* Beware of other avenues of corruption, such as directly modifying data
* stored in byte[] objects.
*</p>
* *
* @author jrandom * @author jrandom
*/ */
...@@ -62,4 +74,4 @@ public interface DataStructure /* extends Serializable */ { ...@@ -62,4 +74,4 @@ public interface DataStructure /* extends Serializable */ {
* @return SHA256 hash, or null if there were problems (data format or io errors) * @return SHA256 hash, or null if there were problems (data format or io errors)
*/ */
public Hash calculateHash(); public Hash calculateHash();
} }
\ No newline at end of file
...@@ -12,15 +12,28 @@ package net.i2p.data; ...@@ -12,15 +12,28 @@ package net.i2p.data;
import net.i2p.crypto.DSAEngine; import net.i2p.crypto.DSAEngine;
/** /**
*<p>
* Base implementation of common methods for the two data structures * Base implementation of common methods for the two data structures
* that are stored in the netDb, i.e. LeaseSet and RouterInfo. * that are stored in the netDb, i.e. LeaseSet and RouterInfo.
* Implemented in 0.8.2 and retrofitted over LeaseSet and RouterInfo. * Implemented in 0.8.2 and retrofitted over LeaseSet and RouterInfo.
* *
* This consolidates some common code and makes it easier to * This consolidates some common code and makes it easier to
* implement the NetDB and I2NP without doing instanceof all over the place. * implement the NetDB and I2NP without doing instanceof all over the place.
* *</p><p>
* DatabaseEntries have a SHA256 hash, a routing key, a timestamp, and * DatabaseEntries have a SHA256 hash, a routing key, a timestamp, and
* signatures. * signatures.
*</p><p>
* Do not reuse objects.
* Many of the setters and other methods contain checks to prevent
* altering a DatabaseEntry after it is signed. This protects the netdb,
* messages that contain DatabaseEntries,
* and the object itself from simple causes of corruption, by
* throwing IllegalStateExceptions.
* These checks are not necessarily thread-safe, and are not guaranteed
* to catch all possible means of corruption.
* Beware of other avenues of corruption, such as directly modifying data
* stored in byte[] objects.
*</p>
* *
* @author zzz * @author zzz
* @since 0.8.2 * @since 0.8.2
......
...@@ -3,5 +3,10 @@ ...@@ -3,5 +3,10 @@
<p> <p>
Core I2P package, contains information about the I2P version and an entry point to access important elements. Core I2P package, contains information about the I2P version and an entry point to access important elements.
</p> </p>
<p>
With a few exceptions,
this package and all others in i2p.jar are maintained as a stable API for use
by apps, clients, and plugins.
</p>
</body> </body>
</html> </html>
...@@ -9,6 +9,16 @@ ...@@ -9,6 +9,16 @@
<title>BlockFile</title> <title>BlockFile</title>
</head> </head>
<body> <body>
<p>
I2P Notes:
This is the database used by the BlockfileNamingService class.
It is heavily modified from the original 0.1.1 version.
Not for direct use by apps, clients, or plugins.
This package is not currently intended for general use, as
the API may be subject to change.
Contact I2P developers if you are considering use in another application.
Following is the original documentation copied from metanotion website.
</p>
<h1>Metanotion BlockFile Database</h1> <h1>Metanotion BlockFile Database</h1>
<p>A 100% Java 1.3, BSD Licensed, embeddable single file database engine in 32KB. This database was designed for PDA based and J2ME applications.</p> <p>A 100% Java 1.3, BSD Licensed, embeddable single file database engine in 32KB. This database was designed for PDA based and J2ME applications.</p>
......
<html><body> <html><body>
<p> <p>
This package defines the low-level messages sent between routers,
called the Invisible Internet Network Protocol (I2NP).
</p>
<p>
Not for use by apps, clients or plugins.
</p>
<p>
The Invisible Internet Network Protocol (I2NP) is only a part of how an The Invisible Internet Network Protocol (I2NP) is only a part of how an
application can send messages over the network. The Invisible Internet Client application can send messages over the network. The Invisible Internet Client
Protocol (I2CP) defines how client applications written in any language can Protocol (I2CP) defines how client applications written in any language can
......
...@@ -6,5 +6,10 @@ ...@@ -6,5 +6,10 @@
<p> <p>
It encompasses sending and receiving messages, building up tunnels, encrypting and decrypting (on multiple levels) where applicable, and so on. It encompasses sending and receiving messages, building up tunnels, encrypting and decrypting (on multiple levels) where applicable, and so on.
</p> </p>
<p>
Classes in this package, sub-packages, and others in router.jar are
not for use by apps, clients or plugins (except for routerconsole).
Subject to change. Not necessarily maintained as a stable API.
</p>
</body> </body>
</html> </html>
...@@ -3,4 +3,8 @@ ...@@ -3,4 +3,8 @@
These classes define the several useful utilities used These classes define the several useful utilities used
throughout the router. throughout the router.
</p> </p>
<p>
Not for use by apps, clients or plugins.
Subject to change. Not necessarily maintained as a stable API.
</p>
</body></html> </body></html>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment