// returns true if downloaded something, false if didn't private boolean downloadLinks(String linksText, JDFeedMeFeed feed, JDFeedMePost post) { // make sure we have something to download if (linksText.trim().length() == 0) return false; boolean skip_grabber = feed.getSkiplinkgrabber(); boolean autostart = gui.getConfig().getStartdownloads(); // handle a direct download if (skip_grabber) { // get all the links from the text ArrayList<DownloadLink> links = new DistributeData(linksText).findLinks(); // create a new package for the data FilePackage fp = FilePackage.getInstance(); fp.setName(post.getTitle() + " [JDFeedMe]"); fp.addLinks(links); // download the package LinkGrabberController.getInstance().addLinks(links, skip_grabber, autostart); // restart the downloads if needed if (autostart) DownloadWatchDog.getInstance().startDownloads(); } else // throw into the link grabber using the old code { new DistributeData(linksText, skip_grabber).start(); } return true; }
public void refreshModel() { synchronized (LinkGrabberController.ControllerLock) { synchronized (LinkGrabberController.getInstance().getPackages()) { synchronized (list) { list.clear(); for (LinkGrabberFilePackage fp : LinkGrabberController.getInstance().getPackages()) { list.add(fp); if (fp.getBooleanProperty(LinkGrabberController.PROPERTY_EXPANDED, false)) { for (DownloadLink dl : fp.getDownloadLinks()) { list.add(dl); } } } } } } }
@Override public void onAction(ActionEvent e) { if (!UserIO.isOK( UserIO.getInstance() .requestConfirmDialog( UserIO.DONT_SHOW_AGAIN | UserIO.DONT_SHOW_AGAIN_IGNORES_CANCEL, JDL.L( "jd.gui.swing.jdgui.menu.actions.RemoveDisabledAction.message", "Do you really want to remove all disabled DownloadLinks?")))) return; if (!LinkGrabberPanel.getLinkGrabber().isNotVisible()) { synchronized (LinkGrabberController.ControllerLock) { synchronized (LinkGrabberController.getInstance().getPackages()) { ArrayList<LinkGrabberFilePackage> selected_packages = new ArrayList<LinkGrabberFilePackage>( LinkGrabberController.getInstance().getPackages()); selected_packages.add(LinkGrabberController.getInstance().getFilterPackage()); for (LinkGrabberFilePackage fp2 : selected_packages) { ArrayList<DownloadLink> links = new ArrayList<DownloadLink>(fp2.getDownloadLinks()); for (DownloadLink dl : links) { if (!dl.isEnabled()) fp2.remove(dl); } } } } } else { DownloadController dlc = DownloadController.getInstance(); ArrayList<DownloadLink> downloadstodelete = new ArrayList<DownloadLink>(); synchronized (dlc.getPackages()) { for (FilePackage fp : dlc.getPackages()) { synchronized (fp.getDownloadLinkList()) { for (DownloadLink dl : fp.getDownloadLinkList()) { if (!dl.isEnabled()) downloadstodelete.add(dl); } } } } for (DownloadLink dl : downloadstodelete) { dl.getFilePackage().remove(dl); } } }