public class ExchangeSemantic extends java.lang.Object implements ISemantic
Modifier and Type | Field and Description |
---|---|
static short |
PLUGIN_ABILITY
The ability of the plug-in. [5][2].
|
EXTENSION_COMPRESSION, EXTENSION_DISCOVERY, EXTENSION_ENCRYPTION, EXTENSION_ROUTING, EXTENSION_SEMANTIC, EXTENSION_SERIALIZATION, EXTENSION_TRANSCEIVER
Constructor and Description |
---|
ExchangeSemantic(IKeyStore store)
Creates a new exchange semantic plug-in, uses the SECP160R1 curve to perform the key exchange.
|
ExchangeSemantic(java.lang.String curveID,
IKeyStore store)
Creates a new exchange semantic plug-in with the given ECC curveID.
|
Modifier and Type | Method and Description |
---|---|
void |
deliverIncoming(IStreamConnector connector,
ISession session)
Called whenever an incoming connection is forwarded.
|
PluginDescription |
getPluginDescription()
Returns the plug-in description of the exchange semantic.
|
void |
performOutgoing(Invocation invocation,
ISession session)
Called whenever an outgoing invocation shall be delivered.
|
boolean |
prepareSession(PluginDescription d,
NFCollection c,
ISession s)
Negotiates the configuration for the plug-in.
|
void |
setSemanticManager(ISemanticManager manager)
Sets the semantic manager.
|
void |
start()
Stops the plug-in.
|
void |
stop()
Starts the plug-in.
|
public static final short PLUGIN_ABILITY
public ExchangeSemantic(IKeyStore store)
store
- The key store that should be used to retrieve and store keys and certificatespublic ExchangeSemantic(java.lang.String curveID, IKeyStore store)
curveID
- The ECC curve that should be used for the key exchange, can be null to use DH for the key-exchange.store
- The key store that should be used to retrieve and store keys and certificatespublic boolean prepareSession(PluginDescription d, NFCollection c, ISession s)
prepareSession
in interface ISemantic
d
- The description of the remote plug-in.c
- The nf collection with requirements.s
- The session object to store the configuration.public void deliverIncoming(IStreamConnector connector, ISession session)
deliverIncoming
in interface IDispatcher
connector
- The connector for the new connection.session
- The session of the new connection.public void performOutgoing(Invocation invocation, ISession session)
performOutgoing
in interface ISemantic
invocation
- The invocation.session
- The session configuration.public void setSemanticManager(ISemanticManager manager)
setSemanticManager
in interface ISemantic
manager
- The manager of the plug-in.public PluginDescription getPluginDescription()
getPluginDescription
in interface IPlugin