All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.jclouds.packet.domain.AutoValue_Device Maven / Gradle / Ivy

The newest version!

package org.jclouds.packet.domain;

import java.util.Date;
import java.util.List;
import javax.annotation.Generated;
import org.jclouds.javax.annotation.Nullable;

@Generated("com.google.auto.value.processor.AutoValueProcessor")
 final class AutoValue_Device extends Device {

  private final String id;
  private final String shortId;
  private final String hostname;
  private final String description;
  private final Device.State state;
  private final List tags;
  private final String billingCycle;
  private final String user;
  private final String iqn;
  private final Boolean locked;
  private final String bondingMode;
  private final Date createdAt;
  private final Date updatedAt;
  private final OperatingSystem operatingSystem;
  private final Facility facility;
  private final Href project;
  private final List sshKeys;
  private final Href projectLite;
  private final List volumes;
  private final List ipAddresses;
  private final List provisioningEvents;
  private final Plan plan;
  private final String rootPassword;
  private final String userdata;
  private final String href;

  AutoValue_Device(
      String id,
      String shortId,
      String hostname,
      @Nullable String description,
      Device.State state,
      List tags,
      String billingCycle,
      String user,
      String iqn,
      Boolean locked,
      String bondingMode,
      Date createdAt,
      Date updatedAt,
      OperatingSystem operatingSystem,
      Facility facility,
      Href project,
      List sshKeys,
      Href projectLite,
      List volumes,
      List ipAddresses,
      List provisioningEvents,
      Plan plan,
      @Nullable String rootPassword,
      String userdata,
      String href) {
    if (id == null) {
      throw new NullPointerException("Null id");
    }
    this.id = id;
    if (shortId == null) {
      throw new NullPointerException("Null shortId");
    }
    this.shortId = shortId;
    if (hostname == null) {
      throw new NullPointerException("Null hostname");
    }
    this.hostname = hostname;
    this.description = description;
    if (state == null) {
      throw new NullPointerException("Null state");
    }
    this.state = state;
    if (tags == null) {
      throw new NullPointerException("Null tags");
    }
    this.tags = tags;
    if (billingCycle == null) {
      throw new NullPointerException("Null billingCycle");
    }
    this.billingCycle = billingCycle;
    if (user == null) {
      throw new NullPointerException("Null user");
    }
    this.user = user;
    if (iqn == null) {
      throw new NullPointerException("Null iqn");
    }
    this.iqn = iqn;
    if (locked == null) {
      throw new NullPointerException("Null locked");
    }
    this.locked = locked;
    if (bondingMode == null) {
      throw new NullPointerException("Null bondingMode");
    }
    this.bondingMode = bondingMode;
    if (createdAt == null) {
      throw new NullPointerException("Null createdAt");
    }
    this.createdAt = createdAt;
    if (updatedAt == null) {
      throw new NullPointerException("Null updatedAt");
    }
    this.updatedAt = updatedAt;
    if (operatingSystem == null) {
      throw new NullPointerException("Null operatingSystem");
    }
    this.operatingSystem = operatingSystem;
    if (facility == null) {
      throw new NullPointerException("Null facility");
    }
    this.facility = facility;
    if (project == null) {
      throw new NullPointerException("Null project");
    }
    this.project = project;
    if (sshKeys == null) {
      throw new NullPointerException("Null sshKeys");
    }
    this.sshKeys = sshKeys;
    if (projectLite == null) {
      throw new NullPointerException("Null projectLite");
    }
    this.projectLite = projectLite;
    if (volumes == null) {
      throw new NullPointerException("Null volumes");
    }
    this.volumes = volumes;
    if (ipAddresses == null) {
      throw new NullPointerException("Null ipAddresses");
    }
    this.ipAddresses = ipAddresses;
    if (provisioningEvents == null) {
      throw new NullPointerException("Null provisioningEvents");
    }
    this.provisioningEvents = provisioningEvents;
    if (plan == null) {
      throw new NullPointerException("Null plan");
    }
    this.plan = plan;
    this.rootPassword = rootPassword;
    if (userdata == null) {
      throw new NullPointerException("Null userdata");
    }
    this.userdata = userdata;
    if (href == null) {
      throw new NullPointerException("Null href");
    }
    this.href = href;
  }

  @Override
  public String id() {
    return id;
  }

  @Override
  public String shortId() {
    return shortId;
  }

  @Override
  public String hostname() {
    return hostname;
  }

  @Nullable
  @Override
  public String description() {
    return description;
  }

  @Override
  public Device.State state() {
    return state;
  }

  @Override
  public List tags() {
    return tags;
  }

  @Override
  public String billingCycle() {
    return billingCycle;
  }

  @Override
  public String user() {
    return user;
  }

  @Override
  public String iqn() {
    return iqn;
  }

  @Override
  public Boolean locked() {
    return locked;
  }

  @Override
  public String bondingMode() {
    return bondingMode;
  }

  @Override
  public Date createdAt() {
    return createdAt;
  }

  @Override
  public Date updatedAt() {
    return updatedAt;
  }

  @Override
  public OperatingSystem operatingSystem() {
    return operatingSystem;
  }

  @Override
  public Facility facility() {
    return facility;
  }

  @Override
  public Href project() {
    return project;
  }

  @Override
  public List sshKeys() {
    return sshKeys;
  }

  @Override
  public Href projectLite() {
    return projectLite;
  }

  @Override
  public List volumes() {
    return volumes;
  }

  @Override
  public List ipAddresses() {
    return ipAddresses;
  }

  @Override
  public List provisioningEvents() {
    return provisioningEvents;
  }

  @Override
  public Plan plan() {
    return plan;
  }

  @Nullable
  @Override
  public String rootPassword() {
    return rootPassword;
  }

  @Override
  public String userdata() {
    return userdata;
  }

  @Override
  public String href() {
    return href;
  }

  @Override
  public String toString() {
    return "Device{"
        + "id=" + id + ", "
        + "shortId=" + shortId + ", "
        + "hostname=" + hostname + ", "
        + "description=" + description + ", "
        + "state=" + state + ", "
        + "tags=" + tags + ", "
        + "billingCycle=" + billingCycle + ", "
        + "user=" + user + ", "
        + "iqn=" + iqn + ", "
        + "locked=" + locked + ", "
        + "bondingMode=" + bondingMode + ", "
        + "createdAt=" + createdAt + ", "
        + "updatedAt=" + updatedAt + ", "
        + "operatingSystem=" + operatingSystem + ", "
        + "facility=" + facility + ", "
        + "project=" + project + ", "
        + "sshKeys=" + sshKeys + ", "
        + "projectLite=" + projectLite + ", "
        + "volumes=" + volumes + ", "
        + "ipAddresses=" + ipAddresses + ", "
        + "provisioningEvents=" + provisioningEvents + ", "
        + "plan=" + plan + ", "
        + "rootPassword=" + rootPassword + ", "
        + "userdata=" + userdata + ", "
        + "href=" + href
        + "}";
  }

  @Override
  public boolean equals(Object o) {
    if (o == this) {
      return true;
    }
    if (o instanceof Device) {
      Device that = (Device) o;
      return (this.id.equals(that.id()))
           && (this.shortId.equals(that.shortId()))
           && (this.hostname.equals(that.hostname()))
           && ((this.description == null) ? (that.description() == null) : this.description.equals(that.description()))
           && (this.state.equals(that.state()))
           && (this.tags.equals(that.tags()))
           && (this.billingCycle.equals(that.billingCycle()))
           && (this.user.equals(that.user()))
           && (this.iqn.equals(that.iqn()))
           && (this.locked.equals(that.locked()))
           && (this.bondingMode.equals(that.bondingMode()))
           && (this.createdAt.equals(that.createdAt()))
           && (this.updatedAt.equals(that.updatedAt()))
           && (this.operatingSystem.equals(that.operatingSystem()))
           && (this.facility.equals(that.facility()))
           && (this.project.equals(that.project()))
           && (this.sshKeys.equals(that.sshKeys()))
           && (this.projectLite.equals(that.projectLite()))
           && (this.volumes.equals(that.volumes()))
           && (this.ipAddresses.equals(that.ipAddresses()))
           && (this.provisioningEvents.equals(that.provisioningEvents()))
           && (this.plan.equals(that.plan()))
           && ((this.rootPassword == null) ? (that.rootPassword() == null) : this.rootPassword.equals(that.rootPassword()))
           && (this.userdata.equals(that.userdata()))
           && (this.href.equals(that.href()));
    }
    return false;
  }

  @Override
  public int hashCode() {
    int h = 1;
    h *= 1000003;
    h ^= this.id.hashCode();
    h *= 1000003;
    h ^= this.shortId.hashCode();
    h *= 1000003;
    h ^= this.hostname.hashCode();
    h *= 1000003;
    h ^= (description == null) ? 0 : this.description.hashCode();
    h *= 1000003;
    h ^= this.state.hashCode();
    h *= 1000003;
    h ^= this.tags.hashCode();
    h *= 1000003;
    h ^= this.billingCycle.hashCode();
    h *= 1000003;
    h ^= this.user.hashCode();
    h *= 1000003;
    h ^= this.iqn.hashCode();
    h *= 1000003;
    h ^= this.locked.hashCode();
    h *= 1000003;
    h ^= this.bondingMode.hashCode();
    h *= 1000003;
    h ^= this.createdAt.hashCode();
    h *= 1000003;
    h ^= this.updatedAt.hashCode();
    h *= 1000003;
    h ^= this.operatingSystem.hashCode();
    h *= 1000003;
    h ^= this.facility.hashCode();
    h *= 1000003;
    h ^= this.project.hashCode();
    h *= 1000003;
    h ^= this.sshKeys.hashCode();
    h *= 1000003;
    h ^= this.projectLite.hashCode();
    h *= 1000003;
    h ^= this.volumes.hashCode();
    h *= 1000003;
    h ^= this.ipAddresses.hashCode();
    h *= 1000003;
    h ^= this.provisioningEvents.hashCode();
    h *= 1000003;
    h ^= this.plan.hashCode();
    h *= 1000003;
    h ^= (rootPassword == null) ? 0 : this.rootPassword.hashCode();
    h *= 1000003;
    h ^= this.userdata.hashCode();
    h *= 1000003;
    h ^= this.href.hashCode();
    return h;
  }

}