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() {
  String string =
      'PermissionDeniedException for user session $user with reason $denyType';
  switch (denyType) {
    case DenyType.permission:
      string =
          '$string in channel with id $channel and denied permission $deniedPermission';
      break;
    case DenyType.userName:
      string = '$string; tried using name $invalidUserName';
      break;
    default:
      break;
  }
  if (reason != null && reason!.isNotEmpty) {
    string = '$string\r\nReason: $reason';
  }
  return string;
}