toString method
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() {
if (pipeline != null) {
// For a pipeline
final pipeStr = (pipeline != ServerPipeline.defaultName)
? 'pipeline="$pipeline" '
: '';
if (pattern != null) {
// Request handler
assert(httpMethod != null, 'invalid Handler');
assert(priority != null, 'invalid Handler');
final priorityStr = (priority != 0) ? 'priority=$priority ' : '';
return '$pipeStr$priorityStr$httpMethod $pattern';
} else {
// Pipeline exception handler
assert(httpMethod == null, 'invalid Handler');
assert(priority == null, 'invalid Handler');
return '${pipeStr}pipeline exception handler';
}
} else {
// For the server
assert(pattern == null);
assert(httpMethod == null);
if (priority == _serverHighLevel) {
return 'server exception handler';
} else if (priority == _serverLowLevel) {
return 'server raw exception handler';
} else {
assert(false, 'invalid Handler');
return 'invalid Handler';
}
}
}