Messaging: Language cleanup
No unnecessary boxing, enhanced for loops, redundant checks and throws, imports (removal, reordering), possible void returns Change-Id: I7a8e1b2007e3b0906e01b41785c518d02c2f3fab
This commit is contained in:
@@ -24,9 +24,10 @@ import android.database.sqlite.SQLiteDoneException;
|
||||
import android.database.sqlite.SQLiteStatement;
|
||||
import android.net.Uri;
|
||||
import android.os.ParcelFileDescriptor;
|
||||
import android.text.TextUtils;
|
||||
|
||||
import androidx.collection.ArrayMap;
|
||||
import androidx.collection.SimpleArrayMap;
|
||||
import android.text.TextUtils;
|
||||
|
||||
import com.android.messaging.Factory;
|
||||
import com.android.messaging.datamodel.DatabaseHelper.ConversationColumns;
|
||||
@@ -55,6 +56,7 @@ import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
|
||||
|
||||
@@ -35,17 +35,18 @@ import android.os.Bundle;
|
||||
import android.os.SystemClock;
|
||||
import android.provider.ContactsContract;
|
||||
import android.provider.ContactsContract.Contacts;
|
||||
import androidx.core.app.NotificationCompat;
|
||||
import androidx.core.app.NotificationCompat.WearableExtender;
|
||||
import androidx.core.app.NotificationManagerCompat;
|
||||
import androidx.core.app.RemoteInput;
|
||||
import androidx.collection.SimpleArrayMap;
|
||||
import android.text.Spannable;
|
||||
import android.text.SpannableStringBuilder;
|
||||
import android.text.TextUtils;
|
||||
import android.text.style.StyleSpan;
|
||||
import android.text.style.TextAppearanceSpan;
|
||||
|
||||
import androidx.collection.SimpleArrayMap;
|
||||
import androidx.core.app.NotificationCompat;
|
||||
import androidx.core.app.NotificationCompat.WearableExtender;
|
||||
import androidx.core.app.NotificationManagerCompat;
|
||||
import androidx.core.app.RemoteInput;
|
||||
|
||||
import com.android.messaging.Factory;
|
||||
import com.android.messaging.R;
|
||||
import com.android.messaging.datamodel.MessageNotificationState.BundledMessageNotificationState;
|
||||
@@ -55,14 +56,12 @@ import com.android.messaging.datamodel.MessageNotificationState.MultiMessageNoti
|
||||
import com.android.messaging.datamodel.action.MarkAsReadAction;
|
||||
import com.android.messaging.datamodel.action.MarkAsSeenAction;
|
||||
import com.android.messaging.datamodel.action.RedownloadMmsAction;
|
||||
import com.android.messaging.datamodel.data.ConversationListItemData;
|
||||
import com.android.messaging.datamodel.media.AvatarRequestDescriptor;
|
||||
import com.android.messaging.datamodel.media.ImageResource;
|
||||
import com.android.messaging.datamodel.media.MediaRequest;
|
||||
import com.android.messaging.datamodel.media.MediaResourceManager;
|
||||
import com.android.messaging.datamodel.media.MessagePartVideoThumbnailRequestDescriptor;
|
||||
import com.android.messaging.datamodel.media.UriImageRequestDescriptor;
|
||||
import com.android.messaging.datamodel.media.VideoThumbnailRequest;
|
||||
import com.android.messaging.sms.MmsSmsUtils;
|
||||
import com.android.messaging.sms.MmsUtils;
|
||||
import com.android.messaging.ui.UIIntents;
|
||||
@@ -78,7 +77,6 @@ import com.android.messaging.util.LogUtil;
|
||||
import com.android.messaging.util.NotificationPlayer;
|
||||
import com.android.messaging.util.NotificationsUtil;
|
||||
import com.android.messaging.util.PendingIntentConstants;
|
||||
import com.android.messaging.util.PhoneUtils;
|
||||
import com.android.messaging.util.ThreadUtil;
|
||||
import com.android.messaging.util.UriUtil;
|
||||
|
||||
@@ -632,9 +630,7 @@ public class BugleNotifications {
|
||||
}
|
||||
|
||||
synchronized (sPendingNotifications) {
|
||||
if (sPendingNotifications.contains(notificationState)) {
|
||||
sPendingNotifications.remove(notificationState);
|
||||
}
|
||||
sPendingNotifications.remove(notificationState);
|
||||
}
|
||||
|
||||
notificationState.mNotificationBuilder
|
||||
@@ -662,11 +658,10 @@ public class BugleNotifications {
|
||||
Bitmap attachmentBitmap = null;
|
||||
|
||||
// For messages with photo/video attachment, request an image to show in the notification.
|
||||
if (attachmentUri != null && notificationState.mNotificationStyle != null &&
|
||||
(notificationState.mNotificationStyle instanceof
|
||||
NotificationCompat.BigPictureStyle) &&
|
||||
(ContentType.isImageType(attachmentType) ||
|
||||
ContentType.isVideoType(attachmentType))) {
|
||||
if (attachmentUri != null && (notificationState.mNotificationStyle instanceof
|
||||
NotificationCompat.BigPictureStyle) &&
|
||||
(ContentType.isImageType(attachmentType) ||
|
||||
ContentType.isVideoType(attachmentType))) {
|
||||
final boolean isVideo = ContentType.isVideoType(attachmentType);
|
||||
|
||||
MediaRequest<ImageResource> imageRequest;
|
||||
|
||||
@@ -32,12 +32,6 @@ import com.android.messaging.util.Assert;
|
||||
import com.android.messaging.util.Assert.DoesNotRunOnMainThread;
|
||||
import com.android.messaging.util.LogUtil;
|
||||
|
||||
/**
|
||||
* TODO: Open Issues:
|
||||
* - Should we be storing the draft messages in the regular messages table or should we have a
|
||||
* separate table for drafts to keep the normal messages query as simple as possible?
|
||||
*/
|
||||
|
||||
/**
|
||||
* Allows access to the SQL database. This is package private.
|
||||
*/
|
||||
|
||||
@@ -57,7 +57,7 @@ public class DatabaseWrapper {
|
||||
|
||||
// track transaction on a per thread basis
|
||||
private static final ThreadLocal<Stack<TransactionData>> sTransactionDepth =
|
||||
ThreadLocal.withInitial(() -> new Stack<>());
|
||||
ThreadLocal.withInitial(Stack::new);
|
||||
|
||||
private static final String[] sFormatStrings = new String[] {
|
||||
"took %d ms to %s",
|
||||
|
||||
@@ -25,7 +25,6 @@ import com.android.messaging.util.Assert;
|
||||
import com.android.messaging.util.ContactUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
|
||||
/**
|
||||
* A cursor builder that takes the frequent contacts cursor and aggregate it with the all contacts
|
||||
@@ -45,20 +44,16 @@ public class FrequentContactsCursorBuilder {
|
||||
|
||||
/**
|
||||
* Sets the frequent contacts cursor as soon as it is loaded, or null if it's reset.
|
||||
* @return this builder instance for chained operations
|
||||
*/
|
||||
public FrequentContactsCursorBuilder setFrequents(final Cursor frequentContactsCursor) {
|
||||
public void setFrequents(final Cursor frequentContactsCursor) {
|
||||
mFrequentContactsCursor = frequentContactsCursor;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the all contacts cursor as soon as it is loaded, or null if it's reset.
|
||||
* @return this builder instance for chained operations
|
||||
*/
|
||||
public FrequentContactsCursorBuilder setAllContacts(final Cursor allContactsCursor) {
|
||||
public void setAllContacts(final Cursor allContactsCursor) {
|
||||
mAllContactsCursor = allContactsCursor;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -153,7 +148,7 @@ public class FrequentContactsCursorBuilder {
|
||||
|
||||
// Now we have a list of rows containing frequent contacts in alphabetical order.
|
||||
// Therefore, sort all the rows according to their actual ranks in the frequents list.
|
||||
Collections.sort(rows, (lhs, rhs) -> {
|
||||
rows.sort((lhs, rhs) -> {
|
||||
final String lookupKeyLhs = (String) lhs[ContactUtil.INDEX_LOOKUP_KEY];
|
||||
final String lookupKeyRhs = (String) rhs[ContactUtil.INDEX_LOOKUP_KEY];
|
||||
Assert.isTrue(lookupKeyToRankMap.containsKey(lookupKeyLhs) &&
|
||||
@@ -179,8 +174,7 @@ public class FrequentContactsCursorBuilder {
|
||||
return 1;
|
||||
} else {
|
||||
// Use the default sort order, i.e. sort by phoneType value.
|
||||
return phoneTypeLhs < phoneTypeRhs ? -1 :
|
||||
(phoneTypeLhs == phoneTypeRhs ? 0 : 1);
|
||||
return Integer.compare(phoneTypeLhs, phoneTypeRhs);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2015 The Android Open Source Project
|
||||
* Copyright (C) 2024 The LineageOS Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -52,7 +53,7 @@ public class FrequentContactsCursorQueryData extends CursorQueryData {
|
||||
|
||||
private abstract class StrequentContactsQueryStrategy implements Strategy<Void, Cursor> {
|
||||
@Override
|
||||
public Cursor execute(Void params) throws Exception {
|
||||
public Cursor execute(Void params) {
|
||||
final Uri uri = getUri();
|
||||
if (uri != null) {
|
||||
setUri(uri);
|
||||
|
||||
@@ -23,10 +23,6 @@ import android.content.res.Resources;
|
||||
import android.database.Cursor;
|
||||
import android.graphics.Typeface;
|
||||
import android.net.Uri;
|
||||
import androidx.core.app.NotificationCompat;
|
||||
import androidx.core.app.NotificationCompat.Builder;
|
||||
import androidx.core.app.NotificationCompat.WearableExtender;
|
||||
import androidx.core.app.NotificationManagerCompat;
|
||||
import android.text.Html;
|
||||
import android.text.Spannable;
|
||||
import android.text.SpannableString;
|
||||
@@ -38,6 +34,11 @@ import android.text.style.StyleSpan;
|
||||
import android.text.style.TextAppearanceSpan;
|
||||
import android.text.style.URLSpan;
|
||||
|
||||
import androidx.core.app.NotificationCompat;
|
||||
import androidx.core.app.NotificationCompat.Builder;
|
||||
import androidx.core.app.NotificationCompat.WearableExtender;
|
||||
import androidx.core.app.NotificationManagerCompat;
|
||||
|
||||
import com.android.messaging.Factory;
|
||||
import com.android.messaging.R;
|
||||
import com.android.messaging.datamodel.data.ConversationListItemData;
|
||||
@@ -46,7 +47,6 @@ import com.android.messaging.datamodel.data.ConversationParticipantsData;
|
||||
import com.android.messaging.datamodel.data.MessageData;
|
||||
import com.android.messaging.datamodel.data.MessagePartData;
|
||||
import com.android.messaging.datamodel.data.ParticipantData;
|
||||
import com.android.messaging.datamodel.media.VideoThumbnailRequest;
|
||||
import com.android.messaging.sms.MmsUtils;
|
||||
import com.android.messaging.ui.UIIntents;
|
||||
import com.android.messaging.util.Assert;
|
||||
@@ -635,9 +635,7 @@ public abstract class MessageNotificationState extends NotificationState {
|
||||
continue;
|
||||
}
|
||||
|
||||
final int currentCount = firstNames.containsKey(firstName)
|
||||
? firstNames.get(firstName)
|
||||
: 0;
|
||||
final int currentCount = firstNames.getOrDefault(firstName, 0);
|
||||
firstNames.put(firstName, currentCount + 1);
|
||||
}
|
||||
return firstNames;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2015 The Android Open Source Project
|
||||
* Copyright (C) 2024 The LineageOS Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -18,7 +19,6 @@ package com.android.messaging.datamodel;
|
||||
|
||||
import android.content.Context;
|
||||
import android.net.Uri;
|
||||
import android.text.TextUtils;
|
||||
|
||||
import com.android.messaging.Factory;
|
||||
import com.android.messaging.util.LogUtil;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2015 The Android Open Source Project
|
||||
* Copyright (C) 2024 The LineageOS Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -18,7 +19,6 @@ package com.android.messaging.datamodel;
|
||||
|
||||
import android.app.IntentService;
|
||||
import android.content.Intent;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import androidx.core.app.RemoteInput;
|
||||
import android.telephony.TelephonyManager;
|
||||
|
||||
@@ -106,17 +106,13 @@ public class BackgroundWorkerService extends JobIntentService {
|
||||
protected void onHandleWork(@NonNull final Intent intent) {
|
||||
final int opcode = intent.getIntExtra(EXTRA_OP_CODE, 0);
|
||||
|
||||
switch(opcode) {
|
||||
case OP_PROCESS_REQUEST: {
|
||||
final Action action = intent.getParcelableExtra(EXTRA_ACTION);
|
||||
final int attempt = intent.getIntExtra(EXTRA_ATTEMPT, -1);
|
||||
doBackgroundWork(action, attempt);
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
LogUtil.w(TAG, "Unrecognized opcode in BackgroundWorkerService " + opcode);
|
||||
throw new RuntimeException("Unrecognized opcode in BackgroundWorkerService");
|
||||
if (opcode == OP_PROCESS_REQUEST) {
|
||||
final Action action = intent.getParcelableExtra(EXTRA_ACTION);
|
||||
final int attempt = intent.getIntExtra(EXTRA_ATTEMPT, -1);
|
||||
doBackgroundWork(action, attempt);
|
||||
} else {
|
||||
LogUtil.w(TAG, "Unrecognized opcode in BackgroundWorkerService " + opcode);
|
||||
throw new RuntimeException("Unrecognized opcode in BackgroundWorkerService");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -30,7 +30,6 @@ import com.android.messaging.datamodel.BugleDatabaseOperations;
|
||||
import com.android.messaging.datamodel.DataModel;
|
||||
import com.android.messaging.datamodel.DataModelImpl;
|
||||
import com.android.messaging.datamodel.DatabaseHelper;
|
||||
import com.android.messaging.datamodel.DatabaseHelper.MessageColumns;
|
||||
import com.android.messaging.datamodel.DatabaseWrapper;
|
||||
import com.android.messaging.datamodel.MessagingContentProvider;
|
||||
import com.android.messaging.datamodel.data.MessageData;
|
||||
@@ -43,9 +42,6 @@ import com.android.messaging.util.ConnectivityUtil.ConnectivityListener;
|
||||
import com.android.messaging.util.LogUtil;
|
||||
import com.android.messaging.util.PhoneUtils;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* Action used to lookup any messages in the pending send/download state and either fail them or
|
||||
* retry their action based on subscriptions. This action only initiates one retry at a time for
|
||||
|
||||
@@ -106,11 +106,7 @@ public class SyncMessagesAction extends Action implements Parcelable {
|
||||
* sending/receiving).
|
||||
*/
|
||||
public static void immediateSync() {
|
||||
final long now = System.currentTimeMillis();
|
||||
// TODO: Could base this off most recent message in db but now should be okay...
|
||||
final long startTimestamp = now;
|
||||
|
||||
sync(startTimestamp);
|
||||
sync(System.currentTimeMillis());
|
||||
}
|
||||
|
||||
private static void sync(final long startTimestamp) {
|
||||
|
||||
@@ -47,7 +47,6 @@ import com.android.messaging.util.SafeAsyncTask;
|
||||
import com.android.messaging.util.UriUtil;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
/**
|
||||
* Represents a single message part. Messages consist of one or more parts which may contain
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright (C) 2015 The Android Open Source Project
|
||||
* Copyright (C) 2024 The LineageOS Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -17,10 +18,8 @@ package com.android.messaging.datamodel.data;
|
||||
|
||||
import android.content.Context;
|
||||
import android.database.Cursor;
|
||||
import android.net.Uri;
|
||||
|
||||
import com.android.messaging.R;
|
||||
import com.android.messaging.datamodel.data.ConversationListItemData.ConversationListViewColumns;
|
||||
import com.android.messaging.util.Assert;
|
||||
|
||||
public class PeopleOptionsItemData {
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
package com.android.messaging.datamodel.data;
|
||||
|
||||
import android.database.Cursor;
|
||||
|
||||
import androidx.collection.ArrayMap;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
@@ -20,7 +20,6 @@ import android.content.Context;
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.BitmapFactory;
|
||||
import android.graphics.Canvas;
|
||||
import android.graphics.Paint;
|
||||
import android.graphics.RectF;
|
||||
|
||||
import com.android.messaging.datamodel.data.MessagePartData;
|
||||
@@ -224,7 +223,7 @@ public abstract class ImageRequest<D extends ImageRequestDescriptor>
|
||||
final int backgroundColor = mDescriptor.circleBackgroundColor;
|
||||
final int strokeColor = mDescriptor.circleStrokeColor;
|
||||
ImageUtils.drawBitmapWithCircleOnCanvas(sourceBitmap, new Canvas(targetBitmap), source,
|
||||
dest, null, backgroundColor == 0 ? false : true /* fillBackground */,
|
||||
dest, null, backgroundColor != 0 /* fillBackground */,
|
||||
backgroundColor, strokeColor);
|
||||
return new DecodedImageResource(getKey(), targetBitmap,
|
||||
loadedResource.getOrientation());
|
||||
|
||||
@@ -188,10 +188,7 @@ public class MediaResourceManager {
|
||||
}
|
||||
final MediaCache<T> mediaCache = mediaRequest.getMediaCache();
|
||||
if (mediaCache != null) {
|
||||
final T mediaResource = mediaCache.fetchResourceFromCache(mediaRequest.getKey());
|
||||
if (mediaResource != null) {
|
||||
return mediaResource;
|
||||
}
|
||||
return mediaCache.fetchResourceFromCache(mediaRequest.getKey());
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user