| // Copyright 2019 The Chromium OS Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "cros-disks/error_logger.h" |
| |
| #include <type_traits> |
| |
| namespace cros_disks { |
| |
| std::ostream& operator<<(std::ostream& out, const FormatErrorType error) { |
| switch (error) { |
| case FORMAT_ERROR_NONE: |
| return out << "FORMAT_ERROR_NONE"; |
| case FORMAT_ERROR_UNKNOWN: |
| return out << "FORMAT_ERROR_UNKNOWN"; |
| case FORMAT_ERROR_INTERNAL: |
| return out << "FORMAT_ERROR_INTERNAL"; |
| case FORMAT_ERROR_INVALID_DEVICE_PATH: |
| return out << "FORMAT_ERROR_INVALID_DEVICE_PATH"; |
| case FORMAT_ERROR_DEVICE_BEING_FORMATTED: |
| return out << "FORMAT_ERROR_DEVICE_BEING_FORMATTED"; |
| case FORMAT_ERROR_UNSUPPORTED_FILESYSTEM: |
| return out << "FORMAT_ERROR_UNSUPPORTED_FILESYSTEM"; |
| case FORMAT_ERROR_FORMAT_PROGRAM_NOT_FOUND: |
| return out << "FORMAT_ERROR_FORMAT_PROGRAM_NOT_FOUND"; |
| case FORMAT_ERROR_FORMAT_PROGRAM_FAILED: |
| return out << "FORMAT_ERROR_FORMAT_PROGRAM_FAILED"; |
| case FORMAT_ERROR_DEVICE_NOT_ALLOWED: |
| return out << "FORMAT_ERROR_DEVICE_NOT_ALLOWED"; |
| case FORMAT_ERROR_INVALID_OPTIONS: |
| return out << "FORMAT_ERROR_INVALID_OPTIONS"; |
| case FORMAT_ERROR_LONG_NAME: |
| return out << "FORMAT_ERROR_LONG_NAME"; |
| case FORMAT_ERROR_INVALID_CHARACTER: |
| return out << "FORMAT_ERROR_INVALID_CHARACTER"; |
| default: |
| return out << "FORMAT_ERROR_" |
| << static_cast<std::underlying_type_t<FormatErrorType>>(error); |
| } |
| } |
| |
| std::ostream& operator<<(std::ostream& out, const MountErrorType error) { |
| switch (error) { |
| case MOUNT_ERROR_NONE: |
| return out << "MOUNT_ERROR_NONE"; |
| case MOUNT_ERROR_UNKNOWN: |
| return out << "MOUNT_ERROR_UNKNOWN"; |
| case MOUNT_ERROR_INTERNAL: |
| return out << "MOUNT_ERROR_INTERNAL"; |
| case MOUNT_ERROR_INVALID_ARGUMENT: |
| return out << "MOUNT_ERROR_INVALID_ARGUMENT"; |
| case MOUNT_ERROR_INVALID_PATH: |
| return out << "MOUNT_ERROR_INVALID_PATH"; |
| case MOUNT_ERROR_PATH_ALREADY_MOUNTED: |
| return out << "MOUNT_ERROR_PATH_ALREADY_MOUNTED"; |
| case MOUNT_ERROR_PATH_NOT_MOUNTED: |
| return out << "MOUNT_ERROR_PATH_NOT_MOUNTED"; |
| case MOUNT_ERROR_DIRECTORY_CREATION_FAILED: |
| return out << "MOUNT_ERROR_DIRECTORY_CREATION_FAILED"; |
| case MOUNT_ERROR_INVALID_MOUNT_OPTIONS: |
| return out << "MOUNT_ERROR_INVALID_MOUNT_OPTIONS"; |
| case MOUNT_ERROR_INVALID_UNMOUNT_OPTIONS: |
| return out << "MOUNT_ERROR_INVALID_UNMOUNT_OPTIONS"; |
| case MOUNT_ERROR_INSUFFICIENT_PERMISSIONS: |
| return out << "MOUNT_ERROR_INSUFFICIENT_PERMISSIONS"; |
| case MOUNT_ERROR_MOUNT_PROGRAM_NOT_FOUND: |
| return out << "MOUNT_ERROR_MOUNT_PROGRAM_NOT_FOUND"; |
| case MOUNT_ERROR_MOUNT_PROGRAM_FAILED: |
| return out << "MOUNT_ERROR_MOUNT_PROGRAM_FAILED"; |
| case MOUNT_ERROR_INVALID_DEVICE_PATH: |
| return out << "MOUNT_ERROR_INVALID_DEVICE_PATH"; |
| case MOUNT_ERROR_UNKNOWN_FILESYSTEM: |
| return out << "MOUNT_ERROR_UNKNOWN_FILESYSTEM"; |
| case MOUNT_ERROR_UNSUPPORTED_FILESYSTEM: |
| return out << "MOUNT_ERROR_UNSUPPORTED_FILESYSTEM"; |
| case MOUNT_ERROR_INVALID_ARCHIVE: |
| return out << "MOUNT_ERROR_INVALID_ARCHIVE"; |
| case MOUNT_ERROR_UNSUPPORTED_ARCHIVE: |
| return out << "MOUNT_ERROR_UNSUPPORTED_ARCHIVE"; |
| default: |
| return out << "MOUNT_ERROR_" |
| << static_cast<std::underlying_type_t<MountErrorType>>(error); |
| } |
| } |
| |
| std::ostream& operator<<(std::ostream& out, const RenameErrorType error) { |
| switch (error) { |
| case RENAME_ERROR_NONE: |
| return out << "RENAME_ERROR_NONE"; |
| case RENAME_ERROR_UNKNOWN: |
| return out << "RENAME_ERROR_UNKNOWN"; |
| case RENAME_ERROR_INTERNAL: |
| return out << "RENAME_ERROR_INTERNAL"; |
| case RENAME_ERROR_INVALID_DEVICE_PATH: |
| return out << "RENAME_ERROR_INVALID_DEVICE_PATH"; |
| case RENAME_ERROR_DEVICE_BEING_RENAMED: |
| return out << "RENAME_ERROR_DEVICE_BEING_RENAMED"; |
| case RENAME_ERROR_UNSUPPORTED_FILESYSTEM: |
| return out << "RENAME_ERROR_UNSUPPORTED_FILESYSTEM"; |
| case RENAME_ERROR_RENAME_PROGRAM_NOT_FOUND: |
| return out << "RENAME_ERROR_RENAME_PROGRAM_NOT_FOUND"; |
| case RENAME_ERROR_RENAME_PROGRAM_FAILED: |
| return out << "RENAME_ERROR_RENAME_PROGRAM_FAILED"; |
| case RENAME_ERROR_DEVICE_NOT_ALLOWED: |
| return out << "RENAME_ERROR_DEVICE_NOT_ALLOWED"; |
| case RENAME_ERROR_LONG_NAME: |
| return out << "RENAME_ERROR_LONG_NAME"; |
| case RENAME_ERROR_INVALID_CHARACTER: |
| return out << "RENAME_ERROR_INVALID_CHARACTER"; |
| default: |
| return out << "RENAME_ERROR_" |
| << static_cast<std::underlying_type_t<RenameErrorType>>(error); |
| } |
| } |
| |
| } // namespace cros_disks |