com.twilio.rest.sync.v1.service.Document Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of twilio Show documentation
Show all versions of twilio Show documentation
Twilio Java Helper Library
/**
* This code was generated by
* \ / _ _ _| _ _
* | (_)\/(_)(_|\/| |(/_ v1.0.0
* / /
*/
package com.twilio.rest.sync.v1.service;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.common.base.MoreObjects;
import com.twilio.base.Resource;
import com.twilio.converter.Converter;
import com.twilio.converter.DateConverter;
import com.twilio.exception.ApiConnectionException;
import com.twilio.exception.ApiException;
import com.twilio.exception.RestException;
import com.twilio.http.HttpMethod;
import com.twilio.http.Request;
import com.twilio.http.Response;
import com.twilio.http.TwilioRestClient;
import com.twilio.rest.Domains;
import org.joda.time.DateTime;
import java.io.IOException;
import java.io.InputStream;
import java.net.URI;
import java.util.Map;
import java.util.Objects;
/**
* PLEASE NOTE that this class contains beta products that are subject to
* change. Use them with caution.
*/
@JsonIgnoreProperties(ignoreUnknown = true)
public class Document extends Resource {
private static final long serialVersionUID = 114918671939352L;
/**
* Create a DocumentFetcher to execute fetch.
*
* @param pathServiceSid The service_sid
* @param pathSid The sid
* @return DocumentFetcher capable of executing the fetch
*/
public static DocumentFetcher fetcher(final String pathServiceSid,
final String pathSid) {
return new DocumentFetcher(pathServiceSid, pathSid);
}
/**
* Create a DocumentDeleter to execute delete.
*
* @param pathServiceSid The service_sid
* @param pathSid The sid
* @return DocumentDeleter capable of executing the delete
*/
public static DocumentDeleter deleter(final String pathServiceSid,
final String pathSid) {
return new DocumentDeleter(pathServiceSid, pathSid);
}
/**
* Create a DocumentCreator to execute create.
*
* @param pathServiceSid The service_sid
* @return DocumentCreator capable of executing the create
*/
public static DocumentCreator creator(final String pathServiceSid) {
return new DocumentCreator(pathServiceSid);
}
/**
* Create a DocumentReader to execute read.
*
* @param pathServiceSid The service_sid
* @return DocumentReader capable of executing the read
*/
public static DocumentReader reader(final String pathServiceSid) {
return new DocumentReader(pathServiceSid);
}
/**
* Create a DocumentUpdater to execute update.
*
* @param pathServiceSid The service_sid
* @param pathSid The sid
* @return DocumentUpdater capable of executing the update
*/
public static DocumentUpdater updater(final String pathServiceSid,
final String pathSid) {
return new DocumentUpdater(pathServiceSid, pathSid);
}
/**
* Converts a JSON String into a Document object using the provided
* ObjectMapper.
*
* @param json Raw JSON String
* @param objectMapper Jackson ObjectMapper
* @return Document object represented by the provided JSON
*/
public static Document fromJson(final String json, final ObjectMapper objectMapper) {
// Convert all checked exceptions to Runtime
try {
return objectMapper.readValue(json, Document.class);
} catch (final JsonMappingException | JsonParseException e) {
throw new ApiException(e.getMessage(), e);
} catch (final IOException e) {
throw new ApiConnectionException(e.getMessage(), e);
}
}
/**
* Converts a JSON InputStream into a Document object using the provided
* ObjectMapper.
*
* @param json Raw JSON InputStream
* @param objectMapper Jackson ObjectMapper
* @return Document object represented by the provided JSON
*/
public static Document fromJson(final InputStream json, final ObjectMapper objectMapper) {
// Convert all checked exceptions to Runtime
try {
return objectMapper.readValue(json, Document.class);
} catch (final JsonMappingException | JsonParseException e) {
throw new ApiException(e.getMessage(), e);
} catch (final IOException e) {
throw new ApiConnectionException(e.getMessage(), e);
}
}
private final String sid;
private final String uniqueName;
private final String accountSid;
private final String serviceSid;
private final URI url;
private final Map links;
private final String revision;
private final Map data;
private final DateTime dateExpires;
private final DateTime dateCreated;
private final DateTime dateUpdated;
private final String createdBy;
@JsonCreator
private Document(@JsonProperty("sid")
final String sid,
@JsonProperty("unique_name")
final String uniqueName,
@JsonProperty("account_sid")
final String accountSid,
@JsonProperty("service_sid")
final String serviceSid,
@JsonProperty("url")
final URI url,
@JsonProperty("links")
final Map links,
@JsonProperty("revision")
final String revision,
@JsonProperty("data")
final Map data,
@JsonProperty("date_expires")
final String dateExpires,
@JsonProperty("date_created")
final String dateCreated,
@JsonProperty("date_updated")
final String dateUpdated,
@JsonProperty("created_by")
final String createdBy) {
this.sid = sid;
this.uniqueName = uniqueName;
this.accountSid = accountSid;
this.serviceSid = serviceSid;
this.url = url;
this.links = links;
this.revision = revision;
this.data = data;
this.dateExpires = DateConverter.iso8601DateTimeFromString(dateExpires);
this.dateCreated = DateConverter.iso8601DateTimeFromString(dateCreated);
this.dateUpdated = DateConverter.iso8601DateTimeFromString(dateUpdated);
this.createdBy = createdBy;
}
/**
* Returns The The unique 34-character SID identifier of the Document..
*
* @return The unique 34-character SID identifier of the Document.
*/
public final String getSid() {
return this.sid;
}
/**
* Returns The The unique and addressable name of this Document..
*
* @return The unique and addressable name of this Document.
*/
public final String getUniqueName() {
return this.uniqueName;
}
/**
* Returns The The unique SID identifier of the Twilio Account..
*
* @return The unique SID identifier of the Twilio Account.
*/
public final String getAccountSid() {
return this.accountSid;
}
/**
* Returns The The unique SID identifier of the Service Instance that hosts this
* Document..
*
* @return The unique SID identifier of the Service Instance that hosts this
* Document.
*/
public final String getServiceSid() {
return this.serviceSid;
}
/**
* Returns The The absolute URL for this Document..
*
* @return The absolute URL for this Document.
*/
public final URI getUrl() {
return this.url;
}
/**
* Returns The A dictionary of URL links to nested resources of this Document..
*
* @return A dictionary of URL links to nested resources of this Document.
*/
public final Map getLinks() {
return this.links;
}
/**
* Returns The Contains the current revision of this Document, represented by a
* string identifier..
*
* @return Contains the current revision of this Document, represented by a
* string identifier.
*/
public final String getRevision() {
return this.revision;
}
/**
* Returns The Contains arbitrary user-defined, schema-less data that this
* Document stores, represented by a JSON object, up to 16KB..
*
* @return Contains arbitrary user-defined, schema-less data that this Document
* stores, represented by a JSON object, up to 16KB.
*/
public final Map getData() {
return this.data;
}
/**
* Returns The Contains the date this Document expires and gets deleted
* automatically..
*
* @return Contains the date this Document expires and gets deleted
* automatically.
*/
public final DateTime getDateExpires() {
return this.dateExpires;
}
/**
* Returns The The date this Document was created, given in UTC ISO 8601
* format..
*
* @return The date this Document was created, given in UTC ISO 8601 format.
*/
public final DateTime getDateCreated() {
return this.dateCreated;
}
/**
* Returns The Specifies the date this Document was last updated, given in UTC
* ISO 8601 format..
*
* @return Specifies the date this Document was last updated, given in UTC ISO
* 8601 format.
*/
public final DateTime getDateUpdated() {
return this.dateUpdated;
}
/**
* Returns The The identity of the Document creator..
*
* @return The identity of the Document creator.
*/
public final String getCreatedBy() {
return this.createdBy;
}
@Override
public boolean equals(final Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
Document other = (Document) o;
return Objects.equals(sid, other.sid) &&
Objects.equals(uniqueName, other.uniqueName) &&
Objects.equals(accountSid, other.accountSid) &&
Objects.equals(serviceSid, other.serviceSid) &&
Objects.equals(url, other.url) &&
Objects.equals(links, other.links) &&
Objects.equals(revision, other.revision) &&
Objects.equals(data, other.data) &&
Objects.equals(dateExpires, other.dateExpires) &&
Objects.equals(dateCreated, other.dateCreated) &&
Objects.equals(dateUpdated, other.dateUpdated) &&
Objects.equals(createdBy, other.createdBy);
}
@Override
public int hashCode() {
return Objects.hash(sid,
uniqueName,
accountSid,
serviceSid,
url,
links,
revision,
data,
dateExpires,
dateCreated,
dateUpdated,
createdBy);
}
@Override
public String toString() {
return MoreObjects.toStringHelper(this)
.add("sid", sid)
.add("uniqueName", uniqueName)
.add("accountSid", accountSid)
.add("serviceSid", serviceSid)
.add("url", url)
.add("links", links)
.add("revision", revision)
.add("data", data)
.add("dateExpires", dateExpires)
.add("dateCreated", dateCreated)
.add("dateUpdated", dateUpdated)
.add("createdBy", createdBy)
.toString();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy