toString method

  1. @override
String toString()
override

A string representation of this object.

Some classes have a default textual representation, often paired with a static parse function (like int.parse). These classes will provide the textual representation as their string representation.

Other classes have no meaningful textual representation that a program will care about. Such classes will typically override toString to provide useful information when inspecting the object, mainly for debugging or logging.

Implementation

@override
String toString() {
  var domainsStr =
      domainsRoots.isNotEmpty
          ? ', domains: [${domainsRoots.entries.map((e) {
            var key = e.key;
            var val = e.value;

            return '${key is RegExp ? 'r/${key.pattern}/' : '`$key`'}=${val.path}';
          }).join(' ; ')}]'
          : '';

  var secureStr =
      securePort < 10
          ? ''
          : ', securePort: $securePort, '
              'letsEncrypt: $letsEncrypt'
              '${(letsEncrypt ? (letsEncryptProduction ? ' @production' : ' @staging') : '')}, '
              'letsEncryptDirectory: ${letsEncryptDirectory?.path}';

  return 'APIServerWorker{ apiRoot: ${apiRoot.name}[${apiRoot.version}] (${apiRoot.runtimeTypeNameUnsafe}), address: $address, port: $port$secureStr, cacheStaticFilesResponses: $cacheStaticFilesResponses, hotReload: $hotReload (${APIHotReload.get().isEnabled ? 'enabled' : 'disabled'}), cookieless: $cookieless, SESSIONID: $useSessionID, started: $isStarted, stopped: $isStopped$domainsStr }';
}