) status;
+ }
+
public static Builder builder() {
return new Builder();
}
@@ -191,6 +210,25 @@ public PaymentsFilter withType(Optional extends PaymentsFilterType> type) {
return this;
}
+ /**
+ * Filter by payment status
+ */
+ public PaymentsFilter withStatus(PaymentsFilterPaymentStatus status) {
+ Utils.checkNotNull(status, "status");
+ this.status = Optional.ofNullable(status);
+ return this;
+ }
+
+
+ /**
+ * Filter by payment status
+ */
+ public PaymentsFilter withStatus(Optional extends PaymentsFilterPaymentStatus> status) {
+ Utils.checkNotNull(status, "status");
+ this.status = status;
+ return this;
+ }
+
@Override
public boolean equals(java.lang.Object o) {
if (this == o) {
@@ -206,14 +244,16 @@ public boolean equals(java.lang.Object o) {
Utils.enhancedDeepEquals(this.billId, other.billId) &&
Utils.enhancedDeepEquals(this.supplierId, other.supplierId) &&
Utils.enhancedDeepEquals(this.customerId, other.customerId) &&
- Utils.enhancedDeepEquals(this.type, other.type);
+ Utils.enhancedDeepEquals(this.type, other.type) &&
+ Utils.enhancedDeepEquals(this.status, other.status);
}
@Override
public int hashCode() {
return Utils.enhancedHash(
updatedSince, invoiceId, billId,
- supplierId, customerId, type);
+ supplierId, customerId, type,
+ status);
}
@Override
@@ -224,7 +264,8 @@ public String toString() {
"billId", billId,
"supplierId", supplierId,
"customerId", customerId,
- "type", type);
+ "type", type,
+ "status", status);
}
@SuppressWarnings("UnusedReturnValue")
@@ -242,6 +283,8 @@ public final static class Builder {
private Optional extends PaymentsFilterType> type = Optional.empty();
+ private Optional extends PaymentsFilterPaymentStatus> status = Optional.empty();
+
private Builder() {
// force use of static builder() method
}
@@ -330,11 +373,31 @@ public Builder type(Optional extends PaymentsFilterType> type) {
return this;
}
+
+ /**
+ * Filter by payment status
+ */
+ public Builder status(PaymentsFilterPaymentStatus status) {
+ Utils.checkNotNull(status, "status");
+ this.status = Optional.ofNullable(status);
+ return this;
+ }
+
+ /**
+ * Filter by payment status
+ */
+ public Builder status(Optional extends PaymentsFilterPaymentStatus> status) {
+ Utils.checkNotNull(status, "status");
+ this.status = status;
+ return this;
+ }
+
public PaymentsFilter build() {
return new PaymentsFilter(
updatedSince, invoiceId, billId,
- supplierId, customerId, type);
+ supplierId, customerId, type,
+ status);
}
}
diff --git a/src/main/java/com/apideck/unify/models/components/PaymentsFilterPaymentStatus.java b/src/main/java/com/apideck/unify/models/components/PaymentsFilterPaymentStatus.java
new file mode 100644
index 00000000..775b6c0f
--- /dev/null
+++ b/src/main/java/com/apideck/unify/models/components/PaymentsFilterPaymentStatus.java
@@ -0,0 +1,148 @@
+/*
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
+ */
+package com.apideck.unify.models.components;
+
+import com.fasterxml.jackson.annotation.JsonCreator;
+import com.fasterxml.jackson.annotation.JsonValue;
+import java.lang.Override;
+import java.lang.String;
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Optional;
+
+/**
+ * Wrapper for an "open" enum that can handle unknown values from API responses
+ * without runtime errors. Instances are immutable singletons with reference equality.
+ * Use {@code asEnum()} for switch expressions.
+ */
+/**
+ * PaymentsFilterPaymentStatus
+ *
+ * Filter by payment status
+ */
+public class PaymentsFilterPaymentStatus {
+
+ public static final PaymentsFilterPaymentStatus DRAFT = new PaymentsFilterPaymentStatus("draft");
+ public static final PaymentsFilterPaymentStatus AUTHORISED = new PaymentsFilterPaymentStatus("authorised");
+ public static final PaymentsFilterPaymentStatus REJECTED = new PaymentsFilterPaymentStatus("rejected");
+ public static final PaymentsFilterPaymentStatus PAID = new PaymentsFilterPaymentStatus("paid");
+ public static final PaymentsFilterPaymentStatus VOIDED = new PaymentsFilterPaymentStatus("voided");
+ public static final PaymentsFilterPaymentStatus DELETED = new PaymentsFilterPaymentStatus("deleted");
+
+ // This map will grow whenever a Color gets created with a new
+ // unrecognized value (a potential memory leak if the user is not
+ // careful). Keep this field lower case to avoid clashing with
+ // generated member names which will always be upper cased (Java
+ // convention)
+ private static final Map values = createValuesMap();
+ private static final Map enums = createEnumsMap();
+
+ private final String value;
+
+ private PaymentsFilterPaymentStatus(String value) {
+ this.value = value;
+ }
+
+ /**
+ * Returns a PaymentsFilterPaymentStatus with the given value. For a specific value the
+ * returned object will always be a singleton so reference equality
+ * is satisfied when the values are the same.
+ *
+ * @param value value to be wrapped as PaymentsFilterPaymentStatus
+ */
+ @JsonCreator
+ public static PaymentsFilterPaymentStatus of(String value) {
+ synchronized (PaymentsFilterPaymentStatus.class) {
+ return values.computeIfAbsent(value, v -> new PaymentsFilterPaymentStatus(v));
+ }
+ }
+
+ @JsonValue
+ public String value() {
+ return value;
+ }
+
+ public Optional asEnum() {
+ return Optional.ofNullable(enums.getOrDefault(value, null));
+ }
+
+ public boolean isKnown() {
+ return asEnum().isPresent();
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(value);
+ }
+
+ @Override
+ public boolean equals(java.lang.Object obj) {
+ if (this == obj)
+ return true;
+ if (obj == null)
+ return false;
+ if (getClass() != obj.getClass())
+ return false;
+ PaymentsFilterPaymentStatus other = (PaymentsFilterPaymentStatus) obj;
+ return Objects.equals(value, other.value);
+ }
+
+ @Override
+ public String toString() {
+ return "PaymentsFilterPaymentStatus [value=" + value + "]";
+ }
+
+ // return an array just like an enum
+ public static PaymentsFilterPaymentStatus[] values() {
+ synchronized (PaymentsFilterPaymentStatus.class) {
+ return values.values().toArray(new PaymentsFilterPaymentStatus[] {});
+ }
+ }
+
+ private static final Map createValuesMap() {
+ Map map = new LinkedHashMap<>();
+ map.put("draft", DRAFT);
+ map.put("authorised", AUTHORISED);
+ map.put("rejected", REJECTED);
+ map.put("paid", PAID);
+ map.put("voided", VOIDED);
+ map.put("deleted", DELETED);
+ return map;
+ }
+
+ private static final Map createEnumsMap() {
+ Map map = new HashMap<>();
+ map.put("draft", PaymentsFilterPaymentStatusEnum.DRAFT);
+ map.put("authorised", PaymentsFilterPaymentStatusEnum.AUTHORISED);
+ map.put("rejected", PaymentsFilterPaymentStatusEnum.REJECTED);
+ map.put("paid", PaymentsFilterPaymentStatusEnum.PAID);
+ map.put("voided", PaymentsFilterPaymentStatusEnum.VOIDED);
+ map.put("deleted", PaymentsFilterPaymentStatusEnum.DELETED);
+ return map;
+ }
+
+
+ public enum PaymentsFilterPaymentStatusEnum {
+
+ DRAFT("draft"),
+ AUTHORISED("authorised"),
+ REJECTED("rejected"),
+ PAID("paid"),
+ VOIDED("voided"),
+ DELETED("deleted"),;
+
+ private final String value;
+
+ private PaymentsFilterPaymentStatusEnum(String value) {
+ this.value = value;
+ }
+
+ public String value() {
+ return value;
+ }
+ }
+}
+
diff --git a/src/main/java/com/apideck/unify/models/components/RebillStatus.java b/src/main/java/com/apideck/unify/models/components/RebillStatus.java
index a04d8083..99175d68 100644
--- a/src/main/java/com/apideck/unify/models/components/RebillStatus.java
+++ b/src/main/java/com/apideck/unify/models/components/RebillStatus.java
@@ -28,6 +28,7 @@ public class RebillStatus {
public static final RebillStatus PENDING = new RebillStatus("pending");
public static final RebillStatus BILLED = new RebillStatus("billed");
public static final RebillStatus VOIDED = new RebillStatus("voided");
+ public static final RebillStatus OTHER = new RebillStatus("other");
// This map will grow whenever a Color gets created with a new
// unrecognized value (a potential memory leak if the user is not
@@ -104,6 +105,7 @@ private static final Map createValuesMap() {
map.put("pending", PENDING);
map.put("billed", BILLED);
map.put("voided", VOIDED);
+ map.put("other", OTHER);
return map;
}
@@ -112,6 +114,7 @@ private static final Map createEnumsMap() {
map.put("pending", RebillStatusEnum.PENDING);
map.put("billed", RebillStatusEnum.BILLED);
map.put("voided", RebillStatusEnum.VOIDED);
+ map.put("other", RebillStatusEnum.OTHER);
return map;
}
@@ -120,7 +123,8 @@ public enum RebillStatusEnum {
PENDING("pending"),
BILLED("billed"),
- VOIDED("voided"),;
+ VOIDED("voided"),
+ OTHER("other"),;
private final String value;