* コンバータを構築します.
* @param url 対象となる動画のURL.
* @param time
- * @param setting
+ * @param profile
* @param listener
* @param flag
*/
- public Converter(String url, String time, Profile setting,
+ public Converter(String url, String time, Profile profile,
TextProgressListener listener, ConvertStopFlag flag) {
super(listener, flag);
url = url.trim();
movieId = url;
}
this.time = time;
- this.profile = setting;
+ this.profile = profile;
}
public Boolean call() throws Exception {
private class DownloadListTransferHandler extends TransferHandler {
- private final Pattern pattern = Pattern.compile("(\\w\\w\\d+)");
+ private final Pattern movieIdPattern = Pattern.compile("(\\w\\w\\d+)");
@Override
public boolean canImport(TransferHandler.TransferSupport support) {
-
- // TODO ファイル, URLはインポート可能とする.
- DataFlavor[] flavors = support.getDataFlavors();
- System.out.println("fl start");
- for (DataFlavor f : flavors) {
- System.out.println(f.getPrimaryType() + ", " + f.getMimeType() + ", " + f.getSubType() + ", " + f.
- getHumanPresentableName());
+ Transferable transferable = support.getTransferable();
+ if (transferable.isDataFlavorSupported(DataFlavor.javaFileListFlavor)
+ || transferable.isDataFlavorSupported(DataFlavor.stringFlavor)) {
+ return true;
}
- System.out.println("fl end");
- return true;
+ return false;
}
@Override
List<File> data = (List<File>) transferable.getTransferData(DataFlavor.javaFileListFlavor);
Collection<Target> targets = Target.from(data);
targetModel.addTarget(targets);
- } else {
+ } else if (transferable.isDataFlavorSupported(DataFlavor.stringFlavor)) {
String data = (String) transferable.getTransferData(DataFlavor.stringFlavor);
- Matcher matcher = pattern.matcher(data);
+ Matcher matcher = movieIdPattern.matcher(data);
if (matcher.find()) {
- System.out.println("matched" + matcher.group(1));
+ String movieId = matcher.group(1);
+ Target target = Target.fromId(movieId);
+ targetModel.addTarget(target);
} else {
return false;
}
}
- return true;
+ return false;
} catch (Exception e) {
e.printStackTrace();
return false;
return list;
}
+ public static Target fromId(String movieId) {
+ return new Target(movieId);
+ }
+
private Location movie;
private Location comment;
private Location ownerComment;
movie = new Location(f);
}
+ private Target(String movieId) {
+ movie = new Location(movieId);
+ }
+
public Location getComment() {
return comment;
}
if (before < after) {
fireTableRowsInserted(before, after - 1);
}
+ }
+ public void addTarget(Target t) {
+ List<Target> list = new ArrayList<Target>(1);
+ list.add(t);
+ addTarget(list);
}
}
--- /dev/null
+package yukihane.inqubuss.worker;
+
+import javax.swing.event.TableModelEvent;
+import javax.swing.event.TableModelListener;
+import saccubus.ConvertStopFlag;
+import saccubus.converter.Converter;
+import saccubus.net.TextProgressListener;
+
+/**
+ *
+ * @author yuki
+ */
+public class TargetPumper implements TableModelListener{
+
+ @Override
+ public void tableChanged(TableModelEvent e) {
+ System.out.println(e.getType());
+ }
+
+ public void exec(){
+// Converter conv = new Converter(tag, time, setting.toProfile(), TextProgressListener.EMPTY_LISTENER, new ConvertStopFlag(
+// ConvertStopFlag.StateChangeListener.EMPTY_LISTENER));
+ }
+
+}
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
-import static org.junit.Assert.*;
import saccubus.ConvertStopFlag;
+import saccubus.net.TextProgressListener;
/**
*
* @author yuki
*/
public class ConverterTest {
-
+
@BeforeClass
public static void setUpClass() throws Exception {
}
@AfterClass
public static void tearDownClass() throws Exception {
}
-
+
@Before
public void setUp() {
}
-
+
@After
public void tearDown() {
}
@Test
- public void testConverter() throws Exception{
- Converter conv = new Converter("sm7139747",null,null,null,null);
- conv.call();
+ public void testConverter() throws Exception {
+ TextProgressListener listener = new TextProgressListener() {
+
+ @Override
+ public void setText(String text) {
+ System.out.println(text);
+ }
+ };
+ ConvertStopFlag flag = new ConvertStopFlag(ConvertStopFlag.StateChangeListener.EMPTY_LISTENER);
+
+ Converter conv = new Converter("sm7139747", null, null, listener, flag);
+ conv.call();
}
// /**
// * Test of call method, of class Converter.