record IapDevice()

in sources/src/main/java/com/google/solutions/jitaccess/web/IapDevice.java [33:57]


record IapDevice(String deviceId, List<String> accessLevels) implements Device {
  public static final IapDevice UNKNOWN = new IapDevice("unknown", List.of());

  public IapDevice {
    Preconditions.checkNotNull(deviceId, "deviceId");
    Preconditions.checkNotNull(accessLevels, "accessLevels");
  }

  @Override
  public String toString() {
    return this.deviceId;
  }

  @Override
  public boolean equals(@Nullable Object o) {
    if (this == o) {
      return true;
    }
    if (o == null || getClass() != o.getClass()) {
      return false;
    }
    var that = (IapDevice) o;
    return this.deviceId.equals(that.deviceId) && this.accessLevels.equals(that.accessLevels);
  }
}