001package com.plivo.api.models.lookup;
002
003import com.fasterxml.jackson.databind.JsonNode;
004import com.fasterxml.jackson.annotation.JsonProperty;
005import com.fasterxml.jackson.annotation.JsonIgnore;
006import com.fasterxml.jackson.databind.ObjectMapper;
007import com.fasterxml.jackson.core.JsonProcessingException;
008
009import com.plivo.api.models.base.BaseResource;
010
011
012public class Number extends BaseResource{
013    private String apiId;
014    private String phoneNumber;
015    private String resourceURI;
016    private Country country;
017    private Format format;
018    private Carrier carrier;
019
020    private int statusCode;
021
022    @Override
023    @JsonProperty("api_id")
024    public String getApiId() {
025            return apiId;
026    }
027
028    @JsonProperty("phone_number")
029    public String getPhoneNumber() {
030            return phoneNumber;
031    }
032
033    @JsonProperty("country")
034    public Country getCountry() {
035            return country;
036    }
037
038    @JsonProperty("format")
039    public Format getFormat() {
040            return format;
041    }
042
043    @JsonProperty("carrier")
044    public Carrier getCarrier() {
045            return carrier;
046    }
047
048    @JsonProperty("resource_uri")
049    public String getResourceURI() {
050            return resourceURI;
051    }
052
053    @Override
054    public String toString() {
055        try {
056            return new ObjectMapper().writerWithDefaultPrettyPrinter().writeValueAsString(this);
057        } catch (com.fasterxml.jackson.core.JsonProcessingException e) {
058            e.printStackTrace();
059        } catch (Exception e) {
060           e.printStackTrace();
061        }
062
063        return null;
064    }
065
066    @JsonIgnore
067    public String getId() {
068            return apiId;
069    }
070
071    public static Lookup getter(String number, String type) {
072        return new Lookup(number, type);
073    }
074
075    public static Lookup getter(String number) {
076        return new Lookup(number, "carrier");
077    }
078}