Replace guava isNullOrEmpty usage

pull/996/head
Alex Baker 4 years ago
parent b9a22b8041
commit 2f8ac10e47

@ -1,10 +1,10 @@
package org.tasks.makers;
import static com.natpryce.makeiteasy.Property.newProperty;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.date.DateTimeUtils.newDateTime;
import static org.tasks.makers.Maker.make;
import com.google.common.base.Strings;
import com.google.ical.values.RRule;
import com.natpryce.makeiteasy.Instantiator;
import com.natpryce.makeiteasy.Property;
@ -36,7 +36,7 @@ public class TaskMaker {
Task task = new Task();
String title = lookup.valueOf(TITLE, (String) null);
if (!Strings.isNullOrEmpty(title)) {
if (!isNullOrEmpty(title)) {
task.setTitle(title);
}

@ -6,13 +6,13 @@
package com.todoroo.andlib.utility;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.date.DateTimeUtils.newDateTime;
import static org.tasks.time.DateTimeUtils.currentTimeMillis;
import android.content.Context;
import android.text.format.DateFormat;
import androidx.annotation.Nullable;
import com.google.common.base.Strings;
import com.todoroo.astrid.data.Task;
import org.tasks.BuildConfig;
import org.tasks.R;
@ -91,7 +91,7 @@ public class DateUtilities {
public static String getRelativeDateTime(
Context context, long date, java.util.Locale locale, FormatStyle style) {
String day = getRelativeDay(context, date, locale, isAbbreviated(style));
if (!Strings.isNullOrEmpty(day)) {
if (!isNullOrEmpty(day)) {
if (Task.hasDueTime(date)) {
String time = getTimeString(context, newDateTime(date));
return newDateTime().startOfDay().equals(newDateTime(date).startOfDay()) ? time : String.format("%s %s", day, time);
@ -114,7 +114,7 @@ public class DateUtilities {
java.util.Locale locale,
FormatStyle style) {
String relativeDay = getRelativeDay(context, date, locale, isAbbreviated(style));
return Strings.isNullOrEmpty(relativeDay)
return isNullOrEmpty(relativeDay)
? getFullDate(newDateTime(date), locale, style)
: relativeDay;
}

@ -7,6 +7,7 @@
package com.todoroo.astrid.activity;
import static java.util.Arrays.asList;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.Context;
import android.os.Bundle;
@ -16,7 +17,6 @@ import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
import com.google.common.base.Strings;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@ -127,7 +127,7 @@ public class BeastModePreferences extends ThemedInjectingAppCompatActivity
}
String oldValue = preferences.getStringValue(BEAST_MODE_ORDER_PREF);
String newValue = newSetting.toString();
if (Strings.isNullOrEmpty(oldValue) || !oldValue.equals(newValue)) {
if (isNullOrEmpty(oldValue) || !oldValue.equals(newValue)) {
preferences.setString(BEAST_MODE_ORDER_PREF, newSetting.toString());
setResult(RESULT_OK);
}

@ -6,11 +6,11 @@
package com.todoroo.astrid.activity;
import static com.google.common.base.Strings.isNullOrEmpty;
import static com.todoroo.andlib.utility.AndroidUtilities.assertMainThread;
import static com.todoroo.andlib.utility.AndroidUtilities.atLeastNougat;
import static com.todoroo.astrid.activity.TaskEditFragment.newTaskEditFragment;
import static com.todoroo.astrid.activity.TaskListFragment.newTaskListFragment;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.location.LocationPickerActivity.EXTRA_PLACE;
import static org.tasks.tasklist.ActionUtils.applySupportActionModeColor;
import static org.tasks.ui.NavigationDrawerFragment.REQUEST_NEW_LIST;

@ -3,6 +3,7 @@ package com.todoroo.astrid.activity;
import static android.content.Intent.ACTION_SEND;
import static android.content.Intent.ACTION_SEND_MULTIPLE;
import static com.google.common.collect.Lists.newArrayList;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.files.FileHelper.copyToUri;
import static org.tasks.files.FileHelper.getFilename;
import static org.tasks.intents.TaskIntents.getTaskListIntent;
@ -12,7 +13,6 @@ import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import androidx.core.app.TaskStackBuilder;
import com.google.common.base.Strings;
import com.google.common.io.Files;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.service.TaskCreator;
@ -97,10 +97,10 @@ public final class ShareLinkActivity extends InjectingAppCompatActivity {
private ArrayList<Uri> copyAttachment(Intent intent) {
Uri uri = intent.getParcelableExtra(Intent.EXTRA_STREAM);
String filename = getFilename(context, uri);
if (Strings.isNullOrEmpty(filename)) {
if (isNullOrEmpty(filename)) {
String subject = intent.getStringExtra(Intent.EXTRA_SUBJECT);
filename =
Strings.isNullOrEmpty(subject)
isNullOrEmpty(subject)
? uri.getLastPathSegment()
: subject.substring(0, Math.min(subject.length(), FileHelper.MAX_FILENAME_LENGTH));
}

@ -11,6 +11,7 @@ import static com.google.common.collect.Iterables.filter;
import static com.todoroo.andlib.utility.AndroidUtilities.assertNotMainThread;
import static com.todoroo.andlib.utility.AndroidUtilities.atLeastQ;
import static com.todoroo.andlib.utility.DateUtilities.now;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.date.DateTimeUtils.newDateTime;
import static org.tasks.files.FileHelper.copyToUri;
@ -36,7 +37,6 @@ import androidx.coordinatorlayout.widget.CoordinatorLayout;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
import com.google.android.material.appbar.AppBarLayout;
import com.google.common.base.Strings;
import com.todoroo.andlib.utility.AndroidUtilities;
import com.todoroo.andlib.utility.DateUtilities;
import com.todoroo.astrid.api.Filter;
@ -150,7 +150,7 @@ public final class TaskEditFragment extends InjectingFragment
model.isNew() ? MenuItem.SHOW_AS_ACTION_IF_ROOM : MenuItem.SHOW_AS_ACTION_NEVER);
if (savedInstanceState == null) {
showKeyboard = model.isNew() && Strings.isNullOrEmpty(model.getTitle());
showKeyboard = model.isNew() && isNullOrEmpty(model.getTitle());
completed = model.isCompleted();
} else {
completed = savedInstanceState.getBoolean(EXTRA_COMPLETED);
@ -298,7 +298,7 @@ public final class TaskEditFragment extends InjectingFragment
boolean isNewTask = model.isNew();
TaskListFragment taskListFragment = ((MainActivity) getActivity()).getTaskListFragment();
String title = getTitle();
model.setTitle(Strings.isNullOrEmpty(title) ? getString(R.string.no_title) : title);
model.setTitle(isNullOrEmpty(title) ? getString(R.string.no_title) : title);
if (completed != model.isCompleted()) {
model.setCompletionDate(completed ? now() : 0);
}
@ -324,7 +324,7 @@ public final class TaskEditFragment extends InjectingFragment
if (isNewTask) {
taskListFragment.onTaskCreated(model.getUuid());
if (!Strings.isNullOrEmpty(model.getCalendarURI())) {
if (!isNullOrEmpty(model.getCalendarURI())) {
taskListFragment.makeSnackbar(R.string.calendar_event_created, model.getTitle())
.setAction(R.string.action_open, v -> {
String uri = model.getCalendarURI();
@ -371,7 +371,7 @@ public final class TaskEditFragment extends InjectingFragment
String newTitle = getTitle();
if (!newTitle.equals(model.getTitle())
|| (!model.isNew() && completed != model.isCompleted())
|| (model.isNew() && !Strings.isNullOrEmpty(newTitle))) {
|| (model.isNew() && !isNullOrEmpty(newTitle))) {
return true;
}

@ -2,10 +2,10 @@ package com.todoroo.astrid.core;
import static com.google.common.collect.Lists.transform;
import static java.util.Arrays.asList;
import static org.tasks.Strings.isNullOrEmpty;
import com.google.common.base.Joiner;
import com.google.common.base.Splitter;
import com.google.common.base.Strings;
import com.todoroo.andlib.utility.AndroidUtilities;
import com.todoroo.astrid.api.CustomFilterCriterion;
import com.todoroo.astrid.api.MultipleSelectCriterion;
@ -47,7 +47,7 @@ public class CriterionInstance {
public static List<CriterionInstance> fromString(
FilterCriteriaProvider provider, String criterion) {
if (Strings.isNullOrEmpty(criterion)) {
if (isNullOrEmpty(criterion)) {
return Collections.emptyList();
}
List<CriterionInstance> entries = new ArrayList<>();
@ -91,7 +91,7 @@ public class CriterionInstance {
}
private static String unescape(String item) {
if (Strings.isNullOrEmpty(item)) {
if (isNullOrEmpty(item)) {
return "";
}
return item.replace(

@ -8,6 +8,7 @@ package com.todoroo.astrid.data;
import static com.todoroo.astrid.data.SyncFlags.SUPPRESS_SYNC;
import static java.lang.annotation.RetentionPolicy.SOURCE;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.date.DateTimeUtils.newDateTime;
import android.content.ContentValues;
@ -22,7 +23,6 @@ import androidx.room.Ignore;
import androidx.room.Index;
import androidx.room.PrimaryKey;
import com.google.common.base.Objects;
import com.google.common.base.Strings;
import com.google.ical.values.RRule;
import com.todoroo.andlib.data.Property.IntegerProperty;
import com.todoroo.andlib.data.Property.LongProperty;
@ -337,7 +337,7 @@ public class Task implements Parcelable {
}
public String getUuid() {
return Strings.isNullOrEmpty(remoteId) ? NO_UUID : remoteId;
return isNullOrEmpty(remoteId) ? NO_UUID : remoteId;
}
public void setUuid(String uuid) {
@ -453,7 +453,7 @@ public class Task implements Parcelable {
}
public boolean isRecurring() {
return !Strings.isNullOrEmpty(recurrence);
return !isNullOrEmpty(recurrence);
}
public String getRecurrence() {

@ -8,6 +8,7 @@ package com.todoroo.astrid.repeats;
import static com.google.common.collect.Lists.newArrayList;
import static com.google.ical.values.Frequency.MONTHLY;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.repeats.BasicRecurrenceDialog.newBasicRecurrenceDialog;
import static org.tasks.time.DateTimeUtils.currentTimeMillis;
@ -26,7 +27,6 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import butterknife.BindView;
import butterknife.OnItemSelected;
import com.google.common.base.Strings;
import com.google.ical.values.RRule;
import com.google.ical.values.WeekdayNum;
import com.todoroo.astrid.data.Task;
@ -123,7 +123,7 @@ public class RepeatControlSet extends TaskEditControlFragment {
} else {
String recurrence = savedInstanceState.getString(EXTRA_RECURRENCE);
dueDate = savedInstanceState.getLong(EXTRA_DUE_DATE);
if (Strings.isNullOrEmpty(recurrence)) {
if (isNullOrEmpty(recurrence)) {
rrule = null;
} else {
try {

@ -1,13 +1,12 @@
package com.todoroo.astrid.service;
import static com.google.common.base.Strings.isNullOrEmpty;
import static com.google.common.collect.Iterables.transform;
import static com.google.common.collect.Lists.newArrayList;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.db.DbUtils.batch;
import android.content.Context;
import androidx.annotation.ColorRes;
import com.google.common.base.Strings;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableListMultimap;
import com.google.common.collect.ListMultimap;
@ -236,7 +235,7 @@ public class Upgrader {
continue;
}
task.setRemoteParent(iCalendar.Companion.getParent(remoteTask));
if (!Strings.isNullOrEmpty(task.getRemoteParent())) {
if (!isNullOrEmpty(task.getRemoteParent())) {
updated.add(task);
}
}
@ -335,7 +334,7 @@ public class Upgrader {
private void migrateUriPreference(int pref) {
String path = preferences.getStringValue(pref);
if (Strings.isNullOrEmpty(path)) {
if (isNullOrEmpty(path)) {
return;
}
File file = new File(path);

@ -0,0 +1,7 @@
package org.tasks;
public class Strings {
public static boolean isNullOrEmpty(String string) {
return string == null || string.isEmpty();
}
}

@ -11,6 +11,7 @@ import static com.google.common.collect.Iterables.find;
import static com.google.common.collect.Lists.newArrayList;
import static com.google.common.collect.Lists.transform;
import static com.todoroo.andlib.utility.AndroidUtilities.mapToSerializedString;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.Context;
import android.content.DialogInterface;
@ -33,7 +34,6 @@ import com.google.android.material.button.MaterialButtonToggleGroup;
import com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton;
import com.google.android.material.textfield.TextInputEditText;
import com.google.android.material.textfield.TextInputLayout;
import com.google.common.base.Strings;
import com.todoroo.andlib.data.Property.CountProperty;
import com.todoroo.andlib.sql.Query;
import com.todoroo.andlib.sql.UnaryCriterion;
@ -323,7 +323,7 @@ public class FilterSettingsActivity extends BaseListSettingsActivity {
@Override
protected boolean hasChanges() {
if (isNew()) {
return !Strings.isNullOrEmpty(getNewName())
return !isNullOrEmpty(getNewName())
|| selectedColor != 0
|| selectedIcon != -1
|| criteria.size() > 1;

@ -3,7 +3,6 @@ package org.tasks.activities
import android.app.Activity
import android.content.Intent
import android.os.Bundle
import android.text.TextUtils
import butterknife.BindView
import butterknife.OnTextChanged
import com.google.android.material.textfield.TextInputEditText
@ -11,6 +10,7 @@ import com.google.android.material.textfield.TextInputLayout
import com.todoroo.astrid.activity.MainActivity
import com.todoroo.astrid.activity.TaskListFragment
import org.tasks.R
import org.tasks.Strings.isNullOrEmpty
import org.tasks.data.LocationDao
import org.tasks.data.Place
import org.tasks.filters.PlaceFilter
@ -72,7 +72,7 @@ class PlaceSettingsActivity : BaseListSettingsActivity(), MapFragment.MapFragmen
override fun save() {
val newName: String = name.text.toString()
if (TextUtils.isEmpty(newName)) {
if (isNullOrEmpty(newName)) {
nameLayout.error = getString(R.string.name_cannot_be_empty)
return
}

@ -2,6 +2,7 @@ package org.tasks.caldav;
import static android.text.TextUtils.isEmpty;
import static com.todoroo.astrid.data.Task.NO_ID;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.Context;
import android.content.Intent;
@ -20,7 +21,6 @@ import butterknife.OnFocusChange;
import butterknife.OnTextChanged;
import com.google.android.material.snackbar.BaseTransientBottomBar;
import com.google.android.material.snackbar.Snackbar;
import com.google.common.base.Strings;
import com.todoroo.astrid.service.TaskDeleter;
import java.net.ConnectException;
import java.net.IDN;
@ -173,7 +173,7 @@ public abstract class BaseCaldavAccountSettingsActivity extends ThemedInjectingA
protected String getNewName() {
String name = binding.name.getText().toString().trim();
return Strings.isNullOrEmpty(name) ? getNewUsername() : name;
return isNullOrEmpty(name) ? getNewUsername() : name;
}
protected String getNewURL() {

@ -3,10 +3,10 @@ package org.tasks.caldav;
import static com.todoroo.andlib.utility.DateUtilities.now;
import static com.todoroo.astrid.data.Task.URGENCY_SPECIFIC_DAY;
import static com.todoroo.astrid.data.Task.URGENCY_SPECIFIC_DAY_TIME;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.date.DateTimeUtils.newDateTime;
import at.bitfire.ical4android.DateUtils;
import com.google.common.base.Strings;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.data.Task.Priority;
import java.text.DateFormat;
@ -106,7 +106,7 @@ public class CaldavConverter {
public static at.bitfire.ical4android.Task toCaldav(CaldavTask caldavTask, Task task) {
at.bitfire.ical4android.Task remote = null;
try {
if (!Strings.isNullOrEmpty(caldavTask.getVtodo())) {
if (!isNullOrEmpty(caldavTask.getVtodo())) {
remote = iCalendar.Companion.fromVtodo(caldavTask.getVtodo());
}
} catch (Exception e) {

@ -1,12 +1,12 @@
package org.tasks.caldav;
import static com.google.common.base.Strings.isNullOrEmpty;
import static com.google.common.collect.Iterables.filter;
import static com.google.common.collect.Iterables.partition;
import static com.google.common.collect.Lists.newArrayList;
import static com.google.common.collect.Lists.transform;
import static com.google.common.collect.Sets.difference;
import static com.google.common.collect.Sets.newHashSet;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.time.DateTimeUtils.currentTimeMillis;
import android.content.Context;
@ -26,7 +26,6 @@ import at.bitfire.dav4jvm.property.GetCTag;
import at.bitfire.dav4jvm.property.GetETag;
import at.bitfire.dav4jvm.property.SyncToken;
import at.bitfire.ical4android.ICalendar;
import com.google.common.base.Strings;
import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Iterables;
import com.todoroo.astrid.dao.TaskDao;
@ -167,7 +166,7 @@ public class CaldavSynchronizer {
account.setError(message);
caldavDao.update(account);
localBroadcastManager.broadcastRefreshList();
if (!Strings.isNullOrEmpty(message)) {
if (!isNullOrEmpty(message)) {
Timber.e(message);
}
}
@ -280,7 +279,7 @@ public class CaldavSynchronizer {
private boolean deleteRemoteResource(
OkHttpClient httpClient, HttpUrl httpUrl, CaldavTask caldavTask) {
try {
if (!Strings.isNullOrEmpty(caldavTask.getObject())) {
if (!isNullOrEmpty(caldavTask.getObject())) {
DavResource remote =
new DavResource(
httpClient, httpUrl.newBuilder().addPathSegment(caldavTask.getObject()).build());

@ -3,7 +3,6 @@ package org.tasks.caldav
import at.bitfire.ical4android.Task
import at.bitfire.ical4android.Task.Companion.tasksFromReader
import com.google.common.base.Predicate
import com.google.common.base.Strings
import com.google.common.collect.Iterables
import com.google.common.collect.Lists
import com.google.common.collect.Sets.difference
@ -16,6 +15,7 @@ import net.fortuna.ical4j.model.Parameter
import net.fortuna.ical4j.model.parameter.RelType
import net.fortuna.ical4j.model.property.Geo
import net.fortuna.ical4j.model.property.RelatedTo
import org.tasks.Strings.isNullOrEmpty
import org.tasks.caldav.GeoUtils.equalish
import org.tasks.caldav.GeoUtils.toGeo
import org.tasks.caldav.GeoUtils.toLikeString
@ -65,7 +65,7 @@ class iCalendar @Inject constructor(
fun setParent(remote: Task, value: String?) {
val relatedTo = remote.relatedTo
if (Strings.isNullOrEmpty(value)) {
if (isNullOrEmpty(value)) {
Iterables.removeIf(relatedTo, IS_PARENT)
} else {
val parent = Iterables.tryFind(relatedTo, IS_PARENT)
@ -121,7 +121,7 @@ class iCalendar @Inject constructor(
val categories = remoteModel.categories
categories.clear()
categories.addAll(Lists.transform(tagDataDao.getTagDataForTask(task.getId())) { obj: TagData? -> obj!!.name })
if (Strings.isNullOrEmpty(caldavTask.remoteId)) {
if (isNullOrEmpty(caldavTask.remoteId)) {
val caldavUid = UUIDHelper.newUUID()
caldavTask.remoteId = caldavUid
remoteModel.uid = caldavUid

@ -2,6 +2,7 @@ package org.tasks.calendars;
import static com.google.common.collect.Lists.transform;
import static org.tasks.PermissionUtil.verifyPermissions;
import static org.tasks.Strings.isNullOrEmpty;
import android.app.Activity;
import android.app.Dialog;
@ -12,7 +13,6 @@ import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog;
import androidx.fragment.app.Fragment;
import com.google.common.base.Strings;
import java.util.ArrayList;
import java.util.List;
import javax.inject.Inject;
@ -104,7 +104,7 @@ public class CalendarPicker extends InjectingDialogFragment {
calendarNames.addAll(transform(calendars, AndroidCalendar::getName));
Bundle arguments = getArguments();
String selected = arguments.getString(EXTRA_SELECTED);
int selectedIndex = Strings.isNullOrEmpty(selected) ? 0 : calendarNames.indexOf(selected);
int selectedIndex = isNullOrEmpty(selected) ? 0 : calendarNames.indexOf(selected);
adapter.notifyDataSetChanged();
listView.setItemChecked(selectedIndex, true);
listView.setSelection(selectedIndex);

@ -1,6 +1,7 @@
package org.tasks.calendars;
import static android.provider.BaseColumns._ID;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.ContentResolver;
import android.content.Context;
@ -8,7 +9,6 @@ import android.database.Cursor;
import android.net.Uri;
import android.provider.CalendarContract;
import androidx.annotation.Nullable;
import com.google.common.base.Strings;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@ -43,7 +43,7 @@ public class CalendarProvider {
@Nullable
public AndroidCalendar getCalendar(String id) {
if (Strings.isNullOrEmpty(id)) {
if (isNullOrEmpty(id)) {
return null;
}
List<AndroidCalendar> calendars =

@ -1,9 +1,10 @@
package org.tasks.data;
import static org.tasks.Strings.isNullOrEmpty;
import androidx.room.ColumnInfo;
import androidx.room.Entity;
import androidx.room.PrimaryKey;
import com.google.common.base.Strings;
import com.todoroo.andlib.utility.AndroidUtilities;
import java.util.Map;
import org.tasks.themes.CustomIcons;
@ -63,7 +64,7 @@ public class Filter {
}
public Map<String, Object> getValuesAsMap() {
return Strings.isNullOrEmpty(values) ? null : AndroidUtilities.mapFromSerializedString(values);
return isNullOrEmpty(values) ? null : AndroidUtilities.mapFromSerializedString(values);
}
public void setValues(String values) {

@ -1,6 +1,7 @@
package org.tasks.data;
import static com.mapbox.api.geocoding.v5.GeocodingCriteria.TYPE_ADDRESS;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.data.Place.TABLE_NAME;
import android.content.Context;
@ -18,7 +19,6 @@ import androidx.room.Entity;
import androidx.room.Ignore;
import androidx.room.Index;
import androidx.room.PrimaryKey;
import com.google.common.base.Strings;
import com.mapbox.api.geocoding.v5.models.CarmenFeature;
import com.todoroo.andlib.data.Property.StringProperty;
import com.todoroo.andlib.data.Table;
@ -255,10 +255,10 @@ public class Place implements Serializable, Parcelable {
}
public String getDisplayName() {
if (!Strings.isNullOrEmpty(name) && !COORDS.matcher(name).matches()) {
if (!isNullOrEmpty(name) && !COORDS.matcher(name).matches()) {
return name;
}
if (!Strings.isNullOrEmpty(address)) {
if (!isNullOrEmpty(address)) {
return address;
}
return String.format(
@ -266,7 +266,7 @@ public class Place implements Serializable, Parcelable {
}
public String getDisplayAddress() {
return Strings.isNullOrEmpty(address) ? null : address.replace(String.format("%s, ", name), "");
return isNullOrEmpty(address) ? null : address.replace(String.format("%s, ", name), "");
}
public void open(Context context) {

@ -1,11 +1,12 @@
package org.tasks.data;
import static org.tasks.Strings.isNullOrEmpty;
import android.net.Uri;
import androidx.room.ColumnInfo;
import androidx.room.Entity;
import androidx.room.Ignore;
import androidx.room.PrimaryKey;
import com.google.common.base.Strings;
import com.todoroo.andlib.data.Table;
import com.todoroo.astrid.data.Task;
import java.io.File;
@ -106,6 +107,6 @@ public final class TaskAttachment {
}
public Uri parseUri() {
return Strings.isNullOrEmpty(uri) ? null : Uri.parse(uri);
return isNullOrEmpty(uri) ? null : Uri.parse(uri);
}
}

@ -1,5 +1,7 @@
package org.tasks.data;
import static org.tasks.Strings.isNullOrEmpty;
import android.net.Uri;
import android.os.Parcel;
import android.os.Parcelable;
@ -7,7 +9,6 @@ import androidx.room.ColumnInfo;
import androidx.room.Entity;
import androidx.room.Ignore;
import androidx.room.PrimaryKey;
import com.google.common.base.Strings;
import com.todoroo.astrid.data.Task;
import java.io.File;
import org.json.JSONException;
@ -78,7 +79,7 @@ public class UserActivity implements Parcelable {
private static Uri getLegacyPictureUri(String value) {
try {
if (Strings.isNullOrEmpty(value)) {
if (isNullOrEmpty(value)) {
return null;
}
if (value.contains("uri") || value.contains("path")) {
@ -151,7 +152,7 @@ public class UserActivity implements Parcelable {
}
public Uri getPictureUri() {
return Strings.isNullOrEmpty(picture) ? null : Uri.parse(picture);
return isNullOrEmpty(picture) ? null : Uri.parse(picture);
}
public void convertPictureUri() {

@ -1,6 +1,7 @@
package org.tasks.dialogs;
import static java.util.Arrays.asList;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.Context;
import android.content.Intent;
@ -11,7 +12,6 @@ import android.text.SpannableStringBuilder;
import android.text.style.URLSpan;
import android.view.View;
import android.widget.TextView;
import com.google.common.base.Strings;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.inject.Inject;
@ -82,7 +82,7 @@ public class Linkify {
String url = getURL();
Uri uri = Uri.parse(url);
String scheme = uri.getScheme();
if (Strings.isNullOrEmpty(scheme)) {
if (isNullOrEmpty(scheme)) {
scheme = "";
}
switch (scheme) {

@ -1,6 +1,7 @@
package org.tasks.etesync;
import static com.todoroo.astrid.data.Task.NO_ID;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.Context;
import android.content.Intent;
@ -15,7 +16,6 @@ import com.etesync.journalmanager.Crypto.CryptoManager;
import com.etesync.journalmanager.Exceptions.IntegrityException;
import com.etesync.journalmanager.Exceptions.VersionTooNewException;
import com.etesync.journalmanager.UserInfoManager.UserInfo;
import com.google.common.base.Strings;
import com.todoroo.astrid.helper.UUIDHelper;
import io.reactivex.Completable;
import io.reactivex.schedulers.Schedulers;
@ -112,7 +112,7 @@ public class EteSyncAccountSettingsActivity extends BaseCaldavAccountSettingsAct
private boolean testUserInfo(UserInfo userInfo) {
String encryptionKey = caldavAccount.getEncryptionPassword(encryption);
if (userInfo != null && !Strings.isNullOrEmpty(encryptionKey)) {
if (userInfo != null && !isNullOrEmpty(encryptionKey)) {
try {
CryptoManager cryptoManager =
new CryptoManager(userInfo.getVersion(), encryptionKey, "userInfo");
@ -136,7 +136,7 @@ public class EteSyncAccountSettingsActivity extends BaseCaldavAccountSettingsAct
@Override
protected boolean needsValidation() {
return super.needsValidation() || Strings.isNullOrEmpty(caldavAccount.getEncryptionKey());
return super.needsValidation() || isNullOrEmpty(caldavAccount.getEncryptionKey());
}
@Override
@ -163,7 +163,7 @@ public class EteSyncAccountSettingsActivity extends BaseCaldavAccountSettingsAct
@Override
protected String getNewURL() {
String url = super.getNewURL();
return Strings.isNullOrEmpty(url) ? getString(R.string.etesync_url) : url;
return isNullOrEmpty(url) ? getString(R.string.etesync_url) : url;
}
@Override

@ -1,11 +1,11 @@
package org.tasks.etesync;
import static com.google.common.base.Strings.isNullOrEmpty;
import static com.google.common.collect.FluentIterable.from;
import static com.google.common.collect.Lists.newArrayList;
import static com.google.common.collect.Maps.newHashMap;
import static com.google.common.collect.Sets.newHashSet;
import static java.util.Collections.emptySet;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.Context;
import androidx.core.util.Pair;
@ -22,7 +22,6 @@ import com.etesync.journalmanager.UserInfoManager.UserInfo;
import com.etesync.journalmanager.model.CollectionInfo;
import com.etesync.journalmanager.model.SyncEntry;
import com.etesync.journalmanager.model.SyncEntry.Actions;
import com.google.common.base.Strings;
import com.google.common.collect.Iterables;
import com.todoroo.astrid.helper.UUIDHelper;
import com.todoroo.astrid.service.TaskDeleter;
@ -151,7 +150,7 @@ public class EteSynchronizer {
account.setError(message);
caldavDao.update(account);
localBroadcastManager.broadcastRefreshList();
if (!Strings.isNullOrEmpty(message)) {
if (!isNullOrEmpty(message)) {
Timber.e(message);
}
}
@ -167,7 +166,7 @@ public class EteSynchronizer {
}
String remoteCtag = journal.getLastUid();
if (Strings.isNullOrEmpty(remoteCtag) || !remoteCtag.equals(caldavCalendar.getCtag())) {
if (isNullOrEmpty(remoteCtag) || !remoteCtag.equals(caldavCalendar.getCtag())) {
Timber.v("Applying remote changes");
client.getSyncEntries(
userInfo,
@ -181,14 +180,14 @@ public class EteSynchronizer {
List<SyncEntry> changes = new ArrayList<>();
for (CaldavTask task : caldavDao.getDeleted(caldavCalendar.getUuid())) {
String vtodo = task.getVtodo();
if (!Strings.isNullOrEmpty(vtodo)) {
if (!isNullOrEmpty(vtodo)) {
changes.add(new SyncEntry(vtodo, Actions.DELETE));
}
}
for (CaldavTaskContainer task : localChanges.values()) {
String vtodo = task.getVtodo();
boolean existingTask = !Strings.isNullOrEmpty(vtodo);
boolean existingTask = !isNullOrEmpty(vtodo);
if (task.isDeleted()) {
if (existingTask) {
@ -206,7 +205,7 @@ public class EteSynchronizer {
CryptoManager crypto = client.getCrypto(userInfo, journal);
List<Pair<Entry, SyncEntry>> updates = new ArrayList<>();
JournalEntryManager.Entry previous =
Strings.isNullOrEmpty(remoteCtag) ? null : Entry.getFakeWithUid(remoteCtag);
isNullOrEmpty(remoteCtag) ? null : Entry.getFakeWithUid(remoteCtag);
for (SyncEntry syncEntry : changes) {
Entry entry = new Entry();

@ -1,9 +1,10 @@
package org.tasks.etesync;
import static org.tasks.Strings.isNullOrEmpty;
import androidx.annotation.Nullable;
import androidx.core.util.Pair;
import com.etesync.journalmanager.UserInfoManager.UserInfo;
import com.google.common.base.Strings;
import org.tasks.ui.CompletableViewModel;
@SuppressWarnings("WeakerAccess")
@ -17,7 +18,7 @@ public class UpdateEteSyncAccountViewModel extends CompletableViewModel<Pair<Use
run(
() -> {
client.setForeground();
if (Strings.isNullOrEmpty(password)) {
if (isNullOrEmpty(password)) {
return Pair.create(client.forUrl(url, username, null, token).getUserInfo(), token);
} else {
String newToken = client.forUrl(url, username, null, null).getToken(password);

@ -5,6 +5,7 @@ import static android.provider.DocumentsContract.EXTRA_INITIAL_URI;
import static androidx.core.content.FileProvider.getUriForFile;
import static com.google.common.collect.Iterables.any;
import static com.todoroo.astrid.utility.Constants.FILE_PROVIDER_AUTHORITY;
import static org.tasks.Strings.isNullOrEmpty;
import android.annotation.TargetApi;
import android.app.Activity;
@ -21,7 +22,6 @@ import android.widget.Toast;
import androidx.annotation.Nullable;
import androidx.documentfile.provider.DocumentFile;
import androidx.fragment.app.Fragment;
import com.google.common.base.Strings;
import com.google.common.io.ByteStreams;
import com.google.common.io.Files;
import java.io.File;
@ -135,13 +135,13 @@ public class FileHelper {
if (uri.getScheme().equals(ContentResolver.SCHEME_CONTENT)) {
String mimeType = context.getContentResolver().getType(uri);
String extension = MimeTypeMap.getSingleton().getExtensionFromMimeType(mimeType);
if (!Strings.isNullOrEmpty(extension)) {
if (!isNullOrEmpty(extension)) {
return extension;
}
}
String extension = MimeTypeMap.getFileExtensionFromUrl(uri.getPath());
if (!Strings.isNullOrEmpty(extension)) {
if (!isNullOrEmpty(extension)) {
return extension;
}
@ -150,7 +150,7 @@ public class FileHelper {
public static String getMimeType(Context context, Uri uri) {
String mimeType = context.getContentResolver().getType(uri);
if (!Strings.isNullOrEmpty(mimeType)) {
if (!isNullOrEmpty(mimeType)) {
return mimeType;
}
String extension = getExtension(context, uri);

@ -1,6 +1,5 @@
package org.tasks.filters;
import static com.google.common.base.Strings.isNullOrEmpty;
import static com.google.common.collect.Iterables.concat;
import static com.google.common.collect.Iterables.filter;
import static com.google.common.collect.Lists.newArrayList;
@ -8,6 +7,7 @@ import static com.google.common.collect.Lists.transform;
import static com.todoroo.andlib.utility.AndroidUtilities.assertNotMainThread;
import static com.todoroo.andlib.utility.DateUtilities.now;
import static java.util.Collections.emptyList;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.caldav.CaldavCalendarSettingsActivity.EXTRA_CALDAV_ACCOUNT;
import static org.tasks.ui.NavigationDrawerFragment.REQUEST_DONATE;
import static org.tasks.ui.NavigationDrawerFragment.REQUEST_PURCHASE;

@ -1,5 +1,6 @@
package org.tasks.fragments;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.files.ImageHelper.sampleBitmap;
import android.app.Activity;
@ -25,7 +26,6 @@ import butterknife.ButterKnife;
import butterknife.OnClick;
import butterknife.OnEditorAction;
import butterknife.OnTextChanged;
import com.google.common.base.Strings;
import com.todoroo.andlib.utility.AndroidUtilities;
import com.todoroo.astrid.data.Task;
import java.util.ArrayList;
@ -129,7 +129,7 @@ public class CommentBarFragment extends TaskEditControlFragment {
@OnTextChanged(R.id.commentField)
void onTextChanged(CharSequence s) {
commentButton.setVisibility(
pendingCommentPicture == null && Strings.isNullOrEmpty(s.toString())
pendingCommentPicture == null && isNullOrEmpty(s.toString())
? View.GONE
: View.VISIBLE);
}

@ -4,6 +4,7 @@ import static com.google.common.collect.Iterables.tryFind;
import static com.google.common.collect.Lists.transform;
import static com.todoroo.andlib.utility.AndroidUtilities.assertNotMainThread;
import static java.util.Arrays.asList;
import static org.tasks.Strings.isNullOrEmpty;
import android.accounts.Account;
import android.accounts.AccountManager;
@ -16,7 +17,6 @@ import android.content.Intent;
import android.os.Bundle;
import com.google.api.services.drive.DriveScopes;
import com.google.api.services.tasks.TasksScopes;
import com.google.common.base.Strings;
import io.reactivex.Single;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.schedulers.Schedulers;
@ -56,7 +56,7 @@ public class GoogleAccountManager {
}
public Account getAccount(String name) {
if (Strings.isNullOrEmpty(name)) {
if (isNullOrEmpty(name)) {
return null;
}
@ -81,7 +81,7 @@ public class GoogleAccountManager {
try {
String token =
accountManager.blockingGetAuthToken(account, "oauth2:" + scope, !alreadyNotified);
preferences.setAlreadyNotified(name, scope, Strings.isNullOrEmpty(token));
preferences.setAlreadyNotified(name, scope, isNullOrEmpty(token));
return token;
} catch (AuthenticatorException | IOException | OperationCanceledException e) {
Timber.e(e);

@ -1,6 +1,7 @@
package org.tasks.gtasks;
import static com.google.common.collect.Lists.transform;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.date.DateTimeUtils.newDateTime;
import android.content.Context;
@ -10,7 +11,6 @@ import com.google.api.client.googleapis.json.GoogleJsonResponseException;
import com.google.api.services.tasks.model.TaskList;
import com.google.api.services.tasks.model.TaskLists;
import com.google.api.services.tasks.model.Tasks;
import com.google.common.base.Strings;
import com.todoroo.andlib.utility.DateUtilities;
import com.todoroo.astrid.api.Filter;
import com.todoroo.astrid.api.GtasksFilter;
@ -58,10 +58,10 @@ public class GoogleTaskSynchronizer {
private static final Comparator<com.google.api.services.tasks.model.Task> PARENTS_FIRST =
(o1, o2) -> {
if (Strings.isNullOrEmpty(o1.getParent())) {
return Strings.isNullOrEmpty(o2.getParent()) ? 0 : -1;
if (isNullOrEmpty(o1.getParent())) {
return isNullOrEmpty(o2.getParent()) ? 0 : -1;
} else {
return Strings.isNullOrEmpty(o2.getParent()) ? 1 : 0;
return isNullOrEmpty(o2.getParent()) ? 1 : 0;
}
};
@ -187,7 +187,7 @@ public class GoogleTaskSynchronizer {
gtaskLists.addAll(items);
}
nextPageToken = remoteLists.getNextPageToken();
} while (!Strings.isNullOrEmpty(nextPageToken));
} while (!isNullOrEmpty(nextPageToken));
gtasksListService.updateLists(account, gtaskLists);
Filter defaultRemoteList = defaultFilterProvider.getDefaultRemoteList();
if (defaultRemoteList instanceof GtasksFilter) {
@ -199,7 +199,7 @@ public class GoogleTaskSynchronizer {
}
for (GoogleTaskList list :
googleTaskListDao.getByRemoteId(transform(gtaskLists, TaskList::getId))) {
if (Strings.isNullOrEmpty(list.getRemoteId())) {
if (isNullOrEmpty(list.getRemoteId())) {
tracker.reportException(new RuntimeException("Empty remote id"));
continue;
}
@ -236,7 +236,7 @@ public class GoogleTaskSynchronizer {
tasks.addAll(items);
}
nextPageToken = taskList.getNextPageToken();
} while (!Strings.isNullOrEmpty(nextPageToken));
} while (!isNullOrEmpty(nextPageToken));
return tasks;
}
@ -271,9 +271,9 @@ public class GoogleTaskSynchronizer {
? ((GtasksFilter) defaultRemoteList).getRemoteId()
: DEFAULT_LIST;
if (Strings.isNullOrEmpty(gtasksMetadata.getRemoteId())) { // Create case
if (isNullOrEmpty(gtasksMetadata.getRemoteId())) { // Create case
String selectedList = gtasksMetadata.getListId();
if (!Strings.isNullOrEmpty(selectedList)) {
if (!isNullOrEmpty(selectedList)) {
listId = selectedList;
}
newlyCreated = true;
@ -314,7 +314,7 @@ public class GoogleTaskSynchronizer {
String localParent = parent > 0 ? googleTaskDao.getRemoteId(parent) : null;
String previous =
googleTaskDao.getPrevious(
listId, Strings.isNullOrEmpty(localParent) ? 0 : parent, gtasksMetadata.getOrder());
listId, isNullOrEmpty(localParent) ? 0 : parent, gtasksMetadata.getOrder());
com.google.api.services.tasks.model.Task created;
try {
@ -342,7 +342,7 @@ public class GoogleTaskSynchronizer {
String previous =
googleTaskDao.getPrevious(
listId,
Strings.isNullOrEmpty(localParent) ? 0 : parent,
isNullOrEmpty(localParent) ? 0 : parent,
gtasksMetadata.getOrder());
com.google.api.services.tasks.model.Task result =
@ -350,7 +350,7 @@ public class GoogleTaskSynchronizer {
gtasksMetadata.setRemoteOrder(Long.parseLong(result.getPosition()));
gtasksMetadata.setRemoteParent(result.getParent());
gtasksMetadata.setParent(
Strings.isNullOrEmpty(result.getParent())
isNullOrEmpty(result.getParent())
? 0
: googleTaskDao.getTask(result.getParent()));
} catch (GoogleJsonResponseException e) {
@ -404,7 +404,7 @@ public class GoogleTaskSynchronizer {
tasks.addAll(items);
}
nextPageToken = taskList.getNextPageToken();
} while (!Strings.isNullOrEmpty(nextPageToken));
} while (!isNullOrEmpty(nextPageToken));
Collections.sort(tasks, PARENTS_FIRST);
@ -442,7 +442,7 @@ public class GoogleTaskSynchronizer {
googleTask.setRemoteOrder(Long.parseLong(gtask.getPosition()));
googleTask.setRemoteParent(gtask.getParent());
googleTask.setParent(
Strings.isNullOrEmpty(gtask.getParent())
isNullOrEmpty(gtask.getParent())
? 0
: googleTaskDao.getTask(gtask.getParent()));
googleTask.setRemoteId(gtask.getId());
@ -472,9 +472,9 @@ public class GoogleTaskSynchronizer {
}
static String getTruncatedValue(@Nullable String currentValue, @Nullable String newValue, int maxLength) {
return Strings.isNullOrEmpty(newValue)
return isNullOrEmpty(newValue)
|| newValue.length() < maxLength
|| Strings.isNullOrEmpty(currentValue)
|| isNullOrEmpty(currentValue)
|| !currentValue.startsWith(newValue)
? newValue
: currentValue;

@ -2,6 +2,7 @@ package org.tasks.jobs;
import static com.google.common.collect.Iterables.skip;
import static com.google.common.collect.Lists.newArrayList;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.Context;
import android.net.Uri;
@ -10,7 +11,6 @@ import androidx.work.Data;
import androidx.work.WorkerParameters;
import com.google.api.client.googleapis.json.GoogleJsonResponseException;
import com.google.api.services.drive.model.File;
import com.google.common.base.Strings;
import java.io.IOException;
import java.net.ConnectException;
import java.net.SocketTimeoutException;
@ -95,7 +95,7 @@ public class DriveUploader extends InjectingWorker {
private File getFolder() throws IOException {
String folderId = preferences.getStringValue(R.string.p_google_drive_backup_folder);
File file = null;
if (!Strings.isNullOrEmpty(folderId)) {
if (!isNullOrEmpty(folderId)) {
try {
file = drive.getFile(folderId);
} catch (GoogleJsonResponseException e) {

@ -1,5 +1,7 @@
package org.tasks.locale;
import static org.tasks.Strings.isNullOrEmpty;
import android.app.Dialog;
import android.content.Context;
import android.content.SharedPreferences;
@ -10,7 +12,6 @@ import android.view.View;
import android.view.ViewParent;
import androidx.annotation.Nullable;
import androidx.preference.PreferenceManager;
import com.google.common.base.Strings;
import java.io.Serializable;
import java.text.NumberFormat;
import java.text.ParseException;
@ -73,7 +74,7 @@ public class Locale implements Serializable {
}
private static java.util.Locale localeFromString(String locale) {
if (Strings.isNullOrEmpty(locale)) {
if (isNullOrEmpty(locale)) {
return null;
}

@ -1,6 +1,6 @@
package org.tasks.locale.bundle;
import static com.google.common.base.Strings.isNullOrEmpty;
import static org.tasks.Strings.isNullOrEmpty;
import android.os.Bundle;
import org.tasks.BuildConfig;

@ -1,6 +1,6 @@
package org.tasks.locale.receiver;
import static com.google.common.base.Strings.isNullOrEmpty;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.time.DateTimeUtils.currentTimeMillis;
import com.todoroo.astrid.dao.TaskDao;

@ -4,6 +4,7 @@ import static com.google.common.collect.Lists.newArrayList;
import static com.google.common.collect.Lists.transform;
import static com.todoroo.andlib.utility.AndroidUtilities.hideKeyboard;
import static org.tasks.PermissionUtil.verifyPermissions;
import static org.tasks.Strings.isNullOrEmpty;
import android.annotation.SuppressLint;
import android.content.Intent;
@ -33,7 +34,6 @@ import butterknife.OnClick;
import com.google.android.material.appbar.AppBarLayout;
import com.google.android.material.appbar.AppBarLayout.Behavior;
import com.google.android.material.appbar.CollapsingToolbarLayout;
import com.google.common.base.Strings;
import com.mapbox.android.core.location.LocationEngineCallback;
import com.mapbox.android.core.location.LocationEngineProvider;
import com.mapbox.android.core.location.LocationEngineResult;
@ -361,7 +361,7 @@ public class LocationPickerActivity extends InjectingAppCompatActivity
private void handleError(Event<String> error) {
String message = error.getIfUnhandled();
if (!Strings.isNullOrEmpty(message)) {
if (!isNullOrEmpty(message)) {
toaster.longToast(message);
}
}

@ -1,5 +1,7 @@
package org.tasks.location;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.view.LayoutInflater;
@ -11,7 +13,6 @@ import androidx.annotation.NonNull;
import androidx.recyclerview.widget.DiffUtil.ItemCallback;
import androidx.recyclerview.widget.ListAdapter;
import androidx.recyclerview.widget.RecyclerView;
import com.google.common.base.Strings;
import org.tasks.R;
import org.tasks.billing.Inventory;
import org.tasks.data.Place;
@ -112,7 +113,7 @@ public class LocationPickerAdapter extends ListAdapter<PlaceUsage, PlaceViewHold
this.icon.setImageDrawable(wrapped);
this.icon.getDrawable().setTint(color);
this.name.setText(name);
if (Strings.isNullOrEmpty(address) || address.equals(name)) {
if (isNullOrEmpty(address) || address.equals(name)) {
this.address.setVisibility(View.GONE);
} else {
this.address.setText(address);

@ -1,5 +1,7 @@
package org.tasks.location;
import static org.tasks.Strings.isNullOrEmpty;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -14,7 +16,6 @@ import androidx.recyclerview.widget.DiffUtil.ItemCallback;
import androidx.recyclerview.widget.ListUpdateCallback;
import androidx.recyclerview.widget.RecyclerView;
import androidx.recyclerview.widget.RecyclerView.ViewHolder;
import com.google.common.base.Strings;
import java.util.List;
import org.tasks.R;
@ -117,7 +118,7 @@ class LocationSearchAdapter extends RecyclerView.Adapter<ViewHolder>
CharSequence address = prediction.getAddress();
this.name.setText(name);
if (address == null
|| Strings.isNullOrEmpty(address.toString())
|| isNullOrEmpty(address.toString())
|| address.toString().equals(name.toString())) {
this.address.setVisibility(View.GONE);
} else {

@ -1,6 +1,7 @@
package org.tasks.location;
import static com.todoroo.andlib.utility.AndroidUtilities.assertMainThread;
import static org.tasks.Strings.isNullOrEmpty;
import android.os.Bundle;
import androidx.annotation.Nullable;
@ -8,7 +9,6 @@ import androidx.lifecycle.LifecycleOwner;
import androidx.lifecycle.MutableLiveData;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModel;
import com.google.common.base.Strings;
import java.util.Collections;
import java.util.List;
import org.tasks.Event;
@ -47,7 +47,7 @@ public class PlaceSearchViewModel extends ViewModel {
public void query(String query, @Nullable MapPosition bias) {
assertMainThread();
if (Strings.isNullOrEmpty(query)) {
if (isNullOrEmpty(query)) {
searchResults.postValue(Collections.emptyList());
} else {
searchProvider.search(query, bias, searchResults::setValue, this::setError);

@ -14,6 +14,7 @@ import static com.todoroo.astrid.reminders.ReminderService.TYPE_GEOFENCE_ENTER;
import static com.todoroo.astrid.reminders.ReminderService.TYPE_GEOFENCE_EXIT;
import static java.util.Collections.emptyList;
import static java.util.Collections.singletonList;
import static org.tasks.Strings.isNullOrEmpty;
import android.annotation.SuppressLint;
import android.app.PendingIntent;
@ -23,7 +24,6 @@ import android.text.TextUtils;
import androidx.core.app.NotificationCompat;
import androidx.core.app.NotificationManagerCompat;
import com.google.common.base.Joiner;
import com.google.common.base.Strings;
import com.todoroo.andlib.sql.Join;
import com.todoroo.andlib.sql.QueryTemplate;
import com.todoroo.andlib.utility.DateUtilities;
@ -392,7 +392,7 @@ public class NotificationManager {
: R.string.location_departed,
place.getDisplayName()));
}
} else if (!Strings.isNullOrEmpty(taskDescription)) {
} else if (!isNullOrEmpty(taskDescription)) {
builder
.setContentText(taskDescription)
.setStyle(new NotificationCompat.BigTextStyle().bigText(taskDescription));

@ -1,15 +1,14 @@
package org.tasks.preferences;
import static com.google.common.base.Strings.isNullOrEmpty;
import static com.todoroo.astrid.core.BuiltInFilterExposer.getMyTasksFilter;
import static com.todoroo.astrid.core.BuiltInFilterExposer.getRecentlyModifiedFilter;
import static com.todoroo.astrid.core.BuiltInFilterExposer.getTodayFilter;
import static com.todoroo.astrid.core.BuiltInFilterExposer.isRecentlyModifiedFilter;
import static com.todoroo.astrid.core.BuiltInFilterExposer.isTodayFilter;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.Context;
import android.content.res.Resources;
import com.google.common.base.Strings;
import com.todoroo.astrid.api.CaldavFilter;
import com.todoroo.astrid.api.CustomFilter;
import com.todoroo.astrid.api.Filter;
@ -153,7 +152,7 @@ public class DefaultFilterProvider {
private void setFilterPreference(Filter filter, int prefId) {
String filterPreferenceValue = getFilterPreferenceValue(filter);
if (!Strings.isNullOrEmpty(filterPreferenceValue)) {
if (!isNullOrEmpty(filterPreferenceValue)) {
preferences.setString(prefId, filterPreferenceValue);
}
}

@ -6,6 +6,7 @@ import static com.google.common.collect.Iterables.filter;
import static com.google.common.collect.Iterables.transform;
import static com.google.common.collect.Sets.newHashSet;
import static java.util.Collections.emptySet;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.ContentResolver;
import android.content.Context;
@ -19,7 +20,6 @@ import android.text.TextUtils;
import androidx.annotation.Nullable;
import androidx.core.app.NotificationCompat;
import androidx.documentfile.provider.DocumentFile;
import com.google.common.base.Strings;
import com.todoroo.astrid.activity.BeastModePreferences;
import com.todoroo.astrid.api.AstridApiConstants;
import com.todoroo.astrid.core.SortHelper;
@ -264,7 +264,7 @@ public class Preferences {
private Uri getUri(int key) {
String uri = getStringValue(key);
return Strings.isNullOrEmpty(uri) ? null : Uri.parse(uri);
return isNullOrEmpty(uri) ? null : Uri.parse(uri);
}
public void setUri(int key, java.net.URI uri) {

@ -10,11 +10,11 @@ import android.os.Bundle
import android.os.Handler
import androidx.annotation.StringRes
import androidx.preference.Preference
import com.google.common.base.Strings
import com.todoroo.astrid.api.Filter
import org.tasks.BuildConfig
import org.tasks.LocalBroadcastManager
import org.tasks.R
import org.tasks.Strings.isNullOrEmpty
import org.tasks.activities.FilterSelectionActivity
import org.tasks.billing.Inventory
import org.tasks.billing.PurchaseActivity
@ -316,7 +316,7 @@ class LookAndFeel : InjectingPreferenceFragment() {
val newValue: Locale =
data!!.getSerializableExtra(LocalePickerDialog.EXTRA_LOCALE) as Locale
val override: String? = newValue.languageOverride
if (Strings.isNullOrEmpty(override)) {
if (isNullOrEmpty(override)) {
preferences.remove(R.string.p_language)
} else {
preferences.setString(R.string.p_language, override)

@ -6,7 +6,6 @@ import android.os.Bundle
import androidx.preference.Preference
import androidx.preference.PreferenceCategory
import androidx.preference.SwitchPreferenceCompat
import com.google.common.base.Strings
import com.todoroo.andlib.utility.DateUtilities
import com.todoroo.astrid.api.CaldavFilter
import com.todoroo.astrid.api.Filter
@ -14,6 +13,7 @@ import com.todoroo.astrid.api.GtasksFilter
import com.todoroo.astrid.gtasks.auth.GtasksLoginActivity
import com.todoroo.astrid.service.TaskDeleter
import org.tasks.R
import org.tasks.Strings.isNullOrEmpty
import org.tasks.activities.RemoteListPicker
import org.tasks.caldav.CaldavAccountSettingsActivity
import org.tasks.data.CaldavAccount
@ -135,7 +135,7 @@ class Synchronization : InjectingPreferenceFragment() {
val preference = Preference(context)
preference.title = account
val error = googleTaskAccount.error
if (Strings.isNullOrEmpty(error)) {
if (isNullOrEmpty(error)) {
preference.setSummary(R.string.gtasks_GPr_header)
} else {
preference.summary = error
@ -173,7 +173,7 @@ class Synchronization : InjectingPreferenceFragment() {
val preference = Preference(context)
preference.title = account.name
val error = account.error
if (Strings.isNullOrEmpty(error)) {
if (isNullOrEmpty(error)) {
preference.setSummary(
if (account.isCaldavAccount) R.string.caldav else R.string.etesync
)

@ -7,6 +7,7 @@ import static com.google.ical.values.Frequency.MINUTELY;
import static com.google.ical.values.Frequency.MONTHLY;
import static com.google.ical.values.Frequency.WEEKLY;
import static com.google.ical.values.Frequency.YEARLY;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.repeats.CustomRecurrenceDialog.newCustomRecurrenceDialog;
import static org.tasks.time.DateTimeUtils.currentTimeMillis;
@ -15,7 +16,6 @@ import android.content.Context;
import android.os.Bundle;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.google.common.base.Strings;
import com.google.ical.values.Frequency;
import com.google.ical.values.RRule;
import com.todoroo.astrid.repeats.RepeatControlSet;
@ -60,7 +60,7 @@ public class BasicRecurrenceDialog extends InjectingDialogFragment {
String rule = arguments.getString(EXTRA_RRULE);
RRule parsed = null;
try {
if (!Strings.isNullOrEmpty(rule)) {
if (!isNullOrEmpty(rule)) {
parsed = new RRule(rule);
}
} catch (Exception e) {

@ -8,6 +8,7 @@ import static com.google.ical.values.Frequency.MONTHLY;
import static com.google.ical.values.Frequency.WEEKLY;
import static com.google.ical.values.Frequency.YEARLY;
import static java.util.Arrays.asList;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.dialogs.MyDatePickerDialog.newDatePicker;
import static org.tasks.time.DateTimeUtils.currentTimeMillis;
@ -42,7 +43,6 @@ import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnItemSelected;
import butterknife.OnTextChanged;
import com.google.common.base.Strings;
import com.google.ical.values.Frequency;
import com.google.ical.values.RRule;
import com.google.ical.values.Weekday;
@ -168,7 +168,7 @@ public class CustomRecurrenceDialog extends InjectingDialogFragment {
? arguments.getString(EXTRA_RRULE)
: savedInstanceState.getString(EXTRA_RRULE);
try {
if (!Strings.isNullOrEmpty(rule)) {
if (!isNullOrEmpty(rule)) {
rrule = new RRule(rule);
}
} catch (Exception e) {

@ -1,12 +1,11 @@
package org.tasks.security;
import static org.tasks.Strings.isNullOrEmpty;
import android.annotation.SuppressLint;
import android.os.Build.VERSION_CODES;
import android.security.keystore.KeyGenParameterSpec;
import android.security.keystore.KeyProperties;
import android.util.Base64;
import androidx.annotation.RequiresApi;
import com.google.common.base.Strings;
import java.io.IOException;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
@ -70,7 +69,7 @@ public class KeyStoreEncryption {
}
public String decrypt(String text) {
if (Strings.isNullOrEmpty(text)) {
if (isNullOrEmpty(text)) {
return null;
}

@ -1,5 +1,7 @@
package org.tasks.tags;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.Intent;
import android.os.Bundle;
import android.widget.EditText;
@ -10,7 +12,6 @@ import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnTextChanged;
import com.google.common.base.Strings;
import java.util.ArrayList;
import javax.inject.Inject;
import org.tasks.R;
@ -98,7 +99,7 @@ public class TagPickerActivity extends ThemedInjectingAppCompatActivity {
@Override
public void onBackPressed() {
if (Strings.isNullOrEmpty(viewModel.getText())) {
if (isNullOrEmpty(viewModel.getText())) {
Intent data = new Intent();
data.putExtra(EXTRA_TASKS, taskIds);
data.putParcelableArrayListExtra(EXTRA_PARTIALLY_SELECTED, viewModel.getPartiallySelected());

@ -2,13 +2,13 @@ package org.tasks.tags;
import static com.google.common.collect.Iterables.any;
import static com.google.common.collect.Lists.newArrayList;
import static org.tasks.Strings.isNullOrEmpty;
import androidx.annotation.Nullable;
import androidx.lifecycle.LifecycleOwner;
import androidx.lifecycle.MutableLiveData;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModel;
import com.google.common.base.Strings;
import io.reactivex.Single;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.CompositeDisposable;
@ -69,7 +69,7 @@ public class TagPickerViewModel extends ViewModel {
}
private void onUpdate(List<TagData> results) {
if (!Strings.isNullOrEmpty(text) && !any(results, t -> text.equalsIgnoreCase(t.getName()))) {
if (!isNullOrEmpty(text) && !any(results, t -> text.equalsIgnoreCase(t.getName()))) {
results.add(0, new TagData(text));
}
tags.setValue(results);

@ -1,7 +1,7 @@
package org.tasks.ui;
import static com.google.common.base.Strings.isNullOrEmpty;
import static org.tasks.PermissionUtil.verifyPermissions;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.calendars.CalendarPicker.newCalendarPicker;
import android.app.Activity;
@ -22,7 +22,6 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import butterknife.BindView;
import butterknife.OnClick;
import com.google.common.base.Strings;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.gcal.GCalHelper;
import javax.inject.Inject;
@ -84,7 +83,7 @@ public class CalendarControlSet extends TaskEditControlFragment {
calendarId = savedInstanceState.getString(EXTRA_ID);
} else if (task.isNew() && canAccessCalendars) {
calendarId = preferences.getDefaultCalendar();
if (!Strings.isNullOrEmpty(calendarId)) {
if (!isNullOrEmpty(calendarId)) {
try {
AndroidCalendar defaultCalendar = calendarProvider.getCalendar(calendarId);
if (defaultCalendar == null) {
@ -219,7 +218,7 @@ public class CalendarControlSet extends TaskEditControlFragment {
@Override
protected void onRowClick() {
if (Strings.isNullOrEmpty(eventUri)) {
if (isNullOrEmpty(eventUri)) {
newCalendarPicker(this, REQUEST_CODE_PICK_CALENDAR, getCalendarName())
.show(getParentFragmentManager(), FRAG_TAG_CALENDAR_PICKER);
} else {
@ -302,7 +301,7 @@ public class CalendarControlSet extends TaskEditControlFragment {
}
private void refreshDisplayView() {
if (!Strings.isNullOrEmpty(eventUri)) {
if (!isNullOrEmpty(eventUri)) {
calendar.setText(R.string.gcal_TEA_showCalendar_label);
cancelButton.setVisibility(View.VISIBLE);
} else if (calendarId != null) {

@ -5,6 +5,7 @@ import static com.google.common.collect.Collections2.transform;
import static com.google.common.collect.Iterables.removeIf;
import static com.google.common.collect.Sets.newHashSet;
import static com.todoroo.andlib.utility.AndroidUtilities.assertMainThread;
import static org.tasks.Strings.isNullOrEmpty;
import android.app.Activity;
import android.content.res.ColorStateList;
@ -14,7 +15,6 @@ import androidx.annotation.Nullable;
import androidx.core.content.res.ResourcesCompat;
import com.google.android.material.chip.Chip;
import com.google.common.base.Predicates;
import com.google.common.base.Strings;
import com.google.common.collect.Ordering;
import com.todoroo.astrid.api.CaldavFilter;
import com.todoroo.astrid.api.Filter;
@ -117,18 +117,18 @@ public class ChipProvider {
chips.add(newChip(new PlaceFilter(location.getPlace()), R.drawable.ic_outline_place_24px));
}
if (!isSubtask) {
if (!Strings.isNullOrEmpty(task.getGoogleTaskList()) && !(filter instanceof GtasksFilter)) {
if (!isNullOrEmpty(task.getGoogleTaskList()) && !(filter instanceof GtasksFilter)) {
chips.add(
newChip(
lists.getGoogleTaskList(task.getGoogleTaskList()),
R.drawable.ic_outline_cloud_24px));
} else if (!Strings.isNullOrEmpty(task.getCaldav()) && !(filter instanceof CaldavFilter)) {
} else if (!isNullOrEmpty(task.getCaldav()) && !(filter instanceof CaldavFilter)) {
chips.add(
newChip(lists.getCaldavList(task.getCaldav()), R.drawable.ic_outline_cloud_24px));
}
}
String tagString = task.getTagsString();
if (!Strings.isNullOrEmpty(tagString)) {
if (!isNullOrEmpty(tagString)) {
Set<String> tags = newHashSet(tagString.split(","));
if (filter instanceof TagFilter) {
tags.remove(((TagFilter) filter).getUuid());

@ -1,6 +1,6 @@
package org.tasks.ui;
import static com.google.common.base.Strings.isNullOrEmpty;
import static org.tasks.Strings.isNullOrEmpty;
import android.os.Bundle;
import android.view.LayoutInflater;

@ -4,6 +4,7 @@ import static com.google.common.collect.Lists.newArrayList;
import static com.google.common.collect.Lists.transform;
import static com.todoroo.astrid.data.SyncFlags.FORCE_CALDAV_SYNC;
import static org.tasks.PermissionUtil.verifyPermissions;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.dialogs.GeofenceDialog.newGeofenceDialog;
import static org.tasks.location.LocationPickerActivity.EXTRA_PLACE;
@ -25,7 +26,6 @@ import androidx.annotation.Nullable;
import androidx.core.util.Pair;
import butterknife.BindView;
import butterknife.OnClick;
import com.google.common.base.Strings;
import com.todoroo.andlib.utility.DateUtilities;
import com.todoroo.astrid.data.Task;
import java.util.ArrayList;
@ -130,7 +130,7 @@ public class LocationControlSet extends TaskEditControlFragment {
: R.drawable.ic_outline_notifications_off_24px);
String name = this.location.getDisplayName();
String address = this.location.getDisplayAddress();
if (!Strings.isNullOrEmpty(address) && !address.equals(name)) {
if (!isNullOrEmpty(address) && !address.equals(name)) {
locationAddress.setText(address);
locationAddress.setVisibility(View.VISIBLE);
} else {
@ -156,10 +156,10 @@ public class LocationControlSet extends TaskEditControlFragment {
} else {
List<Pair<Integer, Runnable>> options = new ArrayList<>();
options.add(Pair.create(R.string.open_map, () -> location.open(getActivity())));
if (!Strings.isNullOrEmpty(location.getPhone())) {
if (!isNullOrEmpty(location.getPhone())) {
options.add(Pair.create(R.string.action_call, this::call));
}
if (!Strings.isNullOrEmpty(location.getUrl())) {
if (!isNullOrEmpty(location.getUrl())) {
options.add(Pair.create(R.string.visit_website, this::openWebsite));
}
options.add(Pair.create(R.string.choose_new_location, this::chooseLocation));

@ -1,6 +1,7 @@
package org.tasks.ui;
import static com.todoroo.andlib.utility.DateUtilities.now;
import static org.tasks.Strings.isNullOrEmpty;
import android.app.Activity;
import android.content.BroadcastReceiver;
@ -23,7 +24,6 @@ import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.OnClick;
import com.google.common.base.Strings;
import com.todoroo.andlib.sql.Criterion;
import com.todoroo.andlib.sql.Join;
import com.todoroo.andlib.sql.QueryTemplate;
@ -158,7 +158,7 @@ public class SubtaskControlSet extends TaskEditControlFragment implements Callba
@Override
public void apply(Task task) {
for (Task subtask: getNewSubtasks()) {
if (Strings.isNullOrEmpty(subtask.getTitle())) {
if (isNullOrEmpty(subtask.getTitle())) {
continue;
}
subtask.setCompletionDate(task.getCompletionDate());

@ -1,11 +1,11 @@
package org.tasks.ui;
import static android.widget.Toast.LENGTH_LONG;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.Context;
import android.widget.Toast;
import androidx.annotation.StringRes;
import com.google.common.base.Strings;
import javax.inject.Inject;
import org.tasks.injection.ForActivity;
import org.tasks.locale.Locale;
@ -30,7 +30,7 @@ public class Toaster {
}
public void longToast(String text) {
if (!Strings.isNullOrEmpty(text)) {
if (!isNullOrEmpty(text)) {
Toast.makeText(context, text, LENGTH_LONG).show();
}
}

@ -1,10 +1,11 @@
package org.tasks.voice;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.widget.Toast;
import com.google.common.base.Strings;
import com.todoroo.astrid.service.TaskCreator;
import javax.inject.Inject;
import org.tasks.R;
@ -25,7 +26,7 @@ public class VoiceCommandActivity extends InjectingAppCompatActivity {
if ("com.google.android.gm.action.AUTO_SEND".equals(intent.getAction())) {
final String text = intent.getStringExtra(Intent.EXTRA_TEXT);
if (!Strings.isNullOrEmpty(text)) {
if (!isNullOrEmpty(text)) {
taskCreator.basicQuickAddTask(text);
Toast.makeText(context, getString(R.string.voice_command_added_task), Toast.LENGTH_LONG)
.show();

@ -1,5 +1,6 @@
package org.tasks.widget;
import static org.tasks.Strings.isNullOrEmpty;
import static org.tasks.themes.ThemeColor.getLauncherColor;
import android.app.Activity;
@ -16,7 +17,6 @@ import butterknife.OnClick;
import butterknife.OnFocusChange;
import com.google.android.material.textfield.TextInputEditText;
import com.google.android.material.textfield.TextInputLayout;
import com.google.common.base.Strings;
import com.todoroo.astrid.api.Filter;
import javax.inject.Inject;
import org.tasks.R;
@ -130,7 +130,7 @@ public class ShortcutConfigActivity extends ThemedInjectingAppCompatActivity
}
private void updateFilterAndTheme() {
if (Strings.isNullOrEmpty(getShortcutName()) && selectedFilter != null) {
if (isNullOrEmpty(getShortcutName()) && selectedFilter != null) {
shortcutName.setText(selectedFilter.listingTitle);
}
if (selectedFilter != null) {

@ -1,9 +1,10 @@
package org.tasks.widget;
import static org.tasks.Strings.isNullOrEmpty;
import android.content.Intent;
import android.os.Bundle;
import androidx.fragment.app.FragmentManager;
import com.google.common.base.Strings;
import com.todoroo.astrid.dao.TaskDao;
import com.todoroo.astrid.data.Task;
import com.todoroo.astrid.service.TaskCompleter;
@ -41,7 +42,7 @@ public class WidgetClickActivity extends InjectingAppCompatActivity
String action = intent.getAction();
if (Strings.isNullOrEmpty(action)) {
if (isNullOrEmpty(action)) {
return;
}

Loading…
Cancel
Save