getLanguageInfo returns Locale instead of String
so that java can automatically translate with Locale.getDisplayLanguage(), instead of always having English name of the language
This commit is contained in:
parent
341372c0d0
commit
e392b6c68f
|
@ -18,6 +18,7 @@ import javax.annotation.Nonnull;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
public class MediaCCCStreamExtractor extends StreamExtractor {
|
public class MediaCCCStreamExtractor extends StreamExtractor {
|
||||||
|
|
||||||
|
@ -248,8 +249,8 @@ public class MediaCCCStreamExtractor extends StreamExtractor {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getLanguageInfo() throws ParsingException {
|
public Locale getLanguageInfo() throws ParsingException {
|
||||||
return "";
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nonnull
|
@Nonnull
|
||||||
|
|
|
@ -6,6 +6,7 @@ import java.net.URLEncoder;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
import org.jsoup.helper.StringUtil;
|
import org.jsoup.helper.StringUtil;
|
||||||
import org.schabi.newpipe.extractor.MediaFormat;
|
import org.schabi.newpipe.extractor.MediaFormat;
|
||||||
|
@ -391,7 +392,11 @@ public class PeertubeStreamExtractor extends StreamExtractor {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getLanguageInfo() throws ParsingException {
|
public Locale getLanguageInfo() throws ParsingException {
|
||||||
return JsonUtils.getString(json, "language.label");
|
try {
|
||||||
|
return new Locale(JsonUtils.getString(json, "language.id"));
|
||||||
|
} catch (ParsingException e) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,6 +20,7 @@ import java.net.URLEncoder;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
public class SoundcloudStreamExtractor extends StreamExtractor {
|
public class SoundcloudStreamExtractor extends StreamExtractor {
|
||||||
private JsonObject track;
|
private JsonObject track;
|
||||||
|
@ -276,8 +277,8 @@ public class SoundcloudStreamExtractor extends StreamExtractor {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getLanguageInfo() throws ParsingException {
|
public Locale getLanguageInfo() throws ParsingException {
|
||||||
return "";
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nonnull
|
@Nonnull
|
||||||
|
|
|
@ -1157,8 +1157,8 @@ public class YoutubeStreamExtractor extends StreamExtractor {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getLanguageInfo() throws ParsingException {
|
public Locale getLanguageInfo() throws ParsingException {
|
||||||
return "";
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nonnull
|
@Nonnull
|
||||||
|
|
|
@ -35,6 +35,7 @@ import javax.annotation.Nullable;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Scrapes information from a video/audio streaming service (eg, YouTube).
|
* Scrapes information from a video/audio streaming service (eg, YouTube).
|
||||||
|
@ -390,13 +391,15 @@ public abstract class StreamExtractor extends Extractor {
|
||||||
public abstract String getLicence() throws ParsingException;
|
public abstract String getLicence() throws ParsingException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The language of the stream.
|
* The locale language of the stream.
|
||||||
* If the language is not available you can simply return an empty string.
|
* If the language is not available you can simply return null.
|
||||||
* @return the licence of the stream or an empty String.
|
* If the language is provided by a language code, you can return
|
||||||
|
* new Locale(language_code);
|
||||||
|
* @return the locale language of the stream or null.
|
||||||
* @throws ParsingException
|
* @throws ParsingException
|
||||||
*/
|
*/
|
||||||
@Nonnull
|
@Nullable
|
||||||
public abstract String getLanguageInfo() throws ParsingException;
|
public abstract Locale getLanguageInfo() throws ParsingException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The list of tags of the stream.
|
* The list of tags of the stream.
|
||||||
|
|
|
@ -13,6 +13,7 @@ import org.schabi.newpipe.extractor.utils.ExtractorHelper;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Created by Christian Schabesberger on 26.08.15.
|
* Created by Christian Schabesberger on 26.08.15.
|
||||||
|
@ -349,8 +350,8 @@ public class StreamInfo extends Info {
|
||||||
private String privacy = "";
|
private String privacy = "";
|
||||||
private String category = "";
|
private String category = "";
|
||||||
private String licence = "";
|
private String licence = "";
|
||||||
private String language = "";
|
|
||||||
private String support = "";
|
private String support = "";
|
||||||
|
private Locale language = null;
|
||||||
private List<String> tags = new ArrayList<>();
|
private List<String> tags = new ArrayList<>();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -610,11 +611,11 @@ public class StreamInfo extends Info {
|
||||||
this.licence = str;
|
this.licence = str;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getLanguageInfo() {
|
public Locale getLanguageInfo() {
|
||||||
return this.language;
|
return this.language;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setLanguageInfo(String lang) {
|
public void setLanguageInfo(Locale lang) {
|
||||||
this.language = lang;
|
this.language = lang;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -11,6 +11,7 @@ import java.io.IOException;
|
||||||
import java.text.ParseException;
|
import java.text.ParseException;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.Calendar;
|
import java.util.Calendar;
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.Ignore;
|
import org.junit.Ignore;
|
||||||
|
@ -154,4 +155,9 @@ public class PeertubeStreamExtractorDefaultTest {
|
||||||
supportInfoExtractor.fetchPage();
|
supportInfoExtractor.fetchPage();
|
||||||
assertEquals("https://utip.io/chatsceptique", supportInfoExtractor.getSupportInfo());
|
assertEquals("https://utip.io/chatsceptique", supportInfoExtractor.getSupportInfo());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testGetLanguageInformation() throws ParsingException {
|
||||||
|
assertEquals(new Locale("en"), extractor.getLanguageInfo());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue