Commit ebc22938 authored by Gavin Williams's avatar Gavin Williams Committed by Commit Bot

Convert printer status query check to switch statement

Using a switch statement better represents the fact that the
PrinterQueryResult enum only contains 3 possible options: SUCCESS,
UNREACHABLE, or UNKNOWN_FAILURE.

Bug: 1059607
Change-Id: I0887d532a9f2bc67f63ba218401480ae7e7b8762
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2349986
Commit-Queue: Gavin Williams <gavinwill@chromium.org>
Reviewed-by: default avatarZentaro Kavanagh <zentaro@chromium.org>
Cr-Commit-Position: refs/heads/master@{#797099}
parent ce93e2f0
...@@ -400,43 +400,47 @@ class CupsPrintersManagerImpl ...@@ -400,43 +400,47 @@ class CupsPrintersManagerImpl
PrinterStatusCallback cb, PrinterStatusCallback cb,
PrinterQueryResult result, PrinterQueryResult result,
const ::printing::PrinterStatus& printer_status) { const ::printing::PrinterStatus& printer_status) {
if (result == PrinterQueryResult::UNREACHABLE) { switch (result) {
PRINTER_LOG(ERROR) case PrinterQueryResult::UNREACHABLE: {
<< "Printer status request failed. Could not reach printer " PRINTER_LOG(ERROR)
<< printer_id; << "Printer status request failed. Could not reach printer "
CupsPrinterStatus error_printer_status(printer_id); << printer_id;
error_printer_status.AddStatusReason( CupsPrinterStatus error_printer_status(printer_id);
CupsPrinterStatus::CupsPrinterStatusReason::Reason:: error_printer_status.AddStatusReason(
kPrinterUnreachable, CupsPrinterStatus::CupsPrinterStatusReason::Reason::
CupsPrinterStatus::CupsPrinterStatusReason::Severity::kError); kPrinterUnreachable,
std::move(cb).Run(std::move(error_printer_status)); CupsPrinterStatus::CupsPrinterStatusReason::Severity::kError);
return; std::move(cb).Run(std::move(error_printer_status));
} break;
}
if (result == PrinterQueryResult::UNKNOWN_FAILURE) { case PrinterQueryResult::UNKNOWN_FAILURE: {
PRINTER_LOG(ERROR) << "Printer status request failed. Unknown failure " PRINTER_LOG(ERROR) << "Printer status request failed. Unknown failure "
"trying to reach printer " "trying to reach printer "
<< printer_id; << printer_id;
CupsPrinterStatus error_printer_status(printer_id); CupsPrinterStatus error_printer_status(printer_id);
error_printer_status.AddStatusReason( error_printer_status.AddStatusReason(
CupsPrinterStatus::CupsPrinterStatusReason::Reason::kUnknownReason, CupsPrinterStatus::CupsPrinterStatusReason::Reason::kUnknownReason,
CupsPrinterStatus::CupsPrinterStatusReason::Severity::kWarning); CupsPrinterStatus::CupsPrinterStatusReason::Severity::kWarning);
std::move(cb).Run(std::move(error_printer_status)); std::move(cb).Run(std::move(error_printer_status));
return; break;
} }
case PrinterQueryResult::SUCCESS: {
if (result == PrinterQueryResult::SUCCESS) { // Convert printing::PrinterStatus to printing::CupsPrinterStatus
// Convert printing::PrinterStatus to printing::CupsPrinterStatus CupsPrinterStatus cups_printers_status =
CupsPrinterStatus cups_printers_status = PrinterStatusToCupsPrinterStatus(printer_id, printer_status);
PrinterStatusToCupsPrinterStatus(printer_id, printer_status);
// Save the PrinterStatus so it can be attached along side future Printer // Save the PrinterStatus so it can be attached along side future
// retrievals. // Printer retrievals.
printers_.SavePrinterStatus(printer_id, cups_printers_status); printers_.SavePrinterStatus(printer_id, cups_printers_status);
// Send status back to the handler through PrinterStatusCallback. // Send status back to the handler through PrinterStatusCallback.
std::move(cb).Run(std::move(cups_printers_status)); std::move(cb).Run(std::move(cups_printers_status));
return; break;
}
default: {
NOTREACHED();
break;
}
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment