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

Commit 4ae4e172 authored by Sarah Chin's avatar Sarah Chin
Browse files

Allow null DataProfileInfo for IA APN to clear

Test: build
Bug: 216357727
Change-Id: If003316192f579a3970ac48eaf50cb714cf757e6
Merged-In: If003316192f579a3970ac48eaf50cb714cf757e6
parent 104192c2
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -44,7 +44,7 @@ interface IRadioData {
  oneway void setDataAllowed(in int serial, in boolean allow);
  oneway void setDataAllowed(in int serial, in boolean allow);
  oneway void setDataProfile(in int serial, in android.hardware.radio.data.DataProfileInfo[] profiles);
  oneway void setDataProfile(in int serial, in android.hardware.radio.data.DataProfileInfo[] profiles);
  oneway void setDataThrottling(in int serial, in android.hardware.radio.data.DataThrottlingAction dataThrottlingAction, in long completionDurationMillis);
  oneway void setDataThrottling(in int serial, in android.hardware.radio.data.DataThrottlingAction dataThrottlingAction, in long completionDurationMillis);
  oneway void setInitialAttachApn(in int serial, in android.hardware.radio.data.DataProfileInfo dataProfileInfo);
  oneway void setInitialAttachApn(in int serial, in @nullable android.hardware.radio.data.DataProfileInfo dataProfileInfo);
  oneway void setResponseFunctions(in android.hardware.radio.data.IRadioDataResponse radioDataResponse, in android.hardware.radio.data.IRadioDataIndication radioDataIndication);
  oneway void setResponseFunctions(in android.hardware.radio.data.IRadioDataResponse radioDataResponse, in android.hardware.radio.data.IRadioDataIndication radioDataIndication);
  oneway void setupDataCall(in int serial, in android.hardware.radio.AccessNetwork accessNetwork, in android.hardware.radio.data.DataProfileInfo dataProfileInfo, in boolean roamingAllowed, in android.hardware.radio.data.DataRequestReason reason, in android.hardware.radio.data.LinkAddress[] addresses, in String[] dnses, in int pduSessionId, in @nullable android.hardware.radio.data.SliceInfo sliceInfo, in boolean matchAllRuleAllowed);
  oneway void setupDataCall(in int serial, in android.hardware.radio.AccessNetwork accessNetwork, in android.hardware.radio.data.DataProfileInfo dataProfileInfo, in boolean roamingAllowed, in android.hardware.radio.data.DataRequestReason reason, in android.hardware.radio.data.LinkAddress[] addresses, in String[] dnses, in int pduSessionId, in @nullable android.hardware.radio.data.SliceInfo sliceInfo, in boolean matchAllRuleAllowed);
  oneway void startHandover(in int serial, in int callId);
  oneway void startHandover(in int serial, in int callId);
+4 −3
Original line number Original line Diff line number Diff line
@@ -159,14 +159,15 @@ oneway interface IRadioData {
            in long completionDurationMillis);
            in long completionDurationMillis);


    /**
    /**
     * Set an APN to initial attach network.
     * Set an APN to initial attach network or clear the existing initial attach APN.
     *
     *
     * @param serial Serial number of request.
     * @param serial Serial number of request.
     * @param dataProfileInfo data profile containing APN settings
     * @param dataProfileInfo Data profile containing APN settings or null to clear the existing
     *        initial attach APN.
     *
     *
     * Response function is IRadioDataResponse.setInitialAttachApnResponse()
     * Response function is IRadioDataResponse.setInitialAttachApnResponse()
     */
     */
    void setInitialAttachApn(in int serial, in DataProfileInfo dataProfileInfo);
    void setInitialAttachApn(in int serial, in @nullable DataProfileInfo dataProfileInfo);


    /**
    /**
     * Set response functions for data radio requests and indications.
     * Set response functions for data radio requests and indications.
+12 −10
Original line number Original line Diff line number Diff line
@@ -122,9 +122,10 @@ ScopedAStatus RadioData::setDataThrottling(int32_t serial, aidl::DataThrottlingA
    return ok();
    return ok();
}
}


ScopedAStatus RadioData::setInitialAttachApn(int32_t serial, const aidl::DataProfileInfo& info) {
ScopedAStatus RadioData::setInitialAttachApn(int32_t serial,
                                             const std::optional<aidl::DataProfileInfo>& info) {
    LOG_CALL << serial;
    LOG_CALL << serial;
    mHal1_5->setInitialAttachApn_1_5(serial, toHidl(info));
    mHal1_5->setInitialAttachApn_1_5(serial, toHidl(info.value()));
    return ok();
    return ok();
}
}


@@ -136,14 +137,15 @@ ScopedAStatus RadioData::setResponseFunctions(
    return ok();
    return ok();
}
}


ScopedAStatus RadioData::setupDataCall(  //
ScopedAStatus RadioData::setupDataCall(int32_t serial, aidlCommon::AccessNetwork accessNetwork,
        int32_t serial, aidlCommon::AccessNetwork accessNetwork,
                                       const aidl::DataProfileInfo& dataProfileInfo,
        const aidl::DataProfileInfo& dataProfileInfo, bool roamingAllowed,
                                       bool roamingAllowed, aidl::DataRequestReason reason,
        aidl::DataRequestReason reason, const std::vector<aidl::LinkAddress>& addresses,
                                       const std::vector<aidl::LinkAddress>& addresses,
                                       const std::vector<std::string>& dnses, int32_t pduSessId,
                                       const std::vector<std::string>& dnses, int32_t pduSessId,
        const std::optional<aidl::SliceInfo>& sliceInfo, bool matchAllRuleAllowed) {
                                       const std::optional<aidl::SliceInfo>& sliceInfo,
                                       bool matchAllRuleAllowed) {
    if (mHal1_6) {
    if (mHal1_6) {
        mHal1_6->setupDataCall_1_6(  //
        mHal1_6->setupDataCall_1_6(
                serial, V1_5::AccessNetwork(accessNetwork), toHidl(dataProfileInfo), roamingAllowed,
                serial, V1_5::AccessNetwork(accessNetwork), toHidl(dataProfileInfo), roamingAllowed,
                V1_2::DataRequestReason(reason), toHidl(addresses), toHidl(dnses), pduSessId,
                V1_2::DataRequestReason(reason), toHidl(addresses), toHidl(dnses), pduSessId,
                toHidl<V1_6::OptionalSliceInfo>(sliceInfo),
                toHidl<V1_6::OptionalSliceInfo>(sliceInfo),
@@ -151,7 +153,7 @@ ScopedAStatus RadioData::setupDataCall( //
                matchAllRuleAllowed);
                matchAllRuleAllowed);
        mContext->addDataProfile(dataProfileInfo);
        mContext->addDataProfile(dataProfileInfo);
    } else {
    } else {
        mHal1_5->setupDataCall_1_5(  //
        mHal1_5->setupDataCall_1_5(
                serial, V1_5::AccessNetwork(accessNetwork), toHidl(dataProfileInfo), roamingAllowed,
                serial, V1_5::AccessNetwork(accessNetwork), toHidl(dataProfileInfo), roamingAllowed,
                V1_2::DataRequestReason(reason), toHidl(addresses), toHidl(dnses));
                V1_2::DataRequestReason(reason), toHidl(addresses), toHidl(dnses));
    }
    }
+2 −1
Original line number Original line Diff line number Diff line
@@ -44,7 +44,8 @@ class RadioData : public RadioCompatBase, public aidl::android::hardware::radio:
            int64_t completionDurationMillis) override;
            int64_t completionDurationMillis) override;
    ::ndk::ScopedAStatus setInitialAttachApn(
    ::ndk::ScopedAStatus setInitialAttachApn(
            int32_t serial,
            int32_t serial,
            const ::aidl::android::hardware::radio::data::DataProfileInfo& dpInfo) override;
            const std::optional<::aidl::android::hardware::radio::data::DataProfileInfo>& dpInfo)
            override;
    ::ndk::ScopedAStatus setResponseFunctions(
    ::ndk::ScopedAStatus setResponseFunctions(
            const std::shared_ptr<::aidl::android::hardware::radio::data::IRadioDataResponse>&
            const std::shared_ptr<::aidl::android::hardware::radio::data::IRadioDataResponse>&
                    radioDataResponse,
                    radioDataResponse,