package apps.makarov.com.whereismycurrency.net.requests;
import android.util.Log;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import org.json.XML;
import java.util.ArrayList;
import java.util.List;
import apps.makarov.com.whereismycurrency.mappers.json.BankJsonMapper;
import apps.makarov.com.whereismycurrency.models.Bank;
/**
* Created by makarov on 28/06/15.
*/
public class BankRequest extends WimcRequest<Bank> {
public static final String TAG = FixerRequest.class.getSimpleName();
public static final String BANK_RATES_URL = "http://informer.kovalut.ru/webmaster/xml-table.php?kod=7701";
@Override
public String getPath() {
return BANK_RATES_URL;
}
@Override
public TYPE getType() {
return TYPE.GET;
}
@Override
protected List<Bank> parseStringToList(String str) throws JSONException {
JSONObject jsonObj = XML.toJSONObject(str);
JSONArray actualRates = jsonObj.getJSONObject("Exchange_Rates").getJSONObject("Actual_Rates").getJSONArray("Bank");
Log.d(TAG, actualRates.toString());
List<Bank> list = new ArrayList<>();
for (int i = 0; i < actualRates.length(); i++) {
try {
BankJsonMapper interpreter = new BankJsonMapper();
Bank bank = interpreter.modelToData(actualRates.getJSONObject(i));
list.add(bank);
}catch (Exception e){
Log.e(TAG, "parse error", e);
}
}
return list;
}
}