byType<T> method
T?
byType<T>({
- T onTextRequest()?,
- T onTextResponse()?,
- T onFilesRequest()?,
- T onFilesResponse()?,
-
The
onTextRequest
callback returns this instance of NearbyMessageContent, cast as NearbyMessageTextRequest if is a text. -
The
onFilesRequest
callback returns this instance of NearbyMessageContent, cast as NearbyMessageFilesRequest if is a files pack request. -
The
onFilesResponse
callback returns this instance of NearbyMessageContent, cast as NearbyMessageFilesResponse if is a files pack response.
Implementation
T? byType<T>({
T Function(NearbyMessageTextRequest)? onTextRequest,
T Function(NearbyMessageTextResponse)? onTextResponse,
T Function(NearbyMessageFilesRequest)? onFilesRequest,
T Function(NearbyMessageFilesResponse)? onFilesResponse,
}) {
if (this is NearbyMessageTextRequest && onTextRequest != null) {
return onTextRequest(this as NearbyMessageTextRequest);
} else if (this is NearbyMessageTextResponse && onTextResponse != null) {
return onTextResponse(this as NearbyMessageTextResponse);
} else if (this is NearbyMessageFilesRequest && onFilesRequest != null) {
return onFilesRequest(this as NearbyMessageFilesRequest);
} else if (this is NearbyMessageFilesResponse && onFilesResponse != null) {
return onFilesResponse(this as NearbyMessageFilesResponse);
}
return null;
}