Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dd5c2b89 authored by Roshan Pius's avatar Roshan Pius Committed by android-build-merger
Browse files

wifi: Use hidl_return_util functions in Iface/Rtt

am: 907d4a23

Change-Id: I224f3edf8aefe3e47e1604b457e5aa57b9c7a301
parents 70221582 907d4a23
Loading
Loading
Loading
Loading
+23 −16
Original line number Diff line number Diff line
@@ -14,10 +14,10 @@
 * limitations under the License.
 */

#include "wifi_ap_iface.h"

#include <android-base/logging.h>

#include "hidl_return_util.h"
#include "wifi_ap_iface.h"
#include "wifi_status_util.h"

namespace android {
@@ -25,6 +25,7 @@ namespace hardware {
namespace wifi {
namespace V1_0 {
namespace implementation {
using hidl_return_util::validateAndCall;

WifiApIface::WifiApIface(const std::string& ifname,
                         const std::weak_ptr<WifiLegacyHal> legacy_hal)
@@ -35,24 +36,30 @@ void WifiApIface::invalidate() {
  is_valid_ = false;
}

Return<void> WifiApIface::getName(getName_cb hidl_status_cb) {
  if (!is_valid_) {
    hidl_status_cb(createWifiStatus(WifiStatusCode::ERROR_WIFI_IFACE_INVALID),
                   hidl_string());
    return Void();
bool WifiApIface::isValid() {
  return is_valid_;
}
  hidl_status_cb(createWifiStatus(WifiStatusCode::SUCCESS), ifname_);
  return Void();

Return<void> WifiApIface::getName(getName_cb hidl_status_cb) {
  return validateAndCall(this,
                         WifiStatusCode::ERROR_WIFI_IFACE_INVALID,
                         &WifiApIface::getNameInternal,
                         hidl_status_cb);
}

Return<void> WifiApIface::getType(getType_cb hidl_status_cb) {
  if (!is_valid_) {
    hidl_status_cb(createWifiStatus(WifiStatusCode::ERROR_WIFI_IFACE_INVALID),
                   IfaceType::AP);
    return Void();
  return validateAndCall(this,
                         WifiStatusCode::ERROR_WIFI_IFACE_INVALID,
                         &WifiApIface::getTypeInternal,
                         hidl_status_cb);
}

std::pair<WifiStatus, std::string> WifiApIface::getNameInternal() {
  return {createWifiStatus(WifiStatusCode::SUCCESS), ifname_};
}
  hidl_status_cb(createWifiStatus(WifiStatusCode::SUCCESS), IfaceType::AP);
  return Void();

std::pair<WifiStatus, IfaceType> WifiApIface::getTypeInternal() {
  return {createWifiStatus(WifiStatusCode::SUCCESS), IfaceType::AP};
}

}  // namespace implementation
+5 −0
Original line number Diff line number Diff line
@@ -37,12 +37,17 @@ class WifiApIface : public IWifiApIface {
              const std::weak_ptr<WifiLegacyHal> legacy_hal);
  // Refer to |WifiChip::invalidate()|.
  void invalidate();
  bool isValid();

  // HIDL methods exposed.
  Return<void> getName(getName_cb hidl_status_cb) override;
  Return<void> getType(getType_cb hidl_status_cb) override;

 private:
  // Corresponding worker functions for the HIDL methods.
  std::pair<WifiStatus, std::string> getNameInternal();
  std::pair<WifiStatus, IfaceType> getTypeInternal();

  std::string ifname_;
  std::weak_ptr<WifiLegacyHal> legacy_hal_;
  bool is_valid_;
+23 −16
Original line number Diff line number Diff line
@@ -14,10 +14,10 @@
 * limitations under the License.
 */

#include "wifi_nan_iface.h"

#include <android-base/logging.h>

#include "hidl_return_util.h"
#include "wifi_nan_iface.h"
#include "wifi_status_util.h"

namespace android {
@@ -25,6 +25,7 @@ namespace hardware {
namespace wifi {
namespace V1_0 {
namespace implementation {
using hidl_return_util::validateAndCall;

WifiNanIface::WifiNanIface(const std::string& ifname,
                           const std::weak_ptr<WifiLegacyHal> legacy_hal)
@@ -35,24 +36,30 @@ void WifiNanIface::invalidate() {
  is_valid_ = false;
}

Return<void> WifiNanIface::getName(getName_cb hidl_status_cb) {
  if (!is_valid_) {
    hidl_status_cb(createWifiStatus(WifiStatusCode::ERROR_WIFI_IFACE_INVALID),
                   hidl_string());
    return Void();
bool WifiNanIface::isValid() {
  return is_valid_;
}
  hidl_status_cb(createWifiStatus(WifiStatusCode::SUCCESS), ifname_);
  return Void();

Return<void> WifiNanIface::getName(getName_cb hidl_status_cb) {
  return validateAndCall(this,
                         WifiStatusCode::ERROR_WIFI_IFACE_INVALID,
                         &WifiNanIface::getNameInternal,
                         hidl_status_cb);
}

Return<void> WifiNanIface::getType(getType_cb hidl_status_cb) {
  if (!is_valid_) {
    hidl_status_cb(createWifiStatus(WifiStatusCode::ERROR_WIFI_IFACE_INVALID),
                   IfaceType::NAN);
    return Void();
  return validateAndCall(this,
                         WifiStatusCode::ERROR_WIFI_IFACE_INVALID,
                         &WifiNanIface::getTypeInternal,
                         hidl_status_cb);
}

std::pair<WifiStatus, std::string> WifiNanIface::getNameInternal() {
  return {createWifiStatus(WifiStatusCode::SUCCESS), ifname_};
}
  hidl_status_cb(createWifiStatus(WifiStatusCode::SUCCESS), IfaceType::NAN);
  return Void();

std::pair<WifiStatus, IfaceType> WifiNanIface::getTypeInternal() {
  return {createWifiStatus(WifiStatusCode::SUCCESS), IfaceType::NAN};
}

}  // namespace implementation
+5 −0
Original line number Diff line number Diff line
@@ -37,12 +37,17 @@ class WifiNanIface : public IWifiNanIface {
               const std::weak_ptr<WifiLegacyHal> legacy_hal);
  // Refer to |WifiChip::invalidate()|.
  void invalidate();
  bool isValid();

  // HIDL methods exposed.
  Return<void> getName(getName_cb hidl_status_cb) override;
  Return<void> getType(getType_cb hidl_status_cb) override;

 private:
  // Corresponding worker functions for the HIDL methods.
  std::pair<WifiStatus, std::string> getNameInternal();
  std::pair<WifiStatus, IfaceType> getTypeInternal();

  std::string ifname_;
  std::weak_ptr<WifiLegacyHal> legacy_hal_;
  bool is_valid_;
+23 −16
Original line number Diff line number Diff line
@@ -14,10 +14,10 @@
 * limitations under the License.
 */

#include "wifi_p2p_iface.h"

#include <android-base/logging.h>

#include "hidl_return_util.h"
#include "wifi_p2p_iface.h"
#include "wifi_status_util.h"

namespace android {
@@ -25,6 +25,7 @@ namespace hardware {
namespace wifi {
namespace V1_0 {
namespace implementation {
using hidl_return_util::validateAndCall;

WifiP2pIface::WifiP2pIface(const std::string& ifname,
                           const std::weak_ptr<WifiLegacyHal> legacy_hal)
@@ -35,24 +36,30 @@ void WifiP2pIface::invalidate() {
  is_valid_ = false;
}

Return<void> WifiP2pIface::getName(getName_cb hidl_status_cb) {
  if (!is_valid_) {
    hidl_status_cb(createWifiStatus(WifiStatusCode::ERROR_WIFI_IFACE_INVALID),
                   hidl_string());
    return Void();
bool WifiP2pIface::isValid() {
  return is_valid_;
}
  hidl_status_cb(createWifiStatus(WifiStatusCode::SUCCESS), ifname_);
  return Void();

Return<void> WifiP2pIface::getName(getName_cb hidl_status_cb) {
  return validateAndCall(this,
                         WifiStatusCode::ERROR_WIFI_IFACE_INVALID,
                         &WifiP2pIface::getNameInternal,
                         hidl_status_cb);
}

Return<void> WifiP2pIface::getType(getType_cb hidl_status_cb) {
  if (!is_valid_) {
    hidl_status_cb(createWifiStatus(WifiStatusCode::ERROR_WIFI_IFACE_INVALID),
                   IfaceType::P2P);
    return Void();
  return validateAndCall(this,
                         WifiStatusCode::ERROR_WIFI_IFACE_INVALID,
                         &WifiP2pIface::getTypeInternal,
                         hidl_status_cb);
}

std::pair<WifiStatus, std::string> WifiP2pIface::getNameInternal() {
  return {createWifiStatus(WifiStatusCode::SUCCESS), ifname_};
}
  hidl_status_cb(createWifiStatus(WifiStatusCode::SUCCESS), IfaceType::P2P);
  return Void();

std::pair<WifiStatus, IfaceType> WifiP2pIface::getTypeInternal() {
  return {createWifiStatus(WifiStatusCode::SUCCESS), IfaceType::P2P};
}

}  // namespace implementation
Loading