| // Copyright 2017 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "ipc/native_handle_type_converters.h" |
| |
| namespace mojo { |
| |
| // static |
| IPC::MessageAttachment::Type TypeConverter< |
| IPC::MessageAttachment::Type, |
| native::SerializedHandleType>::Convert(native::SerializedHandleType type) { |
| switch (type) { |
| case native::SerializedHandleType::MOJO_HANDLE: |
| return IPC::MessageAttachment::Type::MOJO_HANDLE; |
| case native::SerializedHandleType::PLATFORM_FILE: |
| return IPC::MessageAttachment::Type::PLATFORM_FILE; |
| case native::SerializedHandleType::WIN_HANDLE: |
| return IPC::MessageAttachment::Type::WIN_HANDLE; |
| case native::SerializedHandleType::MACH_PORT: |
| return IPC::MessageAttachment::Type::MACH_PORT; |
| case native::SerializedHandleType::FUCHSIA_HANDLE: |
| return IPC::MessageAttachment::Type::FUCHSIA_HANDLE; |
| } |
| NOTREACHED(); |
| return IPC::MessageAttachment::Type::MOJO_HANDLE; |
| } |
| |
| // static |
| native::SerializedHandleType TypeConverter< |
| native::SerializedHandleType, |
| IPC::MessageAttachment::Type>::Convert(IPC::MessageAttachment::Type type) { |
| switch (type) { |
| case IPC::MessageAttachment::Type::MOJO_HANDLE: |
| return native::SerializedHandleType::MOJO_HANDLE; |
| case IPC::MessageAttachment::Type::PLATFORM_FILE: |
| return native::SerializedHandleType::PLATFORM_FILE; |
| case IPC::MessageAttachment::Type::WIN_HANDLE: |
| return native::SerializedHandleType::WIN_HANDLE; |
| case IPC::MessageAttachment::Type::MACH_PORT: |
| return native::SerializedHandleType::MACH_PORT; |
| case IPC::MessageAttachment::Type::FUCHSIA_HANDLE: |
| return native::SerializedHandleType::FUCHSIA_HANDLE; |
| } |
| NOTREACHED(); |
| return native::SerializedHandleType::MOJO_HANDLE; |
| } |
| |
| } // namespace mojo |