package io.cheng.flowerate.v0.models; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonTypeInfo; import com.fasterxml.jackson.core.JsonProcessingException; import java.io.IOException; import java.lang.Boolean; import java.lang.Double; import java.lang.Long; import java.lang.Object; import java.lang.Override; import java.lang.String; import java.util.Map; /** * Generated by API Builder - https://www.apibuilder.io * Service version: 0.0.1-dev * User agent: apibuilder app.apibuilder.io/chenggit/flowerate/0.0.1-dev/android_rx2_client * * WARNING: not all features (notably unions) and data types work with android generator yet. * Android generator is designed to be used in an android application, but should work in any java codebase as long as you import jackson, retrofit2 and RxJava2 libraries. * If you are considering using this library, would like to request/discuss features, or would like to share how you're using it, please contact android-feedback@gilt.com * * fixer.io response for exchange rate between two currencies */ @JsonIgnoreProperties( ignoreUnknown = true ) @JsonTypeInfo( use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NONE ) public class FixerRatesSuccessResponse implements FixerRateResponse { private final Boolean success; private final Currency base; private final Map rates; private final Long timestamp; @JsonCreator public FixerRatesSuccessResponse(@JsonProperty("success") Boolean success, @JsonProperty("base") Currency base, @JsonProperty("rates") Map rates, @JsonProperty("timestamp") Long timestamp) { this.success = success; this.base = base; this.rates = rates; this.timestamp = timestamp; } /** * response status, should be true in this case */ public Boolean getSuccess() { return success; } /** * base currency */ public Currency getBase() { return base; } /** * target currencies */ public Map getRates() { return rates; } /** * epoch timestamp of returned exchange rate */ public Long getTimestamp() { return timestamp; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; FixerRatesSuccessResponse that = (FixerRatesSuccessResponse) o; if (success != null ? !success.equals(that.success) : that.success != null) return false; if (base != null ? !base.equals(that.base) : that.base != null) return false; if (rates != null ? !rates.equals(that.rates) : that.rates != null) return false; if (timestamp != null ? !timestamp.equals(that.timestamp) : that.timestamp != null) return false; return true; } @Override public int hashCode() { int result = 0; result = 31 * result + (success != null ? success.hashCode() : 0); result = 31 * result + (base != null ? base.hashCode() : 0); result = 31 * result + (rates != null ? rates.hashCode() : 0); result = 31 * result + (timestamp != null ? timestamp.hashCode() : 0); return result; } public String toJsonString() throws JsonProcessingException { return io.cheng.flowerate.v0.android.ApiBuilderObjectMapper.getInstance().writeValueAsString(this); } public static FixerRatesSuccessResponse parseJson(String json) throws IOException { return io.cheng.flowerate.v0.android.ApiBuilderObjectMapper.getInstance().readValue( json, FixerRatesSuccessResponse.class); } }