diff options
Diffstat (limited to 'location')
-rw-r--r-- | location/java/android/location/AbstractListenerManager.java | 8 | ||||
-rw-r--r-- | location/java/android/location/LocationManager.java | 6 |
2 files changed, 8 insertions, 6 deletions
diff --git a/location/java/android/location/AbstractListenerManager.java b/location/java/android/location/AbstractListenerManager.java index 36b86899f2d8..f5595e89b807 100644 --- a/location/java/android/location/AbstractListenerManager.java +++ b/location/java/android/location/AbstractListenerManager.java @@ -29,6 +29,8 @@ import android.util.ArrayMap; import com.android.internal.annotations.GuardedBy; import com.android.internal.util.Preconditions; +import java.util.ArrayList; +import java.util.List; import java.util.Objects; import java.util.concurrent.Executor; import java.util.function.Consumer; @@ -193,7 +195,7 @@ abstract class AbstractListenerManager<TRequest, TListener> { protected abstract void unregisterService() throws RemoteException; @Nullable - protected TRequest merge(@NonNull TRequest[] requests) { + protected TRequest merge(@NonNull List<TRequest> requests) { for (TRequest request : requests) { Preconditions.checkArgument(request == null, "merge() has to be overridden for non-null requests."); @@ -221,9 +223,9 @@ abstract class AbstractListenerManager<TRequest, TListener> { return mListeners.valueAt(0).getRequest(); } - TRequest[] requests = (TRequest[]) new Object[mListeners.size()]; + ArrayList<TRequest> requests = new ArrayList<>(mListeners.size()); for (int index = 0; index < mListeners.size(); index++) { - requests[index] = mListeners.valueAt(index).getRequest(); + requests.add(mListeners.valueAt(index).getRequest()); } return merge(requests); } diff --git a/location/java/android/location/LocationManager.java b/location/java/android/location/LocationManager.java index 7d15bbd46697..f3c9e9435417 100644 --- a/location/java/android/location/LocationManager.java +++ b/location/java/android/location/LocationManager.java @@ -3030,14 +3030,14 @@ public class LocationManager { @Override @Nullable - protected GnssRequest merge(@NonNull GnssRequest[] requests) { - Preconditions.checkArgument(requests.length > 0); + protected GnssRequest merge(@NonNull List<GnssRequest> requests) { + Preconditions.checkArgument(!requests.isEmpty()); for (GnssRequest request : requests) { if (request.isFullTracking()) { return request; } } - return requests[0]; + return requests.get(0); } private class GnssMeasurementsListener extends IGnssMeasurementsListener.Stub { |