/** * Obtém a lista de itens para uma ou mais categorias de uma fonte, num raio de proximidade * pré-definido no menu de settings, filtrando por uma string contendo palavras chave. * * @param srcID ID da fonte. * @param catIDList Lista de ID's das categorias. * @param filters Palavras-chave usadas na pesquisa. * @param loc Localização a utilizar como centro do raio de pesquisa pré-definido. * @return ArrayList de DataItems com os dados pretendidos. */ public static ArrayList<IGEOGenericDataItem> getListForSourceAndCategoriesNearFiltered( String srcID, ArrayList<String> catIDList, String filters, Location loc) { if (catIDList == null) { return null; } // vai obter o JSONObject String strDensity = IGEOConfigsManager.densityString; url = IGEOConfigsManager.getAppConfigs().URLRequests + "&imgtype=" + strDensity + "&token=" + TOKEN; url += "&sid=" + srcID + "&cats="; int i = 0; for (String catID : catIDList) { url += catID + ";"; i++; } url += "&lat=" + loc.getLatitude() + "&lon=" + loc.getLongitude() + "&r=" + IGEOConfigsManager.getAppConfigs().getProximityRadius(); // Permite ir buscar todos os itens. // Atenção isto deverá de futuro ser alterado para que a paginação seja feita logo na // obteção dos dados. Neste momento só está a ser feita na construção da ListView. url += "&nr=0"; if (filters != null) url += "&txt=" + filters; Log.i("DGAItems", "url = " + url); jsonObj = IGEOJSONServerReader.getJSONObject(url); if (jsonObj != null) { // Faz o parse do JSONObject e transforma-o num ArrayList de Sources listResultData = IGEOUtils.getDataListFromJSONObject(jsonObj); return listResultData; } return null; }
/** * Obtém a lista de itens para uma ou mais categorias de uma fonte, num raio de proximidade * pré-definido no menu de definições. * * @param srcID ID da source. * @param catIDList Lista de ID's das categorias. * @param loc Localização a utilizar como centro do raio de pesquisa pré-definido. * @return ArrayList de DataItems com os dados pretendidos. */ public static ArrayList<IGEOGenericDataItem> getListForSourceAndCategoriesNear( String srcID, ArrayList<String> catIDList, Location loc) { if (catIDList == null) { return null; } // vai obter o JSONObject String strDensity = IGEOConfigsManager.densityString; url = IGEOConfigsManager.getAppConfigs().URLRequests + "&imgtype=" + strDensity + "&token=" + TOKEN; url = url + "&sid=" + srcID + "&cats="; int i = 0; for (String catID : catIDList) { url += catID + ";"; i++; } url += "&lat=" + loc.getLatitude() + "&lon=" + loc.getLongitude() + "&r=" + IGEOConfigsManager.getAppConfigs().getProximityRadius(); // permite ir buscar todos os items // atenção isto deverá de futuro ser alterado url += "&nr=0"; // Log.i("DGAItems","url = "+url); jsonObj = IGEOJSONServerReader.getJSONObject(url); if (jsonObj != null) { // Faz o parse do JSONObject e transforma-o num ArrayList de Sources listResultSources = IGEOUtils.getDataListFromJSONObject(jsonObj); return listResultSources; } return null; }
/** * Obtém a lista de itens para uma ou mais categorias de uma fonte, numa localização definida pela * filtragem por distrito, concelho e freguesia e por palavras chave. * * @param srcID ID da fonte. * @param catIDList Lista de ID's das categorias. * @param filters Palavras-chave usadas na pesquisa. * @return ArrayList de DataItems com os dados pretendidos. */ public static ArrayList<IGEOGenericDataItem> getListForSourceAndCategoriesInSearchLocationFiltered( String srcID, ArrayList<String> catIDList, String filters) { if (catIDList == null) { return null; } // vai obter o JSONObject String strDensity = IGEOConfigsManager.densityString; url = IGEOConfigsManager.getAppConfigs().URLRequests + "&imgtype=" + strDensity + "&token=" + TOKEN; url += "&sid=" + srcID + "&cats="; int i = 0; for (String catID : catIDList) { url += catID + ";"; i++; } // permite ir buscar todos os itens // atenção isto deverá de futuro ser alterado url += "&nr=0"; if (codPar != null) { if (!codPar.equals("")) url += "&ine=" + codPar; else url += "&ine=" + codConc; } else { url += "&ine=" + codConc; } if (filters != null) url += "&txt=" + filters; // Log.i("DGAItems","url = "+url); jsonObj = IGEOJSONServerReader.getJSONObject(url); if (jsonObj != null) { // Faz o parse do JSONObject e transforma-o num ArrayList de Sources listResultData = IGEOUtils.getDataListFromJSONObject(jsonObj); jsonObj = null; url = null; System.gc(); return listResultData; } jsonObj = null; url = null; System.gc(); return null; }
/** * Obtém a lista de itens para uma ou mais categorias de uma fonte, numa localização definida pela * filtragem por distrito, concelho e freguesia. * * @param srcID ID da fonte. * @param catIDList Lista de ID's das categorias. * @return ArrayList de DataItems com os dados pretendidos. */ public static ArrayList<IGEOGenericDataItem> getListForSourceAndCategoriesInSearchLocation( String srcID, ArrayList<String> catIDList) { if (catIDList == null) { return null; } // vai obter o JSONObject String strDensity = IGEOConfigsManager.densityString; url = IGEOConfigsManager.getAppConfigs().URLRequests + "&imgtype=" + strDensity + "&token=" + TOKEN; url += "&sid=" + srcID + "&cats="; int i = 0; for (String catID : catIDList) { url += catID + ";"; i++; } // Permite ir buscar todos os itens. // Deverá, no futuro, ser alterado para que a paginação seja feita logo na // obtenção dos dados. Neste momento só está a ser feita na construção da ListView. url += "&nr=0"; if (codPar != null) { if (!codPar.equals("")) url += "&ine=" + codPar; else { if (codConc != null) { if (!codConc.equals("")) { url += "&ine=" + codConc; } else { url += "&ine=" + codDist; } } else { url += "&ine=" + codDist; } } } else { if (codConc != null) { if (!codConc.equals("")) { url += "&ine=" + codConc; } else { url += "&ine=" + codDist; } } else { url += "&ine=" + codDist; } } Log.i("DGAItems", "url = " + url); jsonObj = IGEOJSONServerReader.getJSONObject(url); if (jsonObj != null) { // Faz o parse do JSONObject e transforma-o num ArrayList de Sources listResultData = IGEOUtils.getDataListFromJSONObject(jsonObj); jsonObj = null; url = null; System.gc(); return listResultData; } jsonObj = null; url = null; System.gc(); return null; }