1 package yukihane.inqubus.saccubus_adapter;
4 import java.io.IOException;
5 import java.util.logging.Level;
6 import java.util.logging.Logger;
7 import nicobrowser.NicoHttpClient;
8 import saccubus.ConvertStopFlag;
9 import saccubus.net.CommentInfo;
10 import saccubus.net.NicoClient;
11 import saccubus.net.TextProgressListener;
12 import saccubus.net.VideoInfo;
13 import saccubus.util.FileUtil;
19 public class NicoBrowserAdapter implements NicoClient {
21 private static final Logger logger = Logger.getLogger(NicoBrowserAdapter.class.getName());
22 private final NicoHttpClient client;
23 private final boolean hasLogin;
24 private final ConvertStopFlag stopFlag;
26 public NicoBrowserAdapter(final String mail, final String pass,
27 final ConvertStopFlag flag, final String proxyHost, final int proxyPort) {
29 if (proxyHost != null && proxyHost.length() > 0 && proxyPort >= 0 && proxyPort <= 65535) {
30 this.client = new NicoHttpClient(proxyHost, proxyPort);
32 this.client = new NicoHttpClient();
36 boolean loginned = false;
38 loginned = client.login(mail, pass);
39 } catch (Exception ex) {
40 logger.log(Level.SEVERE, "ログイン処理時に例外発生", ex);
42 this.hasLogin = loginned;
49 public VideoInfo getVideoInfo(String tag) throws IOException {
50 final nicobrowser.VideoInfo vi = client.getVideoInfo(tag);
51 final VideoInfo.OfficialOption oo =
52 new VideoInfo.OfficialOption(vi.getKeyMap().get("threadkey"), vi.getKeyMap().get("force_184"));
54 return new VideoInfo(FileUtil.safeFileName(vi.getTitleInWatchPage()), vi.getThreadId(), vi.getVideoUrl().
55 toString(), vi.getMessageUrl().toString(), vi.getUserId(), vi.getVideoLength(), oo);
59 public CommentInfo getWayBackKey(VideoInfo vi, String time) throws IOException {
60 throw new UnsupportedOperationException("Not supported yet.");
64 public File getComment(VideoInfo videoInfo, CommentInfo commentInfo, File file, TextProgressListener listener,
66 throw new UnsupportedOperationException("Not supported yet.");
70 public File getTcomment(VideoInfo videoInfo, File file, TextProgressListener listener) {
71 throw new UnsupportedOperationException("Not supported yet.");
75 public File getVideo(VideoInfo videoInfo, File file, TextProgressListener listener) {
76 throw new UnsupportedOperationException("Not supported yet.");
80 public boolean isLoggedIn() {
84 private boolean login() {