SocketManager.instance constructor

SocketManager.instance({
  1. required BuildContext context,
  2. void onSuccess(
    1. BuildContext context,
    2. SMResponse result
    )?,
  3. void onFailed(
    1. BuildContext context,
    2. SMResponse result
    )?,
  4. required void onDataReceived(
    1. String data
    ),
  5. Function? onStart,
  6. Function? onEnd,
  7. Duration? timeout,
  8. bool showFailedDialog = true,
  9. bool callDefaults = true,
  10. bool callCheckers = true,
})

Implementation

factory SocketManager.instance({
  required BuildContext context,
  void Function(BuildContext context, SMResponse result)? onSuccess,
  void Function(BuildContext context, SMResponse result)? onFailed,
  required void Function(String data) onDataReceived,
  Function? onStart,
  Function? onEnd,
  Duration? timeout,
  bool showFailedDialog = true,
  bool callDefaults = true,
  bool callCheckers = true,
}) {
  SocketManagerMetaData meta = SocketManagerMetaData();

  return SocketManager._(
    context: context,
    tcpAddress: meta.tcpAddress,
    onSuccess:
        onSuccess ?? (BuildContext context, SMResponse responseJson) {},
    onFailed: onFailed ?? (BuildContext context, SMResponse responseJson) {},
    onStart: onStart ?? () {},
    onEnd: onEnd ?? () {},
    showFailedDialog: showFailedDialog,
    callDefaults: callDefaults,
    onSuccessDefault: meta.onSuccessDefault,
    onFailedDefault: meta.onFailedDefault,
    onStartDefault: meta.onStartDefault,
    onEndDefault: meta.onEndDefault,
    successRules: meta.successRules,
    failedRules: meta.failedRules,
    endRules: meta.endRules,
    callCheckers: callCheckers,
    tokenExpireRules: meta.tokenExpireRules,
    onTokenExpire: meta.onTokenExpire,
    successMsgExtractor: meta.successMsgExtractor,
    errorMsgExtractor: meta.errorMsgExtractor,
    successDialog: meta.successDialog,
    useFancyDialog: meta.useFancyDialog,
    failedDialog: meta.failedDialog,
    timeOutSeconds: meta.timeOut,
    onDataReceived: onDataReceived,
    port: meta.tcpPort,
  );
}