createFromConfig static method
Create a ShspInstance from a ShspInstanceConfig object.
Implementation
static ShspInstance createFromConfig(ShspInstanceInput config) {
if (config.socket != null) {
return ShspInstance(
remotePeer: config.remotePeer,
socket: config.socket!,
keepAliveSeconds: config.keepAliveSeconds);
}
if (config.rawSocket != null) {
return createFromSocket(
remotePeer: config.remotePeer,
rawSocket: config.rawSocket!,
keepAliveSeconds: config.keepAliveSeconds);
}
final raw =
RawDatagramSocket.bind(InternetAddress.anyIPv4, 0) as RawDatagramSocket;
final messageCallbacks = MessageCallbackMapFactory.create();
final shspSocket = ShspSocketFactory.create(raw, messageCallbacks);
return ShspInstance(
remotePeer: config.remotePeer,
socket: shspSocket,
keepAliveSeconds: config.keepAliveSeconds);
}