protected function forceFormatFromResourceString(Request &$request)
{
$lastPartIndex = count($request->resourceParts) - 1;
if ($lastPartIndex < 0) {
return $request;
}
$lastPart = $request->resourceParts[$lastPartIndex];
$lastDotPosition = strrpos($lastPart, Library::dotSeparator);
if ($lastDotPosition !== false) {
$format = substr($lastPart, $lastDotPosition + 1);
if ($format !== '') {
$mime = MimeTypes::preferredMimeTypeFor($format);
if ($mime !== false) {
$request->accepts->forceFormat($format);
$request->setResource(substr($request->resource, 0, strrpos($request->resource, Library::dotSeparator)));
}
}
}
return $request;
}