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;
|
|
|
|
|
2021-04-02 21:42:22 +02:00
|
|
|
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;
|
2020-07-26 10:01:03 +02:00
|
|
|
private final String id;
|
2020-04-15 14:09:46 +02:00
|
|
|
private final List<String> ids;
|
|
|
|
private final Map<String, String> cookies;
|
2021-04-02 21:42:22 +02:00
|
|
|
|
|
|
|
@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,
|
2021-04-02 21:42:22 +02:00
|
|
|
final Map<String, String> cookies, @Nullable final byte[] body) {
|
2020-04-15 14:09:46 +02:00
|
|
|
this.url = url;
|
2020-07-26 10:01:03 +02:00
|
|
|
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);
|
2020-07-26 10:01:03 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
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;
|
|
|
|
}
|
|
|
|
|
2020-07-26 10:01:03 +02:00
|
|
|
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
|
|
|
|
2021-04-02 21:42:22 +02:00
|
|
|
@Nullable
|
2021-04-02 21:34:04 +02:00
|
|
|
public byte[] getBody() {
|
|
|
|
return body;
|
|
|
|
}
|
2020-04-15 14:09:46 +02:00
|
|
|
}
|