mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-12 18:59:06 +01:00
38 lines
1.1 KiB
Java
38 lines
1.1 KiB
Java
package org.briarproject.api.reliability;
|
|
|
|
import java.io.InputStream;
|
|
import java.io.OutputStream;
|
|
|
|
/**
|
|
* A protocol layer that attempts to ensure reliable, ordered delivery of data
|
|
* across an unreliable lower layer. Interactions with the lower layer use the
|
|
* buffer-oriented {@link ReadHandler} and {@link WriteHandler} interfaces; the
|
|
* reliability layer presents stream-oriented
|
|
* {@link java.io.InputStream InputStream} and
|
|
* {@link java.io.OutputStream OutputStream} interfaces to higher layers.
|
|
*/
|
|
public interface ReliabilityLayer extends ReadHandler {
|
|
|
|
/** Starts the reliability layer. */
|
|
void start();
|
|
|
|
/**
|
|
* Stops the reliability layer. After this method returns, no more data
|
|
* will be sent to lower layers, and any data received from lower layers
|
|
* will be ignored.
|
|
*/
|
|
void stop();
|
|
|
|
/**
|
|
* Returns an input stream for higher layers to read from the reliability
|
|
* layer.
|
|
*/
|
|
InputStream getInputStream();
|
|
|
|
/**
|
|
* Returns an output stream for higher layers to write to the reliability
|
|
* layer.
|
|
*/
|
|
OutputStream getOutputStream();
|
|
}
|