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

Commit 017e7f90 authored by Nathan Harold's avatar Nathan Harold
Browse files

Update hashCode in CellSignalStrength classes

The CellSignalStrength hashCode function was using a
fairly ineffective method of hashing. An External
reporter requested that we fix it. This CL moves to
using the Objects.hash() implementation.

Bug: 22479413
Test: compilation
Change-Id: Ic017ba54ef757fd3ec3e5000ac61108dd836bd8a
parent ac2247c4
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -20,6 +20,8 @@ import android.os.Parcel;
import android.os.Parcelable;
import android.telephony.Rlog;

import java.util.Objects;

/**
 * Signal strength related information.
 */
@@ -293,9 +295,7 @@ public final class CellSignalStrengthCdma extends CellSignalStrength implements

    @Override
    public int hashCode() {
        int primeNum = 31;
        return ((mCdmaDbm * primeNum) + (mCdmaEcio * primeNum)
                + (mEvdoDbm * primeNum) + (mEvdoEcio * primeNum) + (mEvdoSnr * primeNum));
        return Objects.hash(mCdmaDbm, mCdmaEcio, mEvdoDbm, mEvdoEcio, mEvdoSnr);
    }

    @Override
+3 −2
Original line number Diff line number Diff line
@@ -20,6 +20,8 @@ import android.os.Parcel;
import android.os.Parcelable;
import android.telephony.Rlog;

import java.util.Objects;

/**
 * GSM signal strength related information.
 */
@@ -185,8 +187,7 @@ public final class CellSignalStrengthGsm extends CellSignalStrength implements P

    @Override
    public int hashCode() {
        int primeNum = 31;
        return (mSignalStrength * primeNum) + (mBitErrorRate * primeNum);
        return Objects.hash(mSignalStrength, mBitErrorRate, mTimingAdvance);
    }

    @Override
+3 −4
Original line number Diff line number Diff line
@@ -20,6 +20,8 @@ import android.os.Parcel;
import android.os.Parcelable;
import android.telephony.Rlog;

import java.util.Objects;

/**
 * LTE signal strength related information.
 */
@@ -231,10 +233,7 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P

    @Override
    public int hashCode() {
        int primeNum = 31;
        return (mSignalStrength * primeNum) + (mRsrp * primeNum)
                + (mRsrq * primeNum) + (mRssnr * primeNum) + (mCqi * primeNum)
                + (mTimingAdvance * primeNum);
        return Objects.hash(mSignalStrength, mRsrp, mRsrq, mRssnr, mCqi, mTimingAdvance);
    }

    @Override
+3 −2
Original line number Diff line number Diff line
@@ -20,6 +20,8 @@ import android.os.Parcel;
import android.os.Parcelable;
import android.telephony.Rlog;

import java.util.Objects;

/**
 * Wcdma signal strength related information.
 */
@@ -156,8 +158,7 @@ public final class CellSignalStrengthWcdma extends CellSignalStrength implements

    @Override
    public int hashCode() {
        int primeNum = 31;
        return (mSignalStrength * primeNum) + (mBitErrorRate * primeNum);
        return Objects.hash(mSignalStrength, mBitErrorRate);
    }

    @Override