commit 6b62119d1a038139b1495c140c4dc3bca59c546b Author: Fabio Mazza Date: Tue Oct 11 01:03:33 2022 +0200 Restore ordering diff --git a/src/it/reyboz/bustorino/backend/mato/MatoAPIFetcher.kt b/src/it/reyboz/bustorino/backend/mato/MatoAPIFetcher.kt index ecfd6b0..ab97832 100644 --- a/src/it/reyboz/bustorino/backend/mato/MatoAPIFetcher.kt +++ b/src/it/reyboz/bustorino/backend/mato/MatoAPIFetcher.kt @@ -72,10 +72,10 @@ open class MatoAPIFetcher(val minNumPassaggi: Int) : ArrivalsFetcher { try { val palinaResult = future.get(5, TimeUnit.SECONDS) if (palinaResult!=null) { - if (BuildConfig.DEBUG) + /*if (BuildConfig.DEBUG) for (r in palinaResult.queryAllRoutes()){ Log.d(DEBUG_TAG, "route " + r.gtfsId + " has " + r.passaggi.size + " passaggi: "+ r.passaggiToString) - } + }*/ palina = palinaResult numPassaggi = palina.minNumberOfPassages } else{ diff --git a/src/it/reyboz/bustorino/backend/utils.java b/src/it/reyboz/bustorino/backend/utils.java index 5996b14..9283f44 100644 --- a/src/it/reyboz/bustorino/backend/utils.java +++ b/src/it/reyboz/bustorino/backend/utils.java @@ -233,13 +233,15 @@ public abstract class utils { */ public static List getDefaultArrivalsFetchers(Context context){ SharedPreferences defSharPref = PreferenceManager.getDefaultSharedPreferences(context); - final Set setSelected = defSharPref.getStringSet(SettingsFragment.KEY_ARRIVALS_FETCHERS_USE, new HashSet<>()); + final Set setSelected = new HashSet<>(); + setSelected.addAll(defSharPref.getStringSet(SettingsFragment.KEY_ARRIVALS_FETCHERS_USE, + new HashSet<>())); if (setSelected.isEmpty()) { return Arrays.asList(new MatoAPIFetcher(), new GTTJSONFetcher(), new FiveTScraperFetcher()); }else{ ArrayList outFetchers = new ArrayList<>(4); - for(String s: setSelected){ + /*for(String s: setSelected){ switch (s){ case "matofetcher": outFetchers.add(new MatoAPIFetcher()); @@ -256,17 +258,27 @@ public abstract class utils { default: throw new IllegalArgumentException(); } + }*/ + if (setSelected.contains("matofetcher")) { + outFetchers.add(new MatoAPIFetcher()); + setSelected.remove("matofetcher"); } - /* - if (setSelected.contains("matofetcher")) - outFetchers.add(new MatoAPIFetcher()); - if (setSelected.contains("fivetapifetcher")) + if (setSelected.contains("fivetapifetcher")) { outFetchers.add(new FiveTAPIFetcher()); - if (setSelected.contains("gttjsonfetcher")) + setSelected.remove("fivetapifetcher"); + } + if (setSelected.contains("gttjsonfetcher")){ outFetchers.add(new GTTJSONFetcher()); - if (setSelected.contains("fivetscraper")) + setSelected.remove("gttjsonfetcher"); + } + if (setSelected.contains("fivetscraper")) { outFetchers.add(new FiveTScraperFetcher()); - */ + setSelected.remove("fivetscraper"); + } + if(!setSelected.isEmpty()){ + Log.e("BusTO-Utils","Getting some fetchers values which are not contemplated"); + } + return outFetchers; } } @@ -317,4 +329,14 @@ public abstract class utils { // Return the converted Set return set; } + + public static String giveClassesForArray(T[] array){ + StringBuilder sb = new StringBuilder(); + for (T f: array){ + sb.append(""); + sb.append(f.getClass().getSimpleName()); + sb.append("; "); + } + return sb.toString(); + } } diff --git a/src/it/reyboz/bustorino/fragments/ArrivalsFragment.java b/src/it/reyboz/bustorino/fragments/ArrivalsFragment.java index 47a203f..86b83ed 100644 --- a/src/it/reyboz/bustorino/fragments/ArrivalsFragment.java +++ b/src/it/reyboz/bustorino/fragments/ArrivalsFragment.java @@ -283,7 +283,10 @@ public class ArrivalsFragment extends ResultListFragment implements LoaderManage } private void rotateFetchers(){ - Collections.rotate(fetchers, 1); + Log.d(DEBUG_TAG, "Rotating fetchers, before: "+fetchers); + Collections.rotate(fetchers, -1); + Log.d(DEBUG_TAG, "Rotating fetchers, afterwards: "+fetchers); + } diff --git a/src/it/reyboz/bustorino/middleware/AsyncArrivalsSearcher.java b/src/it/reyboz/bustorino/middleware/AsyncArrivalsSearcher.java index ad8f980..709bc42 100644 --- a/src/it/reyboz/bustorino/middleware/AsyncArrivalsSearcher.java +++ b/src/it/reyboz/bustorino/middleware/AsyncArrivalsSearcher.java @@ -82,6 +82,13 @@ public class AsyncArrivalsSearcher extends AsyncTask results = new ArrayList<>(theFetchers.length); //If the FragmentHelper is null, that means the activity doesn't exist anymore + StringBuilder sb = new StringBuilder(); + for (ArrivalsFetcher f: theFetchers){ + sb.append(""); + sb.append(f.getClass().getSimpleName()); + sb.append("; "); + } + Log.d(DEBUG_TAG, "Using fetchers: "+sb.toString()); if (fh == null){ return null; }