com.twilio.rest.api.v2010.account.NewSigningKey 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.api.v2010.account;
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.twilio.base.Resource;
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 lombok.ToString;
import java.io.IOException;
import java.io.InputStream;
import java.time.ZonedDateTime;
import java.util.Map;
import java.util.Objects;
@JsonIgnoreProperties(ignoreUnknown = true)
@ToString
public class NewSigningKey extends Resource {
private static final long serialVersionUID = 233349476807945L;
/**
* Create a NewSigningKeyCreator to execute create.
*
* @param pathAccountSid The SID of the Account that will be responsible for
* the new Key resource
* @return NewSigningKeyCreator capable of executing the create
*/
public static NewSigningKeyCreator creator(final String pathAccountSid) {
return new NewSigningKeyCreator(pathAccountSid);
}
/**
* Create a NewSigningKeyCreator to execute create.
*
* @return NewSigningKeyCreator capable of executing the create
*/
public static NewSigningKeyCreator creator() {
return new NewSigningKeyCreator();
}
/**
* Converts a JSON String into a NewSigningKey object using the provided
* ObjectMapper.
*
* @param json Raw JSON String
* @param objectMapper Jackson ObjectMapper
* @return NewSigningKey object represented by the provided JSON
*/
public static NewSigningKey fromJson(final String json, final ObjectMapper objectMapper) {
// Convert all checked exceptions to Runtime
try {
return objectMapper.readValue(json, NewSigningKey.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 NewSigningKey object using the provided
* ObjectMapper.
*
* @param json Raw JSON InputStream
* @param objectMapper Jackson ObjectMapper
* @return NewSigningKey object represented by the provided JSON
*/
public static NewSigningKey fromJson(final InputStream json, final ObjectMapper objectMapper) {
// Convert all checked exceptions to Runtime
try {
return objectMapper.readValue(json, NewSigningKey.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 friendlyName;
private final ZonedDateTime dateCreated;
private final ZonedDateTime dateUpdated;
private final String secret;
@JsonCreator
private NewSigningKey(@JsonProperty("sid")
final String sid,
@JsonProperty("friendly_name")
final String friendlyName,
@JsonProperty("date_created")
final String dateCreated,
@JsonProperty("date_updated")
final String dateUpdated,
@JsonProperty("secret")
final String secret) {
this.sid = sid;
this.friendlyName = friendlyName;
this.dateCreated = DateConverter.rfc2822DateTimeFromString(dateCreated);
this.dateUpdated = DateConverter.rfc2822DateTimeFromString(dateUpdated);
this.secret = secret;
}
/**
* Returns The unique string that identifies the resource.
*
* @return The unique string that identifies the resource
*/
public final String getSid() {
return this.sid;
}
/**
* Returns The string that you assigned to describe the resource.
*
* @return The string that you assigned to describe the resource
*/
public final String getFriendlyName() {
return this.friendlyName;
}
/**
* Returns The RFC 2822 date and time in GMT that the resource was created.
*
* @return The RFC 2822 date and time in GMT that the resource was created
*/
public final ZonedDateTime getDateCreated() {
return this.dateCreated;
}
/**
* Returns The RFC 2822 date and time in GMT that the resource was last updated.
*
* @return The RFC 2822 date and time in GMT that the resource was last updated
*/
public final ZonedDateTime getDateUpdated() {
return this.dateUpdated;
}
/**
* Returns The secret your application uses to sign Access Tokens and to
* authenticate to the REST API..
*
* @return The secret your application uses to sign Access Tokens and to
* authenticate to the REST API.
*/
public final String getSecret() {
return this.secret;
}
@Override
public boolean equals(final Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
NewSigningKey other = (NewSigningKey) o;
return Objects.equals(sid, other.sid) &&
Objects.equals(friendlyName, other.friendlyName) &&
Objects.equals(dateCreated, other.dateCreated) &&
Objects.equals(dateUpdated, other.dateUpdated) &&
Objects.equals(secret, other.secret);
}
@Override
public int hashCode() {
return Objects.hash(sid,
friendlyName,
dateCreated,
dateUpdated,
secret);
}
}