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; /** * Generated by API Builder - https://www.apibuilder.io * Service version: 0.12.14 * User agent: apibuilder app.apibuilder.io/apicollective/apibuilder-api/0.12.14/android_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 and retrofit2 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 * * An application has a name and multiple versions of its API. */ @JsonIgnoreProperties( ignoreUnknown = true ) public class Application { private final UUID guid; private final io.apibuilder.common.v0.models.Reference organization; private final String name; private final String key; private final Visibility visibility; private final String description; private final io.apibuilder.common.v0.models.Audit audit; @JsonCreator public Application(@JsonProperty("guid") UUID guid, @JsonProperty("organization") io.apibuilder.common.v0.models.Reference organization, @JsonProperty("name") String name, @JsonProperty("key") String key, @JsonProperty("visibility") Visibility visibility, @JsonProperty("description") String description, @JsonProperty("audit") io.apibuilder.common.v0.models.Audit audit) { this.guid = guid; this.organization = organization; this.name = name; this.key = key; this.visibility = visibility; this.description = description; this.audit = audit; } /** * Internal unique identifier for this application. */ public UUID getGuid() { return guid; } public io.apibuilder.common.v0.models.Reference getOrganization() { return organization; } /** * The unique name for this application. */ public String getName() { return name; } /** * Used as a unique key in the URL path. Key is automatically derived from the application name. */ public String getKey() { return key; } /** * Controls who is able to view this application */ public Visibility getVisibility() { return visibility; } public String getDescription() { return description; } 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; Application that = (Application) 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 (name != null ? !name.equals(that.name) : that.name != null) return false; if (key != null ? !key.equals(that.key) : that.key != null) return false; if (visibility != null ? !visibility.equals(that.visibility) : that.visibility != null) return false; if (description != null ? !description.equals(that.description) : that.description != 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 + (name != null ? name.hashCode() : 0); result = 31 * result + (key != null ? key.hashCode() : 0); result = 31 * result + (visibility != null ? visibility.hashCode() : 0); result = 31 * result + (description != null ? description.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 Application parseJson(String json) throws IOException { return io.apibuilder.api.v0.android.ApiBuilderObjectMapper.getInstance().readValue( json, Application.class); } }