package com.mygeopay.core.exchange.shapeshift.data;
import com.mygeopay.core.coins.CoinID;
import com.mygeopay.core.coins.CoinType;
import com.mygeopay.core.util.ExchangeRate;
import com.mygeopay.core.util.ExchangeRateBase;
import org.json.JSONObject;
import static com.mygeopay.core.Preconditions.checkState;
/**
* @author John L. Jegutanis
*/
public class ShapeShiftRate extends ShapeShiftPairBase {
public final ExchangeRate rate;
public ShapeShiftRate(JSONObject data) throws ShapeShiftException {
super(data);
if (!isError) {
try {
String[] pairs = pair.split("_");
checkState(pairs.length == 2);
CoinType typeFrom = CoinID.typeFromSymbol(pairs[0]);
CoinType typeTo = CoinID.typeFromSymbol(pairs[1]);
rate = new ShapeShiftExchangeRate(typeFrom, typeTo,
data.getString("rate"), data.optString("minerFee", null));
} catch (Exception e) {
throw new ShapeShiftException("Could not parse object", e);
}
} else {
rate = null;
}
}
}