addCall method

void addCall(
  1. InfospectNetworkCall call
)

Logs a new network call.

  • call: The network call to be logged.

Implementation

void addCall(InfospectNetworkCall call) {
  final callsCount = _infospect.networkCallsSubject.value.length;
  if (callsCount >= _infospect.maxCallsCount) {
    final originalCalls = _infospect.networkCallsSubject.value;
    final calls = List<InfospectNetworkCall>.from(originalCalls);
    calls.sort(
      (call1, call2) => call1.createdTime.compareTo(call2.createdTime),
    );
    final indexToReplace = originalCalls.indexOf(calls.first);
    originalCalls[indexToReplace] = call;

    _infospect.networkCallsSubject.add(originalCalls);
  } else {
    _infospect.networkCallsSubject
        .add([..._infospect.networkCallsSubject.value, call]);
  }
  _infospect.sendNetworkCalls();
}