package io.apibuilder.api.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.UUID; import org.joda.time.DateTime; /** * Generated by API Builder - https://www.apibuilder.io * Service version: 0.12.8 * User agent: apibuilder app.apibuilder.io/apicollective/apibuilder-api/0.12.8/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 * * Represents a single change from one version of a service to another */ @JsonIgnoreProperties( ignoreUnknown = true ) public class Change { private final UUID guid; private final io.apibuilder.common.v0.models.Reference organization; private final io.apibuilder.common.v0.models.Reference application; private final ChangeVersion fromVersion; private final ChangeVersion toVersion; private final Diff diff; private final DateTime changedAt; private final UserSummary changedBy; private final io.apibuilder.common.v0.models.Audit audit; @JsonCreator public Change(@JsonProperty("guid") UUID guid, @JsonProperty("organization") io.apibuilder.common.v0.models.Reference organization, @JsonProperty("application") io.apibuilder.common.v0.models.Reference application, @JsonProperty("from_version") ChangeVersion fromVersion, @JsonProperty("to_version") ChangeVersion toVersion, @JsonProperty("diff") Diff diff, @JsonProperty("changed_at") DateTime changedAt, @JsonProperty("changed_by") UserSummary changedBy, @JsonProperty("audit") io.apibuilder.common.v0.models.Audit audit) { this.guid = guid; this.organization = organization; this.application = application; this.fromVersion = fromVersion; this.toVersion = toVersion; this.diff = diff; this.changedAt = changedAt; this.changedBy = changedBy; this.audit = audit; } public UUID getGuid() { return guid; } public io.apibuilder.common.v0.models.Reference getOrganization() { return organization; } public io.apibuilder.common.v0.models.Reference getApplication() { return application; } public ChangeVersion getFromVersion() { return fromVersion; } public ChangeVersion getToVersion() { return toVersion; } public Diff getDiff() { return diff; } /** * Records the timestamp of when the actual change occurred (vs. when we created the changed record) */ public DateTime getChangedAt() { return changedAt; } /** * Records who made the actual change */ public UserSummary getChangedBy() { return changedBy; } public io.apibuilder.common.v0.models.Audit getAudit() { return audit; } @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; Change that = (Change) o; if (guid != null ? !guid.equals(that.guid) : that.guid != null) return false; if (organization != null ? !organization.equals(that.organization) : that.organization != null) return false; if (application != null ? !application.equals(that.application) : that.application != null) return false; if (fromVersion != null ? !fromVersion.equals(that.fromVersion) : that.fromVersion != null) return false; if (toVersion != null ? !toVersion.equals(that.toVersion) : that.toVersion != null) return false; if (diff != null ? !diff.equals(that.diff) : that.diff != null) return false; if (changedAt != null ? !changedAt.equals(that.changedAt) : that.changedAt != null) return false; if (changedBy != null ? !changedBy.equals(that.changedBy) : that.changedBy != null) return false; if (audit != null ? !audit.equals(that.audit) : that.audit != null) return false; return true; } @Override public int hashCode() { int result = 0; result = 31 * result + (guid != null ? guid.hashCode() : 0); result = 31 * result + (organization != null ? organization.hashCode() : 0); result = 31 * result + (application != null ? application.hashCode() : 0); result = 31 * result + (fromVersion != null ? fromVersion.hashCode() : 0); result = 31 * result + (toVersion != null ? toVersion.hashCode() : 0); result = 31 * result + (diff != null ? diff.hashCode() : 0); result = 31 * result + (changedAt != null ? changedAt.hashCode() : 0); result = 31 * result + (changedBy != null ? changedBy.hashCode() : 0); result = 31 * result + (audit != null ? audit.hashCode() : 0); return result; } public String toJsonString() throws JsonProcessingException { return io.apibuilder.api.v0.android.ApiBuilderObjectMapper.getInstance().writeValueAsString(this); } public static Change parseJson(String json) throws IOException { return io.apibuilder.api.v0.android.ApiBuilderObjectMapper.getInstance().readValue( json, Change.class); } }