createFromConfig static method

ShspInstance createFromConfig(
  1. ShspInstanceInput config
)

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);
}