Skip to content

Commit 04e8e03

Browse files
committed
Fix compile errors
1 parent bd19013 commit 04e8e03

File tree

9 files changed

+69
-66
lines changed

9 files changed

+69
-66
lines changed

app/src/main/java/org/schabi/newpipe/error/ErrorInfo.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ import kotlinx.parcelize.IgnoredOnParcel
77
import kotlinx.parcelize.Parcelize
88
import org.schabi.newpipe.R
99
import org.schabi.newpipe.extractor.Info
10-
import org.schabi.newpipe.extractor.NewPipe
1110
import org.schabi.newpipe.extractor.exceptions.AccountTerminatedException
1211
import org.schabi.newpipe.extractor.exceptions.ContentNotAvailableException
1312
import org.schabi.newpipe.extractor.exceptions.ContentNotSupportedException
1413
import org.schabi.newpipe.extractor.exceptions.ExtractionException
1514
import org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor.DeobfuscateException
1615
import org.schabi.newpipe.ktx.isNetworkRelated
16+
import org.schabi.newpipe.util.ServiceHelper
1717
import java.io.PrintWriter
1818
import java.io.StringWriter
1919

@@ -65,15 +65,15 @@ class ErrorInfo(
6565
constructor(throwable: Throwable, userAction: UserAction, request: String) :
6666
this(throwable, userAction, SERVICE_NONE, request)
6767
constructor(throwable: Throwable, userAction: UserAction, request: String, serviceId: Int) :
68-
this(throwable, userAction, NewPipe.getNameOfService(serviceId), request)
68+
this(throwable, userAction, ServiceHelper.getNameOfServiceById(serviceId), request)
6969
constructor(throwable: Throwable, userAction: UserAction, request: String, info: Info?) :
7070
this(throwable, userAction, getInfoServiceName(info), request)
7171

7272
// constructors with list of throwables
7373
constructor(throwable: List<Throwable>, userAction: UserAction, request: String) :
7474
this(throwable, userAction, SERVICE_NONE, request)
7575
constructor(throwable: List<Throwable>, userAction: UserAction, request: String, serviceId: Int) :
76-
this(throwable, userAction, NewPipe.getNameOfService(serviceId), request)
76+
this(throwable, userAction, ServiceHelper.getNameOfServiceById(serviceId), request)
7777
constructor(throwable: List<Throwable>, userAction: UserAction, request: String, info: Info?) :
7878
this(throwable, userAction, getInfoServiceName(info), request)
7979

@@ -95,7 +95,7 @@ class ErrorInfo(
9595
Array(throwable.size) { i -> getStackTrace(throwable[i]) }
9696

9797
private fun getInfoServiceName(info: Info?) =
98-
if (info == null) SERVICE_NONE else NewPipe.getNameOfService(info.serviceId)
98+
if (info == null) SERVICE_NONE else ServiceHelper.getNameOfServiceById(info.serviceId)
9999

100100
@StringRes
101101
private fun getMessageStringId(

app/src/main/java/org/schabi/newpipe/error/ErrorPanelHelper.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
1515
import io.reactivex.rxjava3.disposables.Disposable
1616
import org.schabi.newpipe.MainActivity
1717
import org.schabi.newpipe.R
18-
import org.schabi.newpipe.extractor.NewPipe
1918
import org.schabi.newpipe.extractor.exceptions.AccountTerminatedException
2019
import org.schabi.newpipe.extractor.exceptions.AgeRestrictedContentException
2120
import org.schabi.newpipe.extractor.exceptions.ContentNotAvailableException
@@ -106,7 +105,7 @@ class ErrorPanelHelper(
106105
if (!isNullOrEmpty((errorInfo.throwable as AccountTerminatedException).message)) {
107106
errorServiceInfoTextView.text = context.resources.getString(
108107
R.string.service_provides_reason,
109-
NewPipe.getNameOfService(ServiceHelper.getSelectedServiceId(context))
108+
ServiceHelper.getSelectedService(context)?.serviceInfo?.name ?: "<unknown>"
110109
)
111110
errorServiceInfoTextView.isVisible = true
112111

app/src/main/java/org/schabi/newpipe/local/holder/LocalPlaylistStreamItemHolder.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@
1111
import org.schabi.newpipe.R;
1212
import org.schabi.newpipe.database.LocalItem;
1313
import org.schabi.newpipe.database.playlist.PlaylistStreamEntry;
14-
import org.schabi.newpipe.extractor.NewPipe;
1514
import org.schabi.newpipe.ktx.ViewUtils;
1615
import org.schabi.newpipe.local.LocalItemBuilder;
1716
import org.schabi.newpipe.local.history.HistoryRecordManager;
18-
import org.schabi.newpipe.util.PicassoHelper;
1917
import org.schabi.newpipe.util.Localization;
18+
import org.schabi.newpipe.util.PicassoHelper;
19+
import org.schabi.newpipe.util.ServiceHelper;
2020
import org.schabi.newpipe.views.AnimatedProgressBar;
2121

2222
import java.time.format.DateTimeFormatter;
@@ -59,7 +59,7 @@ public void updateFromItem(final LocalItem localItem,
5959
itemVideoTitleView.setText(item.getStreamEntity().getTitle());
6060
itemAdditionalDetailsView.setText(Localization
6161
.concatenateStrings(item.getStreamEntity().getUploader(),
62-
NewPipe.getNameOfService(item.getStreamEntity().getServiceId())));
62+
ServiceHelper.getNameOfServiceById(item.getStreamEntity().getServiceId())));
6363

6464
if (item.getStreamEntity().getDuration() > 0) {
6565
itemDurationView.setText(Localization

app/src/main/java/org/schabi/newpipe/local/holder/LocalStatisticStreamItemHolder.java

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@
1111
import org.schabi.newpipe.R;
1212
import org.schabi.newpipe.database.LocalItem;
1313
import org.schabi.newpipe.database.stream.StreamStatisticsEntry;
14-
import org.schabi.newpipe.extractor.NewPipe;
1514
import org.schabi.newpipe.ktx.ViewUtils;
1615
import org.schabi.newpipe.local.LocalItemBuilder;
1716
import org.schabi.newpipe.local.history.HistoryRecordManager;
18-
import org.schabi.newpipe.util.PicassoHelper;
1917
import org.schabi.newpipe.util.Localization;
18+
import org.schabi.newpipe.util.PicassoHelper;
19+
import org.schabi.newpipe.util.ServiceHelper;
2020
import org.schabi.newpipe.views.AnimatedProgressBar;
2121

2222
import java.time.format.DateTimeFormatter;
@@ -70,11 +70,12 @@ public LocalStatisticStreamItemHolder(final LocalItemBuilder itemBuilder,
7070

7171
private String getStreamInfoDetailLine(final StreamStatisticsEntry entry,
7272
final DateTimeFormatter dateTimeFormatter) {
73-
final String watchCount = Localization
74-
.shortViewCount(itemBuilder.getContext(), entry.getWatchCount());
75-
final String uploadDate = dateTimeFormatter.format(entry.getLatestAccessDate());
76-
final String serviceName = NewPipe.getNameOfService(entry.getStreamEntity().getServiceId());
77-
return Localization.concatenateStrings(watchCount, uploadDate, serviceName);
73+
return Localization.concatenateStrings(
74+
// watchCount
75+
Localization.shortViewCount(itemBuilder.getContext(), entry.getWatchCount()),
76+
dateTimeFormatter.format(entry.getLatestAccessDate()),
77+
// serviceName
78+
ServiceHelper.getNameOfServiceById(entry.getStreamEntity().getServiceId()));
7879
}
7980

8081
@Override

app/src/main/java/org/schabi/newpipe/local/holder/RemotePlaylistItemHolder.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,11 @@
55

66
import org.schabi.newpipe.database.LocalItem;
77
import org.schabi.newpipe.database.playlist.model.PlaylistRemoteEntity;
8-
import org.schabi.newpipe.extractor.NewPipe;
98
import org.schabi.newpipe.local.LocalItemBuilder;
109
import org.schabi.newpipe.local.history.HistoryRecordManager;
11-
import org.schabi.newpipe.util.PicassoHelper;
1210
import org.schabi.newpipe.util.Localization;
11+
import org.schabi.newpipe.util.PicassoHelper;
12+
import org.schabi.newpipe.util.ServiceHelper;
1313

1414
import java.time.format.DateTimeFormatter;
1515

@@ -39,9 +39,9 @@ public void updateFromItem(final LocalItem localItem,
3939
// Here is where the uploader name is set in the bookmarked playlists library
4040
if (!TextUtils.isEmpty(item.getUploader())) {
4141
itemUploaderView.setText(Localization.concatenateStrings(item.getUploader(),
42-
NewPipe.getNameOfService(item.getServiceId())));
42+
ServiceHelper.getNameOfServiceById(item.getServiceId())));
4343
} else {
44-
itemUploaderView.setText(NewPipe.getNameOfService(item.getServiceId()));
44+
itemUploaderView.setText(ServiceHelper.getNameOfServiceById(item.getServiceId()));
4545
}
4646

4747
PicassoHelper.loadPlaylistThumbnail(item.getThumbnailUrl()).into(itemThumbnailView);

app/src/main/java/org/schabi/newpipe/local/subscription/SubscriptionsImportFragment.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
package org.schabi.newpipe.local.subscription;
22

3+
import static org.schabi.newpipe.extractor.subscription.SubscriptionExtractor.ContentSource.CHANNEL_URL;
4+
import static org.schabi.newpipe.local.subscription.services.SubscriptionsImportService.CHANNEL_URL_MODE;
5+
import static org.schabi.newpipe.local.subscription.services.SubscriptionsImportService.INPUT_STREAM_MODE;
6+
import static org.schabi.newpipe.local.subscription.services.SubscriptionsImportService.KEY_MODE;
7+
import static org.schabi.newpipe.local.subscription.services.SubscriptionsImportService.KEY_VALUE;
8+
39
import android.app.Activity;
410
import android.content.Intent;
511
import android.os.Bundle;
@@ -40,12 +46,6 @@
4046

4147
import icepick.State;
4248

43-
import static org.schabi.newpipe.extractor.subscription.SubscriptionExtractor.ContentSource.CHANNEL_URL;
44-
import static org.schabi.newpipe.local.subscription.services.SubscriptionsImportService.CHANNEL_URL_MODE;
45-
import static org.schabi.newpipe.local.subscription.services.SubscriptionsImportService.INPUT_STREAM_MODE;
46-
import static org.schabi.newpipe.local.subscription.services.SubscriptionsImportService.KEY_MODE;
47-
import static org.schabi.newpipe.local.subscription.services.SubscriptionsImportService.KEY_VALUE;
48-
4949
public class SubscriptionsImportFragment extends BaseFragment {
5050
@State
5151
int currentServiceId = Constants.NO_SERVICE_ID;
@@ -89,7 +89,7 @@ public void onCreate(final Bundle savedInstanceState) {
8989
if (supportedSources.isEmpty() && currentServiceId != Constants.NO_SERVICE_ID) {
9090
ErrorUtil.showSnackbar(activity,
9191
new ErrorInfo(new String[]{}, UserAction.SUBSCRIPTION_IMPORT_EXPORT,
92-
NewPipe.getNameOfService(currentServiceId),
92+
ServiceHelper.getNameOfServiceById(currentServiceId),
9393
"Service does not support importing subscriptions",
9494
R.string.general_error));
9595
activity.finish();

app/src/main/java/org/schabi/newpipe/player/playqueue/PlayQueueItemBuilder.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@
55
import android.view.MotionEvent;
66
import android.view.View;
77

8-
import org.schabi.newpipe.extractor.NewPipe;
98
import org.schabi.newpipe.util.Localization;
109
import org.schabi.newpipe.util.PicassoHelper;
10+
import org.schabi.newpipe.util.ServiceHelper;
1111

1212
public class PlayQueueItemBuilder {
1313
private static final String TAG = PlayQueueItemBuilder.class.toString();
@@ -25,7 +25,7 @@ public void buildStreamInfoItem(final PlayQueueItemHolder holder, final PlayQueu
2525
holder.itemVideoTitleView.setText(item.getTitle());
2626
}
2727
holder.itemAdditionalDetailsView.setText(Localization.concatenateStrings(item.getUploader(),
28-
NewPipe.getNameOfService(item.getServiceId())));
28+
ServiceHelper.getNameOfServiceById(item.getServiceId())));
2929

3030
if (item.getDuration() > 0) {
3131
holder.itemDurationView.setText(Localization.getDurationString(item.getDuration()));

app/src/main/java/org/schabi/newpipe/settings/tabs/ChooseTabsFragment.java

Lines changed: 17 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
package org.schabi.newpipe.settings.tabs;
22

3+
import static org.schabi.newpipe.settings.tabs.Tab.typeFrom;
4+
import static org.schabi.newpipe.util.ServiceHelper.getNameOfServiceById;
5+
36
import android.annotation.SuppressLint;
47
import android.app.Dialog;
58
import android.content.Context;
@@ -28,7 +31,6 @@
2831
import org.schabi.newpipe.error.ErrorInfo;
2932
import org.schabi.newpipe.error.ErrorUtil;
3033
import org.schabi.newpipe.error.UserAction;
31-
import org.schabi.newpipe.extractor.NewPipe;
3234
import org.schabi.newpipe.settings.SelectChannelFragment;
3335
import org.schabi.newpipe.settings.SelectKioskFragment;
3436
import org.schabi.newpipe.settings.SelectPlaylistFragment;
@@ -39,8 +41,6 @@
3941
import java.util.Collections;
4042
import java.util.List;
4143

42-
import static org.schabi.newpipe.settings.tabs.Tab.typeFrom;
43-
4444
public class ChooseTabsFragment extends Fragment {
4545
private TabsManager tabsManager;
4646

@@ -374,36 +374,31 @@ void bind(final int position, final TabViewHolder holder) {
374374
return;
375375
}
376376

377-
final String tabName;
377+
tabNameView.setText(getTabName(type, tab));
378+
tabIconView.setImageResource(tab.getTabIconRes(requireContext()));
379+
}
380+
381+
private String getTabName(@NonNull final Tab.Type type, @NonNull final Tab tab) {
378382
switch (type) {
379383
case BLANK:
380-
tabName = getString(R.string.blank_page_summary);
381-
break;
384+
return getString(R.string.blank_page_summary);
382385
case DEFAULT_KIOSK:
383-
tabName = getString(R.string.default_kiosk_page_summary);
384-
break;
386+
return getString(R.string.default_kiosk_page_summary);
385387
case KIOSK:
386-
tabName = NewPipe.getNameOfService(((Tab.KioskTab) tab)
387-
.getKioskServiceId()) + "/" + tab.getTabName(requireContext());
388-
break;
388+
return getNameOfServiceById(((Tab.KioskTab) tab).getKioskServiceId())
389+
+ "/" + tab.getTabName(requireContext());
389390
case CHANNEL:
390-
tabName = NewPipe.getNameOfService(((Tab.ChannelTab) tab)
391-
.getChannelServiceId()) + "/" + tab.getTabName(requireContext());
392-
break;
391+
return getNameOfServiceById(((Tab.ChannelTab) tab).getChannelServiceId())
392+
+ "/" + tab.getTabName(requireContext());
393393
case PLAYLIST:
394394
final int serviceId = ((Tab.PlaylistTab) tab).getPlaylistServiceId();
395395
final String serviceName = serviceId == -1
396396
? getString(R.string.local)
397-
: NewPipe.getNameOfService(serviceId);
398-
tabName = serviceName + "/" + tab.getTabName(requireContext());
399-
break;
397+
: getNameOfServiceById(serviceId);
398+
return serviceName + "/" + tab.getTabName(requireContext());
400399
default:
401-
tabName = tab.getTabName(requireContext());
402-
break;
400+
return tab.getTabName(requireContext());
403401
}
404-
405-
tabNameView.setText(tabName);
406-
tabIconView.setImageResource(tab.getTabIconRes(requireContext()));
407402
}
408403

409404
@SuppressLint("ClickableViewAccessibility")

app/src/main/java/org/schabi/newpipe/util/ServiceHelper.java

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
package org.schabi.newpipe.util;
22

3+
import static org.schabi.newpipe.extractor.ServiceList.SoundCloud;
4+
35
import android.content.Context;
46
import android.content.SharedPreferences;
57

68
import androidx.annotation.DrawableRes;
9+
import androidx.annotation.Nullable;
710
import androidx.annotation.StringRes;
811
import androidx.preference.PreferenceManager;
912

@@ -18,9 +21,10 @@
1821
import org.schabi.newpipe.extractor.exceptions.ExtractionException;
1922
import org.schabi.newpipe.extractor.services.peertube.PeertubeInstance;
2023

24+
import java.util.Optional;
2125
import java.util.concurrent.TimeUnit;
2226

23-
import static org.schabi.newpipe.extractor.ServiceList.SoundCloud;
27+
import javax.annotation.Nonnull;
2428

2529
public final class ServiceHelper {
2630
private static final StreamingService DEFAULT_FALLBACK_SERVICE = ServiceList.YouTube;
@@ -113,18 +117,32 @@ public static int getImportInstructionsHint(final int serviceId) {
113117
}
114118

115119
public static int getSelectedServiceId(final Context context) {
120+
return Optional.ofNullable(getSelectedService(context))
121+
.orElse(DEFAULT_FALLBACK_SERVICE)
122+
.getServiceId();
123+
}
124+
125+
@Nullable
126+
public static StreamingService getSelectedService(final Context context) {
116127
final String serviceName = PreferenceManager.getDefaultSharedPreferences(context)
117128
.getString(context.getString(R.string.current_service_key),
118129
context.getString(R.string.default_service_value));
119130

120-
int serviceId;
121131
try {
122-
serviceId = NewPipe.getService(serviceName).getServiceId();
132+
return NewPipe.getService(serviceName);
123133
} catch (final ExtractionException e) {
124-
serviceId = DEFAULT_FALLBACK_SERVICE.getServiceId();
134+
return null;
125135
}
136+
}
126137

127-
return serviceId;
138+
@Nonnull
139+
public static String getNameOfServiceById(final int serviceId) {
140+
return ServiceList.all().stream()
141+
.filter(s -> s.getServiceId() == serviceId)
142+
.findFirst()
143+
.map(StreamingService::getServiceInfo)
144+
.map(StreamingService.ServiceInfo::getName)
145+
.orElse("<unknown>");
128146
}
129147

130148
public static void setSelectedServiceId(final Context context, final int serviceId) {
@@ -138,16 +156,6 @@ public static void setSelectedServiceId(final Context context, final int service
138156
setSelectedServicePreferences(context, serviceName);
139157
}
140158

141-
public static void setSelectedServiceId(final Context context, final String serviceName) {
142-
final int serviceId = NewPipe.getIdOfService(serviceName);
143-
if (serviceId == -1) {
144-
setSelectedServicePreferences(context,
145-
DEFAULT_FALLBACK_SERVICE.getServiceInfo().getName());
146-
} else {
147-
setSelectedServicePreferences(context, serviceName);
148-
}
149-
}
150-
151159
private static void setSelectedServicePreferences(final Context context,
152160
final String serviceName) {
153161
PreferenceManager.getDefaultSharedPreferences(context).edit().

0 commit comments

Comments
 (0)