Skip to content

Commit

Permalink
Revert "Added a Mojo equivalent to base::File::Error."
Browse files Browse the repository at this point in the history
This reverts commit 8d71ca8.

Reason for revert: Missed existence of filesystem.mojom.FileError

Original change's description:
> Added a Mojo equivalent to base::File::Error.
> 
> mojo.common.mojom.FileError is the Mojo version of the base::File::Error
> enumeration.
> 
> Added enum traits for base::File::Error ↔ mojo::common::mojom::FileError.
> 
> Bug: 787281
> Change-Id: I12075ed19fd412d0f92b0eccef66ba3832261d8b
> Reviewed-on: https://chromium-review.googlesource.com/786266
> Commit-Queue: Chris Mumford <cmumford@chromium.org>
> Reviewed-by: John Abd-El-Malek <jam@chromium.org>
> Reviewed-by: Oliver Chang <ochang@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#519407}

TBR=jam@chromium.org,cmumford@chromium.org,ochang@chromium.org

Change-Id: I10ec724c00a3022ef177f4ded3268f0e892c1a69
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 787281
Reviewed-on: https://chromium-review.googlesource.com/794153
Reviewed-by: Chris Mumford <cmumford@chromium.org>
Commit-Queue: Chris Mumford <cmumford@chromium.org>
Cr-Commit-Position: refs/heads/master@{#519721}
  • Loading branch information
cmumford authored and Commit Bot committed Nov 28, 2017
1 parent b36aa0d commit 94ff93b
Show file tree
Hide file tree
Showing 5 changed files with 2 additions and 177 deletions.
109 changes: 0 additions & 109 deletions mojo/common/common_custom_types_struct_traits.cc
Original file line number Diff line number Diff line change
Expand Up @@ -144,115 +144,6 @@ bool EnumTraits<common::mojom::ThreadPriority, base::ThreadPriority>::FromMojom(
return false;
}

// static
common::mojom::FileError
EnumTraits<common::mojom::FileError, base::File::Error>::ToMojom(
base::File::Error error) {
switch (error) {
case base::File::FILE_OK:
return common::mojom::FileError::kOK;
case base::File::FILE_ERROR_FAILED:
return common::mojom::FileError::kFailed;
case base::File::FILE_ERROR_IN_USE:
return common::mojom::FileError::kInUse;
case base::File::FILE_ERROR_EXISTS:
return common::mojom::FileError::kExists;
case base::File::FILE_ERROR_NOT_FOUND:
return common::mojom::FileError::kNotFound;
case base::File::FILE_ERROR_ACCESS_DENIED:
return common::mojom::FileError::kAccessDenied;
case base::File::FILE_ERROR_TOO_MANY_OPENED:
return common::mojom::FileError::kTooManyOpened;
case base::File::FILE_ERROR_NO_MEMORY:
return common::mojom::FileError::kNoMemory;
case base::File::FILE_ERROR_NO_SPACE:
return common::mojom::FileError::kNoSpace;
case base::File::FILE_ERROR_NOT_A_DIRECTORY:
return common::mojom::FileError::kNotADirectory;
case base::File::FILE_ERROR_INVALID_OPERATION:
return common::mojom::FileError::kInvalidOperation;
case base::File::FILE_ERROR_SECURITY:
return common::mojom::FileError::kSecurity;
case base::File::FILE_ERROR_ABORT:
return common::mojom::FileError::kAbort;
case base::File::FILE_ERROR_NOT_A_FILE:
return common::mojom::FileError::kNotAFile;
case base::File::FILE_ERROR_NOT_EMPTY:
return common::mojom::FileError::kNotEmpty;
case base::File::FILE_ERROR_INVALID_URL:
return common::mojom::FileError::kInvalidURL;
case base::File::FILE_ERROR_IO:
return common::mojom::FileError::kIO;
case base::File::FILE_ERROR_MAX:
NOTREACHED();
return common::mojom::FileError::kFailed;
}

NOTREACHED();
return common::mojom::FileError::kFailed;
}

// static
bool EnumTraits<common::mojom::FileError, base::File::Error>::FromMojom(
common::mojom::FileError input,
base::File::Error* out) {
switch (input) {
case common::mojom::FileError::kOK:
*out = base::File::FILE_OK;
return true;
case common::mojom::FileError::kFailed:
*out = base::File::FILE_ERROR_FAILED;
return true;
case common::mojom::FileError::kInUse:
*out = base::File::FILE_ERROR_IN_USE;
return true;
case common::mojom::FileError::kExists:
*out = base::File::FILE_ERROR_EXISTS;
return true;
case common::mojom::FileError::kNotFound:
*out = base::File::FILE_ERROR_NOT_FOUND;
return true;
case common::mojom::FileError::kAccessDenied:
*out = base::File::FILE_ERROR_ACCESS_DENIED;
return true;
case common::mojom::FileError::kTooManyOpened:
*out = base::File::FILE_ERROR_TOO_MANY_OPENED;
return true;
case common::mojom::FileError::kNoMemory:
*out = base::File::FILE_ERROR_NO_MEMORY;
return true;
case common::mojom::FileError::kNoSpace:
*out = base::File::FILE_ERROR_NO_SPACE;
return true;
case common::mojom::FileError::kNotADirectory:
*out = base::File::FILE_ERROR_NOT_A_DIRECTORY;
return true;
case common::mojom::FileError::kInvalidOperation:
*out = base::File::FILE_ERROR_INVALID_OPERATION;
return true;
case common::mojom::FileError::kSecurity:
*out = base::File::FILE_ERROR_SECURITY;
return true;
case common::mojom::FileError::kAbort:
*out = base::File::FILE_ERROR_ABORT;
return true;
case common::mojom::FileError::kNotAFile:
*out = base::File::FILE_ERROR_NOT_A_FILE;
return true;
case common::mojom::FileError::kNotEmpty:
*out = base::File::FILE_ERROR_NOT_EMPTY;
return true;
case common::mojom::FileError::kInvalidURL:
*out = base::File::FILE_ERROR_INVALID_URL;
return true;
case common::mojom::FileError::kIO:
*out = base::File::FILE_ERROR_IO;
return true;
}
NOTREACHED();
return false;
}

// static
bool StructTraits<common::mojom::MemoryAllocatorDumpCrossProcessUidDataView,
base::trace_event::MemoryAllocatorDumpGuid>::
Expand Down
6 changes: 0 additions & 6 deletions mojo/common/common_custom_types_struct_traits.h
Original file line number Diff line number Diff line change
Expand Up @@ -126,12 +126,6 @@ struct StructTraits<common::mojom::MemoryAllocatorDumpCrossProcessUidDataView,
base::trace_event::MemoryAllocatorDumpGuid* out);
};

template <>
struct EnumTraits<common::mojom::FileError, base::File::Error> {
static common::mojom::FileError ToMojom(base::File::Error error);
static bool FromMojom(common::mojom::FileError input, base::File::Error* out);
};

} // namespace mojo

#endif // MOJO_COMMON_COMMON_CUSTOM_TYPES_STRUCT_TRAITS_H_
35 changes: 0 additions & 35 deletions mojo/common/common_custom_types_unittest.cc
Original file line number Diff line number Diff line change
Expand Up @@ -437,41 +437,6 @@ TEST_F(CommonCustomTypesTest, TextDirection) {
}
}

TEST_F(CommonCustomTypesTest, FileError) {
using FileErrorTraits =
mojo::EnumTraits<common::mojom::FileError, base::File::Error>;
base::File::Error ouput_error;
for (int i = base::File::FILE_OK; i > base::File::FILE_ERROR_MAX; i--) {
const base::File::Error input_error = (base::File::Error)i;

EXPECT_TRUE(FileErrorTraits::FromMojom(
FileErrorTraits::ToMojom(input_error), &ouput_error));

EXPECT_EQ(input_error, ouput_error);
}

// Testing all values is a good test, but if there was a bug like this:
// base::File::FILE_OK → mojom::FileError::kFailed → base::File::FILE_OK
// then that approach wouldn't catch it. Also test a small subset of enum
// values to ensure they map to the correct value.
EXPECT_EQ(mojom::FileError::kOK,
FileErrorTraits::ToMojom(base::File::FILE_OK));
EXPECT_EQ(mojom::FileError::kFailed,
FileErrorTraits::ToMojom(base::File::FILE_ERROR_FAILED));
EXPECT_EQ(mojom::FileError::kIO,
FileErrorTraits::ToMojom(base::File::FILE_ERROR_IO));

EXPECT_TRUE(FileErrorTraits::FromMojom(mojom::FileError::kOK, &ouput_error));
EXPECT_EQ(base::File::FILE_OK, ouput_error);

EXPECT_TRUE(
FileErrorTraits::FromMojom(mojom::FileError::kFailed, &ouput_error));
EXPECT_EQ(base::File::FILE_ERROR_FAILED, ouput_error);

EXPECT_TRUE(FileErrorTraits::FromMojom(mojom::FileError::kIO, &ouput_error));
EXPECT_EQ(base::File::FILE_ERROR_IO, ouput_error);
}

} // namespace test
} // namespace common
} // namespace mojo
23 changes: 0 additions & 23 deletions mojo/common/file.mojom
Original file line number Diff line number Diff line change
Expand Up @@ -4,29 +4,6 @@

module mojo.common.mojom;

// kAccessDenied is returned when a call fails because of a
// filesystem restriction. kSecurity is returned when a browser
// policy doesn't allow the operation to be executed.
enum FileError {
kOK,
kFailed,
kInUse,
kExists,
kNotFound,
kAccessDenied,
kTooManyOpened,
kNoMemory,
kNoSpace,
kNotADirectory,
kInvalidOperation,
kSecurity,
kAbort,
kNotAFile,
kNotEmpty,
kInvalidURL,
kIO,
};

// Corresponds to |base::File| in base/files/file.h
struct File {
handle fd;
Expand Down
6 changes: 2 additions & 4 deletions mojo/common/file.typemap
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,5 @@ public_deps = [
"//mojo/common:struct_traits",
]

type_mappings = [
"mojo.common.mojom.File=base::File[move_only,nullable_is_same_type]",
"mojo.common.mojom.FileError=base::File::Error",
]
type_mappings =
[ "mojo.common.mojom.File=base::File[move_only,nullable_is_same_type]" ]

0 comments on commit 94ff93b

Please sign in to comment.