| Index: net/android/cellular_signal_strength.cc
|
| diff --git a/net/android/cellular_signal_strength.cc b/net/android/cellular_signal_strength.cc
|
| index 69888c9e3d22f4f921548e210f616d1941e6ccce..390ff8d34228fe9fc75fe0d5e8511772d4cd347e 100644
|
| --- a/net/android/cellular_signal_strength.cc
|
| +++ b/net/android/cellular_signal_strength.cc
|
| @@ -10,7 +10,7 @@ namespace net {
|
|
|
| namespace android {
|
|
|
| -namespace cellular_signal_strength {
|
| +namespace {
|
|
|
| // GENERATED_JAVA_ENUM_PACKAGE: org.chromium.net
|
| enum CellularSignalStrengthError {
|
| @@ -25,29 +25,31 @@ static_assert(
|
| INT32_MIN == ERROR_NOT_SUPPORTED,
|
| "CellularSignalStrengthError.ERROR_NOT_SUPPORTED has unexpected value");
|
|
|
| -bool GetSignalStrengthDbm(int32_t* signal_strength_dbm) {
|
| - int32_t signal_strength_dbm_tmp =
|
| - Java_AndroidCellularSignalStrength_getSignalStrengthDbm(
|
| - base::android::AttachCurrentThread());
|
| - if (signal_strength_dbm_tmp == ERROR_NOT_SUPPORTED)
|
| - return false;
|
| +} // namespace
|
|
|
| - *signal_strength_dbm = signal_strength_dbm_tmp;
|
| - return true;
|
| +CellularSignalStrength::CellularSignalStrength() {
|
| + j_cellular_signal_strength_.Reset(Java_AndroidCellularSignalStrength_create(
|
| + base::android::AttachCurrentThread()));
|
| }
|
|
|
| -bool GetSignalStrengthLevel(int32_t* signal_strength_level) {
|
| - int32_t signal_strength_level_tmp =
|
| +CellularSignalStrength::~CellularSignalStrength() {
|
| + DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
|
| +}
|
| +
|
| +base::Optional<int32_t> CellularSignalStrength::GetSignalStrengthLevel() const {
|
| + DCHECK_CALLED_ON_VALID_THREAD(thread_checker_);
|
| +
|
| + int32_t signal_strength_level =
|
| Java_AndroidCellularSignalStrength_getSignalStrengthLevel(
|
| - base::android::AttachCurrentThread());
|
| - if (signal_strength_level_tmp == ERROR_NOT_SUPPORTED)
|
| - return false;
|
| + base::android::AttachCurrentThread(), j_cellular_signal_strength_);
|
| + if (signal_strength_level == ERROR_NOT_SUPPORTED)
|
| + return base::Optional<int32_t>();
|
|
|
| - *signal_strength_level = signal_strength_level_tmp;
|
| - return true;
|
| -}
|
| + DCHECK_LE(0, signal_strength_level);
|
| + DCHECK_GE(4, signal_strength_level);
|
|
|
| -} // namespace cellular_signal_strength
|
| + return signal_strength_level;
|
| +}
|
|
|
| } // namespace android
|
|
|
|
|