package de.nccloud.reporting.crds.v0.models; import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.core.JsonProcessingException; import java.io.IOException; 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 * User agent: apibuilder app.apibuilder.io/nccloud/reporting-crds/0.0.1/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 * */ @JsonIgnoreProperties( ignoreUnknown = true ) public class ReportStream { private final String topic; private final String description; private final String service; private final Map schema; @JsonCreator public ReportStream(@JsonProperty("topic") String topic, @JsonProperty("description") String description, @JsonProperty("service") String service, @JsonProperty("schema") Map schema) { this.topic = topic; this.description = description; this.service = service; this.schema = schema; } /** * Name of the topic, the report events will be published to. */ public String getTopic() { return topic; } /** * A human-readable description of what this reporting stream supplies. */ public String getDescription() { return description; } /** * URI under which the service is reachable. This should be the root URI, so that appending `/_internal_/service` returns the service information. */ public String getService() { return service; } /** * The schema of the data this reporting stream supplies. */ public Map getSchema() { return schema; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; ReportStream that = (ReportStream) o; if (topic != null ? !topic.equals(that.topic) : that.topic != null) return false; if (description != null ? !description.equals(that.description) : that.description != null) return false; if (service != null ? !service.equals(that.service) : that.service != null) return false; if (schema != null ? !schema.equals(that.schema) : that.schema != null) return false; return true; } @Override public int hashCode() { int result = 0; result = 31 * result + (topic != null ? topic.hashCode() : 0); result = 31 * result + (description != null ? description.hashCode() : 0); result = 31 * result + (service != null ? service.hashCode() : 0); result = 31 * result + (schema != null ? schema.hashCode() : 0); return result; } public String toJsonString() throws JsonProcessingException { return de.nccloud.reporting.crds.v0.android.ApiBuilderObjectMapper.getInstance().writeValueAsString(this); } public static ReportStream parseJson(String json) throws IOException { return de.nccloud.reporting.crds.v0.android.ApiBuilderObjectMapper.getInstance().readValue( json, ReportStream.class); } }