NewPipeExtractor/extractor/src/main/java/org/schabi/newpipe/extractor/Page.java

79 lines
1.8 KiB
Java
Raw Normal View History

2020-04-15 14:09:46 +02:00
package org.schabi.newpipe.extractor;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
import javax.annotation.Nullable;
2020-06-13 20:25:38 +02:00
import static org.schabi.newpipe.extractor.utils.Utils.isNullOrEmpty;
2020-04-15 14:09:46 +02:00
public class Page implements Serializable {
private final String url;
private final String id;
2020-04-15 14:09:46 +02:00
private final List<String> ids;
private final Map<String, String> cookies;
@Nullable
2021-04-02 21:34:04 +02:00
private final byte[] body;
2020-04-15 14:09:46 +02:00
2021-04-02 21:34:04 +02:00
public Page(final String url, final String id, final List<String> ids,
final Map<String, String> cookies, @Nullable final byte[] body) {
2020-04-15 14:09:46 +02:00
this.url = url;
this.id = id;
2020-04-15 14:09:46 +02:00
this.ids = ids;
this.cookies = cookies;
2021-04-02 21:34:04 +02:00
this.body = body;
2020-04-15 14:09:46 +02:00
}
public Page(final String url) {
2021-04-02 21:34:04 +02:00
this(url, null, null, null, null);
}
public Page(final String url, final String id) {
2021-04-02 21:34:04 +02:00
this(url, id, null, null, null);
}
public Page(final String url, final byte[] body) {
this(url, null, null, null, body);
2020-04-15 14:09:46 +02:00
}
public Page(final String url, final Map<String, String> cookies) {
2021-04-02 21:34:04 +02:00
this(url, null, null, cookies, null);
2020-04-15 14:09:46 +02:00
}
public Page(final List<String> ids) {
2021-04-02 21:34:04 +02:00
this(null, null, ids, null, null);
2020-04-15 14:09:46 +02:00
}
public Page(final List<String> ids, final Map<String, String> cookies) {
2021-04-02 21:34:04 +02:00
this(null, null, ids, cookies, null);
2020-04-15 14:09:46 +02:00
}
public String getUrl() {
return url;
}
public String getId() {
return id;
}
2020-04-15 14:09:46 +02:00
public List<String> getIds() {
return ids;
}
public Map<String, String> getCookies() {
return cookies;
}
2020-06-13 20:25:38 +02:00
public static boolean isValid(final Page page) {
return page != null && (!isNullOrEmpty(page.getUrl())
|| !isNullOrEmpty(page.getIds()));
}
2021-04-02 21:34:04 +02:00
@Nullable
2021-04-02 21:34:04 +02:00
public byte[] getBody() {
return body;
}
2020-04-15 14:09:46 +02:00
}