mirror of
https://code.briarproject.org/briar/briar.git
synced 2026-02-16 12:49:55 +01:00
Updated the transport plugin API.
This commit is contained in:
@@ -1,7 +1,9 @@
|
|||||||
package net.sf.briar.api.transport.batch;
|
package net.sf.briar.api.transport.batch;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* An interface for receiving readers and writers created by a batch-mode
|
* An interface for receiving readers and writers created by a batch-mode
|
||||||
* transport plugin.
|
* transport plugin.
|
||||||
*/
|
*/
|
||||||
public interface BatchTransportCallback {
|
public interface BatchTransportCallback {
|
||||||
@@ -9,4 +11,8 @@ public interface BatchTransportCallback {
|
|||||||
void readerCreated(BatchTransportReader r);
|
void readerCreated(BatchTransportReader r);
|
||||||
|
|
||||||
void writerCreated(BatchTransportWriter w);
|
void writerCreated(BatchTransportWriter w);
|
||||||
|
|
||||||
|
void setLocalTransports(Map<String, String> transports);
|
||||||
|
|
||||||
|
void setConfig(Map<String, String> config);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,16 +13,32 @@ import net.sf.briar.api.transport.InvalidTransportException;
|
|||||||
public interface BatchTransportPlugin {
|
public interface BatchTransportPlugin {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialises the plugin and returns. Any connections that are later
|
* Returns the plugin's name, which is used to distinguish its transport
|
||||||
* established by contacts or through polling will be passed to the given
|
* and configuration properties from those of other plugins.
|
||||||
* callback.
|
|
||||||
*/
|
*/
|
||||||
void start(Map<ContactId, Map<String, String>> transports,
|
String getName();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Starts the plugin. Any connections that are later initiated by contacts
|
||||||
|
* or established through polling will be passed to the given callback.
|
||||||
|
*/
|
||||||
|
void start(Map<String, String> localTransports,
|
||||||
|
Map<ContactId, Map<String, String>> remoteTransports,
|
||||||
Map<String, String> config, BatchTransportCallback c)
|
Map<String, String> config, BatchTransportCallback c)
|
||||||
throws InvalidTransportException, InvalidConfigException;
|
throws InvalidTransportException, InvalidConfigException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Stops the plugin. No further connections will be passed to the callback
|
||||||
|
* after this method has returned.
|
||||||
|
*/
|
||||||
|
void stop();
|
||||||
|
|
||||||
|
/** Updates the plugin's local transport properties. */
|
||||||
|
void setLocalTransports(Map<String, String> transports)
|
||||||
|
throws InvalidTransportException;
|
||||||
|
|
||||||
/** Updates the plugin's transport properties for the given contact. */
|
/** Updates the plugin's transport properties for the given contact. */
|
||||||
void setTransports(ContactId c, Map<String, String> transports)
|
void setRemoteTransports(ContactId c, Map<String, String> transports)
|
||||||
throws InvalidTransportException;
|
throws InvalidTransportException;
|
||||||
|
|
||||||
/** Updates the plugin's configuration properties. */
|
/** Updates the plugin's configuration properties. */
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
package net.sf.briar.api.transport.stream;
|
package net.sf.briar.api.transport.stream;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* An interface for receiving connections created by a stream-mode transport
|
* An interface for receiving connections created by a stream-mode transport
|
||||||
* plugin.
|
* plugin.
|
||||||
@@ -7,4 +9,8 @@ package net.sf.briar.api.transport.stream;
|
|||||||
public interface StreamTransportCallback {
|
public interface StreamTransportCallback {
|
||||||
|
|
||||||
void connectionCreated(StreamTransportConnection c);
|
void connectionCreated(StreamTransportConnection c);
|
||||||
|
|
||||||
|
void setLocalTransports(Map<String, String> transports);
|
||||||
|
|
||||||
|
void setConfig(Map<String, String> config);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,16 +13,32 @@ import net.sf.briar.api.transport.InvalidTransportException;
|
|||||||
public interface StreamTransportPlugin {
|
public interface StreamTransportPlugin {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialises the plugin and returns. Any connections that are later
|
* Returns the plugin's name, which is used to distinguish its transport
|
||||||
* established by contacts or through polling will be passed to the given
|
* and configuration properties from those of other plugins.
|
||||||
* callback.
|
|
||||||
*/
|
*/
|
||||||
void start(Map<ContactId, Map<String, String>> transports,
|
String getName();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Starts the plugin. Any connections that are later initiated by contacts
|
||||||
|
* or established through polling will be passed to the given callback.
|
||||||
|
*/
|
||||||
|
void start(Map<String, String> localTransports,
|
||||||
|
Map<ContactId, Map<String, String>> remoteTransports,
|
||||||
Map<String, String> config, StreamTransportCallback c)
|
Map<String, String> config, StreamTransportCallback c)
|
||||||
throws InvalidTransportException, InvalidConfigException;
|
throws InvalidTransportException, InvalidConfigException;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Stops the plugin. No further connections will be passed to the callback
|
||||||
|
* after this method has returned.
|
||||||
|
*/
|
||||||
|
void stop();
|
||||||
|
|
||||||
|
/** Updates the plugin's local transport properties. */
|
||||||
|
void setLocalTransports(Map<String, String> transports)
|
||||||
|
throws InvalidTransportException;
|
||||||
|
|
||||||
/** Updates the plugin's transport properties for the given contact. */
|
/** Updates the plugin's transport properties for the given contact. */
|
||||||
void setTransports(ContactId c, Map<String, String> transports)
|
void setRemoteTransports(ContactId c, Map<String, String> transports)
|
||||||
throws InvalidTransportException;
|
throws InvalidTransportException;
|
||||||
|
|
||||||
/** Updates the plugin's configuration properties. */
|
/** Updates the plugin's configuration properties. */
|
||||||
|
|||||||
Reference in New Issue
Block a user