forked from External/mage
* Images download: added threads settings in download dialog;
This commit is contained in:
parent
401d468494
commit
450646ca5e
5 changed files with 108 additions and 35 deletions
|
|
@ -164,11 +164,14 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
|
|||
uiDialog.getLaunguagesCombo().setSelectedItem(PreferencesDialog.getPrefImagesLanguage());
|
||||
reloadLanguagesForSelectedSource();
|
||||
|
||||
// DOWNLOAD THREADS
|
||||
uiDialog.getDownloadThreadsCombo().setModel(new DefaultComboBoxModel<>(new String[]{"10", "9", "8", "7", "6", "5", "4", "3", "2", "1"}));
|
||||
uiDialog.getDownloadThreadsCombo().setSelectedItem(PreferencesDialog.getPrefDownloadThreads().toString());
|
||||
|
||||
// REDOWNLOAD
|
||||
uiDialog.getRedownloadCheckbox().setSelected(false);
|
||||
uiDialog.getRedownloadCheckbox().addItemListener(this::checkboxRedowloadChanged);
|
||||
|
||||
|
||||
// SETS (fills after source and language select)
|
||||
//uiDialog.getSetsCombo().setModel(new DefaultComboBoxModel(DownloadSources.values()));
|
||||
uiDialog.getSetsCombo().addItemListener((ItemEvent event) -> {
|
||||
|
|
@ -585,7 +588,6 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
|
|||
}
|
||||
|
||||
Connection.ProxyType configProxyType = Connection.ProxyType.valueByText(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_PROXY_TYPE, "None"));
|
||||
|
||||
Proxy.Type type = Proxy.Type.DIRECT;
|
||||
switch (configProxyType) {
|
||||
case HTTP:
|
||||
|
|
@ -610,15 +612,17 @@ public class DownloadPicturesService extends DefaultBoundedRangeModel implements
|
|||
}
|
||||
}
|
||||
|
||||
int downloadThreadsAmount = Integer.parseInt((String) uiDialog.getDownloadThreadsCombo().getSelectedItem());
|
||||
|
||||
if (proxy != null) {
|
||||
logger.info("Started download of " + cardsDownloadQueue.size() + " images"
|
||||
+ " from source: " + selectedSource.getSourceName()
|
||||
+ ", language: " + selectedSource.getCurrentLanguage().getCode());
|
||||
+ ", language: " + selectedSource.getCurrentLanguage().getCode()
|
||||
+ ", threads: " + downloadThreadsAmount);
|
||||
uiDialog.getProgressBar().setString("Preparing download list...");
|
||||
if (selectedSource.prepareDownloadList(this, cardsDownloadQueue)) {
|
||||
update(0, cardsDownloadQueue.size());
|
||||
int numberOfThreads = Integer.parseInt(PreferencesDialog.getCachedValue(PreferencesDialog.KEY_CARD_IMAGES_THREADS, PreferencesDialog.KEY_CARD_IMAGES_THREADS_DEFAULT));
|
||||
ExecutorService executor = Executors.newFixedThreadPool(numberOfThreads);
|
||||
ExecutorService executor = Executors.newFixedThreadPool(downloadThreadsAmount);
|
||||
for (int i = 0; i < cardsDownloadQueue.size() && !this.isNeedCancel(); i++) {
|
||||
try {
|
||||
CardDownloadData card = cardsDownloadQueue.get(i);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue