From 7e0a1fc211be86c2389d8623de57bf64b5f9a615 Mon Sep 17 00:00:00 2001 From: speakeasybot Date: Tue, 15 Sep 2026 08:43:42 +0000 Subject: [PATCH 1/2] ## Java SDK Changes: * `gr4vy.transactions.capture()`: * `request.transactionCaptureCreate.tracking` **Added** --- .speakeasy/gen.lock | 46 ++-- .speakeasy/gen.yaml | 2 +- .speakeasy/workflow.lock | 10 +- README.md | 4 +- RELEASES.md | 12 +- docs/models/components/ShippingCarrier.md | 42 ++++ docs/models/components/Tracking.md | 10 + .../components/TransactionCaptureCreate.md | 1 + gradle.properties | 2 +- .../java/com/gr4vy/sdk/SDKConfiguration.java | 2 +- .../models/components/ShippingCarrier.java | 215 ++++++++++++++++++ .../gr4vy/sdk/models/components/Tracking.java | 198 ++++++++++++++++ .../components/TransactionCaptureCreate.java | 69 +++++- 13 files changed, 584 insertions(+), 29 deletions(-) create mode 100644 docs/models/components/ShippingCarrier.md create mode 100644 docs/models/components/Tracking.md create mode 100644 src/main/java/com/gr4vy/sdk/models/components/ShippingCarrier.java create mode 100644 src/main/java/com/gr4vy/sdk/models/components/Tracking.java diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index 2a6c69e6..d4a62486 100644 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,19 +1,19 @@ lockVersion: 2.0.0 id: 5bbaa3a9-baa0-471b-ba6a-13fd88e8c119 management: - docChecksum: 6ddd079e69ea367d395f5616ed7f350b + docChecksum: d1c97500b30e45177a1d800b48bc8aac docVersion: 1.0.0 speakeasyVersion: 1.797.0 generationVersion: 2.937.18 - releaseVersion: 2.19.8 - configChecksum: 41a25bb72112d1bf416ec8df41271b32 + releaseVersion: 2.19.9 + configChecksum: 5476e4544254fee4c118c497e2bd76b8 repoURL: https://github.com/gr4vy/gr4vy-java.git installationURL: https://github.com/gr4vy/gr4vy-java published: true persistentEdits: - generation_id: af6b5602-5620-4961-9d7c-886574706a78 - pristine_commit_hash: 61d7af96b0f405da702c00a7db27659df7e17094 - pristine_tree_hash: 0bdaa1c7c4c89c15326485d7d234881b7c127a69 + generation_id: 0f327cbe-c319-42e4-adf4-ae1ab6c06f6c + pristine_commit_hash: 5d5be6a223f9ad208b980aa1aa391e2889fd580e + pristine_tree_hash: 2cbea099f20e88f28a306e7ab3b4b4181b92b83d features: java: additionalDependencies: 0.1.0 @@ -1337,6 +1337,10 @@ trackedFiles: id: e497ca34f516 last_write_checksum: sha1:8021a733c69ea6535ba8ab73ea762050dd1f7c80 pristine_git_object: 301be4465d5881611e94ca49a6186e9b1e351772 + docs/models/components/ShippingCarrier.md: + id: 263de1323f9f + last_write_checksum: sha1:2a942fecd3c4174e9c6957542eb793bc532ae766 + pristine_git_object: 391a5776ecdab6122c8071ad0ab3e60ca5b25dc8 docs/models/components/ShippingDetails.md: id: 11ac13912bc0 last_write_checksum: sha1:5b47f924594638e498dddfd96d82d9c08d554f1c @@ -1477,6 +1481,10 @@ trackedFiles: id: 17888efae41e last_write_checksum: sha1:408d47f303407bf76a1d531b1bf8a12842bbd0b9 pristine_git_object: ce01164765781161afc5da5ac9f8e74761506636 + docs/models/components/Tracking.md: + id: 34646021f531 + last_write_checksum: sha1:826d787192800337be4845ba18f6faf2aa331284 + pristine_git_object: 905ad493ea3e7a0e8849b7815792d9d1d1ffd020 docs/models/components/Transaction.md: id: 860f2214deb0 last_write_checksum: sha1:a8dcd7f150e0d802c082a2c87379fb81f42988da @@ -1511,8 +1519,8 @@ trackedFiles: pristine_git_object: 103165f9ab976350b28b45b43d928114ace6ce40 docs/models/components/TransactionCaptureCreate.md: id: fa6f6819cb5d - last_write_checksum: sha1:1c1ab12ff4317624e3e8de7b40fdcf6b00712472 - pristine_git_object: 42df151cdf17bc449de7a5e710b9d116e3d9468c + last_write_checksum: sha1:2073205f8b9f4da78cbeec16014e779f3e5503dd + pristine_git_object: 428794d12ebb53b788c3a52a007b9fff3b2c4241 docs/models/components/TransactionConnectionOptions.md: id: 2a90ee52a662 last_write_checksum: sha1:19ac7c797b57a744823c778f2262934b0f4df781 @@ -2863,8 +2871,8 @@ trackedFiles: pristine_git_object: 15c4e4642f204ccb312d8814155b69e153b4e19b gradle.properties: id: 2afbb999f001 - last_write_checksum: sha1:8d1b8ff3d7546a2a99ad45c17808cff2324fa802 - pristine_git_object: 37788b59f1c37d76c4820a2f17de41cba9a222f3 + last_write_checksum: sha1:cc68fd3d5e8b25111e318969fa9332f6ef090b75 + pristine_git_object: e5b31e40b7772be78ca83ab2f04da822d20a3e37 gradle/wrapper/gradle-wrapper.jar: id: ec27dae6e852 last_write_checksum: sha1:f725fb1467084142d74fd7cd8eab691ab3442611 @@ -3207,8 +3215,8 @@ trackedFiles: pristine_git_object: b50475cc7f6041d63c4569256e4ff1850b20d30b src/main/java/com/gr4vy/sdk/SDKConfiguration.java: id: 73a7edeaca45 - last_write_checksum: sha1:55cecd86ebbc47f670393fbfec4fe793503a630b - pristine_git_object: 498f72708d704a56ea8753260d8ed16dc688c25f + last_write_checksum: sha1:c6120390dae998f5834f0b39180791a6f220fde0 + pristine_git_object: e430ac787b6f35326aabea7481049e3ac3da239e src/main/java/com/gr4vy/sdk/SecuritySource.java: id: 1b6add6b9b50 last_write_checksum: sha1:2f365cc823c6243188e83f4df618c9737fcee8bd @@ -4529,6 +4537,10 @@ trackedFiles: id: 10a9e9b7f968 last_write_checksum: sha1:c35d0d798918f0ca066f8a655040686ccfa0fcc5 pristine_git_object: b4dde7d13182ba257b9f10ebe7c0a1075959adfc + src/main/java/com/gr4vy/sdk/models/components/ShippingCarrier.java: + id: b381f5cdf6a2 + last_write_checksum: sha1:497b86b87d50ed6a0dc871ed288a5ab7a1fafa11 + pristine_git_object: e5bc9ea64c8a65640fcf58e75305bcba87f36816 src/main/java/com/gr4vy/sdk/models/components/ShippingDetails.java: id: cd0eb540da7f last_write_checksum: sha1:62790c74720e15aa9b7c7afc6a9463cb6a9e199a @@ -4673,6 +4685,10 @@ trackedFiles: id: da3cb8a0ef9e last_write_checksum: sha1:b56bc638ab263b757fd56dd17327cc6e8aed06e1 pristine_git_object: bb01652754c22faae31a1012053c577c8d9720c2 + src/main/java/com/gr4vy/sdk/models/components/Tracking.java: + id: f2d0603f72c9 + last_write_checksum: sha1:e3a9989c645fb6b54a16628f66ceb3e2b7650a80 + pristine_git_object: 8744f0816899aae193db9575a3a4c666686da6a4 src/main/java/com/gr4vy/sdk/models/components/Transaction.java: id: 3a6b6cb3c604 last_write_checksum: sha1:d2197e3676d22d928d9f25eec74e1405cf15c04b @@ -4707,8 +4723,8 @@ trackedFiles: pristine_git_object: 1199d52513a1e9b1a5acee53d35535f81d4590d6 src/main/java/com/gr4vy/sdk/models/components/TransactionCaptureCreate.java: id: ed5d05b51a07 - last_write_checksum: sha1:f85f1676a6eb1f7b1e0e71a54e67add60aff447c - pristine_git_object: 128b2ec34de631f2453cdd8696006f12f7ba7a82 + last_write_checksum: sha1:436c47c4b4055a0987ba5b42e634efbac24c2908 + pristine_git_object: 62046c9977b03ec5c305b415b5822e8b687e45af src/main/java/com/gr4vy/sdk/models/components/TransactionConnectionOptions.java: id: 31501e4506f3 last_write_checksum: sha1:90d3d0a8d022cbaae7f45ad28a4fd5343d549e81 @@ -12443,7 +12459,7 @@ examples: application/json: {"type": "error", "code": "gateway_timeout", "status": 504, "message": "Request could not be processed"} examplesVersion: 1.0.2 generatedTests: {} -releaseNotes: "## Java SDK Changes:\n* `gr4vy.transactions.create()`: \n * `request.transactionCreate.cartItems[]` **Changed**\n * `response.cartItems[]` **Changed**\n* `gr4vy.transactions.get()`: `response.cartItems[]` **Changed**\n* `gr4vy.transactions.update()`: `response.cartItems[]` **Changed**\n* `gr4vy.transactions.capture()`: \n * `request.transactionCaptureCreate.cartItems[]` **Changed**\n * `response.union(Transaction).cartItems[]` **Changed**\n* `gr4vy.transactions.void()`: `response.union(Transaction).cartItems[]` **Changed**\n* `gr4vy.transactions.cancel()`: `response.transaction.cartItems[]` **Changed**\n* `gr4vy.transactions.sync()`: `response.cartItems[]` **Changed**\n* `gr4vy.transactions.incrementAuthorization()`: `response.transaction.cartItems[]` **Changed**\n* `gr4vy.transactions.captures.list()`: `response.items[].cartItems[]` **Changed**\n* `gr4vy.transactions.captures.get()`: `response.cartItems[]` **Changed**\n* `gr4vy.paymentOptions.list()`: \n * `request.paymentOptionRequest.cartItems[]` **Changed**\n* `gr4vy.checkoutSessions.create()`: \n * `request.checkoutSessionCreate.cartItems[]` **Changed**\n * `response.cartItems[]` **Changed**\n* `gr4vy.checkoutSessions.update()`: \n * `request.checkoutSessionCreate.cartItems[]` **Changed**\n * `response.cartItems[]` **Changed**\n* `gr4vy.checkoutSessions.get()`: `response.cartItems[]` **Changed**\n* `gr4vy.paymentLinks.create()`: \n * `request.paymentLinkCreate.cartItems[]` **Changed**\n * `response.cartItems[]` **Changed**\n* `gr4vy.paymentLinks.list()`: `response.items[].cartItems[]` **Changed**\n* `gr4vy.paymentLinks.get()`: `response.cartItems[]` **Changed**\n" +releaseNotes: "## Java SDK Changes:\n* `gr4vy.transactions.capture()`: \n * `request.transactionCaptureCreate.tracking` **Added**\n" generatedFiles: - .gitattributes - USAGE.md diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index ccc6eeed..50a8de0a 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -30,7 +30,7 @@ generation: generateNewTests: false skipResponseBodyAssertions: false java: - version: 2.19.8 + version: 2.19.9 additionalDependencies: - testImplementation:org.junit.jupiter:junit-jupiter:5.10.0 - implementation:com.auth0:java-jwt:4.5.0 diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index aca36d64..40c1c8be 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -9,8 +9,8 @@ sources: - 1.0.0 openapi: sourceNamespace: openapi - sourceRevisionDigest: sha256:2068ff15cd7c08172960868860cc7ab74e8a64668cd16641ca532a45aa145b13 - sourceBlobDigest: sha256:978f7ee7c31ced41e64dfb1125c5b34e15c7a5119d4b444982db6fef879c5eb1 + sourceRevisionDigest: sha256:f0778b9a94e94250530b1b5c90892d2b297612517548c6db8f634d8d982821c3 + sourceBlobDigest: sha256:b6022cde1e5a5d1314572a303bc8767fa826cbd20e8ca8343a0f50985aa02e53 tags: - latest - 1.0.0 @@ -25,10 +25,10 @@ targets: java: source: openapi sourceNamespace: openapi - sourceRevisionDigest: sha256:2068ff15cd7c08172960868860cc7ab74e8a64668cd16641ca532a45aa145b13 - sourceBlobDigest: sha256:978f7ee7c31ced41e64dfb1125c5b34e15c7a5119d4b444982db6fef879c5eb1 + sourceRevisionDigest: sha256:f0778b9a94e94250530b1b5c90892d2b297612517548c6db8f634d8d982821c3 + sourceBlobDigest: sha256:b6022cde1e5a5d1314572a303bc8767fa826cbd20e8ca8343a0f50985aa02e53 codeSamplesNamespace: openapi-java-code-samples - codeSamplesRevisionDigest: sha256:20d6d42ba12c6ce0b0e1fe5e31ed48d789878834530fd088c0ebbd2670f55dac + codeSamplesRevisionDigest: sha256:046e3be73cd8a4bb1ecef1e8c1f6fb88635cbbd9bff6a21a65e1858ce8e2dfd2 workflow: workflowVersion: 1.0.0 speakeasyVersion: latest diff --git a/README.md b/README.md index c185825c..6df50e85 100644 --- a/README.md +++ b/README.md @@ -59,7 +59,7 @@ The samples below show how a published SDK artifact is used: Gradle: ```groovy -implementation 'com.gr4vy:sdk:2.19.8' +implementation 'com.gr4vy:sdk:2.19.9' ``` Maven: @@ -67,7 +67,7 @@ Maven: com.gr4vy sdk - 2.19.8 + 2.19.9 ``` diff --git a/RELEASES.md b/RELEASES.md index 574e493e..6fb89d9c 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -2248,4 +2248,14 @@ Based on: ### Generated - [java v2.19.8] . ### Releases -- [Maven Central v2.19.8] https://central.sonatype.com/artifact/com.gr4vy/sdk/2.19.8 - . \ No newline at end of file +- [Maven Central v2.19.8] https://central.sonatype.com/artifact/com.gr4vy/sdk/2.19.8 - . + +## 2026-09-15 08:41:58 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.797.0 (2.937.18) https://github.com/speakeasy-api/speakeasy +### Generated +- [java v2.19.9] . +### Releases +- [Maven Central v2.19.9] https://central.sonatype.com/artifact/com.gr4vy/sdk/2.19.9 - . \ No newline at end of file diff --git a/docs/models/components/ShippingCarrier.md b/docs/models/components/ShippingCarrier.md new file mode 100644 index 00000000..391a5776 --- /dev/null +++ b/docs/models/components/ShippingCarrier.md @@ -0,0 +1,42 @@ +# ShippingCarrier + +## Example Usage + +```java +import com.gr4vy.sdk.models.components.ShippingCarrier; + +ShippingCarrier value = ShippingCarrier.AMAZON; + +// Open enum: use .of() to create instances from custom string values +ShippingCarrier custom = ShippingCarrier.of("custom_value"); +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `AMAZON` | amazon | +| `BPOST` | bpost | +| `BRT` | brt | +| `CANADA_POST` | canada_post | +| `CESKA_POSTA` | ceska_posta | +| `DHL` | dhl | +| `DOORDASH` | doordash | +| `DPD` | dpd | +| `EVRI` | evri | +| `FEDEX` | fedex | +| `GLS` | gls | +| `INPOST` | inpost | +| `JT_EXPRESS` | jt_express | +| `LANDMARK_GLOBAL` | landmark_global | +| `LASERSHIP` | lasership | +| `PACKETA` | packeta | +| `PPL` | ppl | +| `PUROLATOR` | purolator | +| `RR_DONNELLEY` | rr_donnelley | +| `SDA` | sda | +| `UPS` | ups | +| `USPS` | usps | +| `VEHO` | veho | +| `OTHER` | other | \ No newline at end of file diff --git a/docs/models/components/Tracking.md b/docs/models/components/Tracking.md new file mode 100644 index 00000000..905ad493 --- /dev/null +++ b/docs/models/components/Tracking.md @@ -0,0 +1,10 @@ +# Tracking + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | +| `number` | *String* | :heavy_check_mark: | The tracking number for the shipment. | 1Z999AA10123456784 | +| `carrier` | [ShippingCarrier](../../models/components/ShippingCarrier.md) | :heavy_check_mark: | N/A | | +| `url` | *JsonNullable\* | :heavy_minus_sign: | The URL to track the shipment. | https://www.ups.com/track?tracknum=1Z999AA10123456784 | \ No newline at end of file diff --git a/docs/models/components/TransactionCaptureCreate.md b/docs/models/components/TransactionCaptureCreate.md index 42df151c..428794d1 100644 --- a/docs/models/components/TransactionCaptureCreate.md +++ b/docs/models/components/TransactionCaptureCreate.md @@ -10,6 +10,7 @@ Request body for capturing an authorized transaction. | `amount` | *JsonNullable\* | :heavy_minus_sign: | The amount to capture, in the smallest currency unit (e.g., cents). This must be less than or equal to the authorized amount, unless over-capture is available. | 1299 | | `airline` | [JsonNullable\](../../models/components/Airline.md) | :heavy_minus_sign: | The airline data to submit to the payment service during the capture call. | | | `cartItems` | List\<[CartItem](../../models/components/CartItem.md)> | :heavy_minus_sign: | An array of cart items that represents the line items of this capture. | | +| `tracking` | List\<[Tracking](../../models/components/Tracking.md)> | :heavy_minus_sign: | An array of shipment tracking details for this capture. | | | `final_` | *Optional\* | :heavy_minus_sign: | Whether this is marked as the final capture for the associated transaction. Must be `true` or omitted when multi-capture is not enabled; a value of `false` is only valid when multi-capture is available on the connection. | true | | `externalIdentifier` | *JsonNullable\* | :heavy_minus_sign: | An external identifier that can be used to match the capture against your own records. | capture-12345 | | `reauthorizeIfAuthorizationExpired` | *Optional\* | :heavy_minus_sign: | Whether this capture request should re-authorize the transaction if it has expired. | **Example 1:** true
**Example 2:** false | \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 37788b59..e5b31e40 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ groupId=com.gr4vy artifactId=sdk -version=2.19.8 +version=2.19.9 org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g diff --git a/src/main/java/com/gr4vy/sdk/SDKConfiguration.java b/src/main/java/com/gr4vy/sdk/SDKConfiguration.java index 498f7270..e430ac78 100644 --- a/src/main/java/com/gr4vy/sdk/SDKConfiguration.java +++ b/src/main/java/com/gr4vy/sdk/SDKConfiguration.java @@ -22,7 +22,7 @@ public class SDKConfiguration { private static final String LANGUAGE = "java"; public static final String OPENAPI_DOC_VERSION = "1.0.0"; - public static final String SDK_VERSION = "2.19.8"; + public static final String SDK_VERSION = "2.19.9"; public static final String GEN_VERSION = "2.937.18"; private static final String BASE_PACKAGE = "com.gr4vy.sdk"; public static final String USER_AGENT = diff --git a/src/main/java/com/gr4vy/sdk/models/components/ShippingCarrier.java b/src/main/java/com/gr4vy/sdk/models/components/ShippingCarrier.java new file mode 100644 index 00000000..e5bc9ea6 --- /dev/null +++ b/src/main/java/com/gr4vy/sdk/models/components/ShippingCarrier.java @@ -0,0 +1,215 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gr4vy.sdk.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. + */ +public class ShippingCarrier { + + public static final ShippingCarrier AMAZON = new ShippingCarrier("amazon"); + public static final ShippingCarrier BPOST = new ShippingCarrier("bpost"); + public static final ShippingCarrier BRT = new ShippingCarrier("brt"); + public static final ShippingCarrier CANADA_POST = new ShippingCarrier("canada_post"); + public static final ShippingCarrier CESKA_POSTA = new ShippingCarrier("ceska_posta"); + public static final ShippingCarrier DHL = new ShippingCarrier("dhl"); + public static final ShippingCarrier DOORDASH = new ShippingCarrier("doordash"); + public static final ShippingCarrier DPD = new ShippingCarrier("dpd"); + public static final ShippingCarrier EVRI = new ShippingCarrier("evri"); + public static final ShippingCarrier FEDEX = new ShippingCarrier("fedex"); + public static final ShippingCarrier GLS = new ShippingCarrier("gls"); + public static final ShippingCarrier INPOST = new ShippingCarrier("inpost"); + public static final ShippingCarrier JT_EXPRESS = new ShippingCarrier("jt_express"); + public static final ShippingCarrier LANDMARK_GLOBAL = new ShippingCarrier("landmark_global"); + public static final ShippingCarrier LASERSHIP = new ShippingCarrier("lasership"); + public static final ShippingCarrier PACKETA = new ShippingCarrier("packeta"); + public static final ShippingCarrier PPL = new ShippingCarrier("ppl"); + public static final ShippingCarrier PUROLATOR = new ShippingCarrier("purolator"); + public static final ShippingCarrier RR_DONNELLEY = new ShippingCarrier("rr_donnelley"); + public static final ShippingCarrier SDA = new ShippingCarrier("sda"); + public static final ShippingCarrier UPS = new ShippingCarrier("ups"); + public static final ShippingCarrier USPS = new ShippingCarrier("usps"); + public static final ShippingCarrier VEHO = new ShippingCarrier("veho"); + public static final ShippingCarrier OTHER = new ShippingCarrier("other"); + + // 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 ShippingCarrier(String value) { + this.value = value; + } + + /** + * Returns a ShippingCarrier 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 ShippingCarrier + */ + @JsonCreator + public static ShippingCarrier of(String value) { + synchronized (ShippingCarrier.class) { + return values.computeIfAbsent(value, v -> new ShippingCarrier(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; + ShippingCarrier other = (ShippingCarrier) obj; + return Objects.equals(value, other.value); + } + + @Override + public String toString() { + return "ShippingCarrier [value=" + value + "]"; + } + + // return an array just like an enum + public static ShippingCarrier[] values() { + synchronized (ShippingCarrier.class) { + return values.values().toArray(new ShippingCarrier[] {}); + } + } + + private static final Map createValuesMap() { + Map map = new LinkedHashMap<>(); + map.put("amazon", AMAZON); + map.put("bpost", BPOST); + map.put("brt", BRT); + map.put("canada_post", CANADA_POST); + map.put("ceska_posta", CESKA_POSTA); + map.put("dhl", DHL); + map.put("doordash", DOORDASH); + map.put("dpd", DPD); + map.put("evri", EVRI); + map.put("fedex", FEDEX); + map.put("gls", GLS); + map.put("inpost", INPOST); + map.put("jt_express", JT_EXPRESS); + map.put("landmark_global", LANDMARK_GLOBAL); + map.put("lasership", LASERSHIP); + map.put("packeta", PACKETA); + map.put("ppl", PPL); + map.put("purolator", PUROLATOR); + map.put("rr_donnelley", RR_DONNELLEY); + map.put("sda", SDA); + map.put("ups", UPS); + map.put("usps", USPS); + map.put("veho", VEHO); + map.put("other", OTHER); + return map; + } + + private static final Map createEnumsMap() { + Map map = new HashMap<>(); + map.put("amazon", ShippingCarrierEnum.AMAZON); + map.put("bpost", ShippingCarrierEnum.BPOST); + map.put("brt", ShippingCarrierEnum.BRT); + map.put("canada_post", ShippingCarrierEnum.CANADA_POST); + map.put("ceska_posta", ShippingCarrierEnum.CESKA_POSTA); + map.put("dhl", ShippingCarrierEnum.DHL); + map.put("doordash", ShippingCarrierEnum.DOORDASH); + map.put("dpd", ShippingCarrierEnum.DPD); + map.put("evri", ShippingCarrierEnum.EVRI); + map.put("fedex", ShippingCarrierEnum.FEDEX); + map.put("gls", ShippingCarrierEnum.GLS); + map.put("inpost", ShippingCarrierEnum.INPOST); + map.put("jt_express", ShippingCarrierEnum.JT_EXPRESS); + map.put("landmark_global", ShippingCarrierEnum.LANDMARK_GLOBAL); + map.put("lasership", ShippingCarrierEnum.LASERSHIP); + map.put("packeta", ShippingCarrierEnum.PACKETA); + map.put("ppl", ShippingCarrierEnum.PPL); + map.put("purolator", ShippingCarrierEnum.PUROLATOR); + map.put("rr_donnelley", ShippingCarrierEnum.RR_DONNELLEY); + map.put("sda", ShippingCarrierEnum.SDA); + map.put("ups", ShippingCarrierEnum.UPS); + map.put("usps", ShippingCarrierEnum.USPS); + map.put("veho", ShippingCarrierEnum.VEHO); + map.put("other", ShippingCarrierEnum.OTHER); + return map; + } + + + public enum ShippingCarrierEnum { + + AMAZON("amazon"), + BPOST("bpost"), + BRT("brt"), + CANADA_POST("canada_post"), + CESKA_POSTA("ceska_posta"), + DHL("dhl"), + DOORDASH("doordash"), + DPD("dpd"), + EVRI("evri"), + FEDEX("fedex"), + GLS("gls"), + INPOST("inpost"), + JT_EXPRESS("jt_express"), + LANDMARK_GLOBAL("landmark_global"), + LASERSHIP("lasership"), + PACKETA("packeta"), + PPL("ppl"), + PUROLATOR("purolator"), + RR_DONNELLEY("rr_donnelley"), + SDA("sda"), + UPS("ups"), + USPS("usps"), + VEHO("veho"), + OTHER("other"),; + + private final String value; + + private ShippingCarrierEnum(String value) { + this.value = value; + } + + public String value() { + return value; + } + } +} + diff --git a/src/main/java/com/gr4vy/sdk/models/components/Tracking.java b/src/main/java/com/gr4vy/sdk/models/components/Tracking.java new file mode 100644 index 00000000..8744f081 --- /dev/null +++ b/src/main/java/com/gr4vy/sdk/models/components/Tracking.java @@ -0,0 +1,198 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gr4vy.sdk.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gr4vy.sdk.utils.Utils; +import java.lang.Override; +import java.lang.String; +import org.openapitools.jackson.nullable.JsonNullable; + + +public class Tracking { + /** + * The tracking number for the shipment. + */ + @JsonProperty("number") + private String number; + + + @JsonProperty("carrier") + private ShippingCarrier carrier; + + /** + * The URL to track the shipment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("url") + private JsonNullable url; + + @JsonCreator + public Tracking( + @JsonProperty("number") String number, + @JsonProperty("carrier") ShippingCarrier carrier, + @JsonProperty("url") JsonNullable url) { + Utils.checkNotNull(number, "number"); + Utils.checkNotNull(carrier, "carrier"); + Utils.checkNotNull(url, "url"); + this.number = number; + this.carrier = carrier; + this.url = url; + } + + public Tracking( + String number, + ShippingCarrier carrier) { + this(number, carrier, JsonNullable.undefined()); + } + + /** + * The tracking number for the shipment. + */ + @JsonIgnore + public String number() { + return number; + } + + @JsonIgnore + public ShippingCarrier carrier() { + return carrier; + } + + /** + * The URL to track the shipment. + */ + @JsonIgnore + public JsonNullable url() { + return url; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The tracking number for the shipment. + */ + public Tracking withNumber(String number) { + Utils.checkNotNull(number, "number"); + this.number = number; + return this; + } + + public Tracking withCarrier(ShippingCarrier carrier) { + Utils.checkNotNull(carrier, "carrier"); + this.carrier = carrier; + return this; + } + + /** + * The URL to track the shipment. + */ + public Tracking withUrl(String url) { + Utils.checkNotNull(url, "url"); + this.url = JsonNullable.of(url); + return this; + } + + /** + * The URL to track the shipment. + */ + public Tracking withUrl(JsonNullable url) { + Utils.checkNotNull(url, "url"); + this.url = url; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Tracking other = (Tracking) o; + return + Utils.enhancedDeepEquals(this.number, other.number) && + Utils.enhancedDeepEquals(this.carrier, other.carrier) && + Utils.enhancedDeepEquals(this.url, other.url); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + number, carrier, url); + } + + @Override + public String toString() { + return Utils.toString(Tracking.class, + "number", number, + "carrier", carrier, + "url", url); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String number; + + private ShippingCarrier carrier; + + private JsonNullable url = JsonNullable.undefined(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The tracking number for the shipment. + */ + public Builder number(String number) { + Utils.checkNotNull(number, "number"); + this.number = number; + return this; + } + + + public Builder carrier(ShippingCarrier carrier) { + Utils.checkNotNull(carrier, "carrier"); + this.carrier = carrier; + return this; + } + + + /** + * The URL to track the shipment. + */ + public Builder url(String url) { + Utils.checkNotNull(url, "url"); + this.url = JsonNullable.of(url); + return this; + } + + /** + * The URL to track the shipment. + */ + public Builder url(JsonNullable url) { + Utils.checkNotNull(url, "url"); + this.url = url; + return this; + } + + public Tracking build() { + + return new Tracking( + number, carrier, url); + } + + } +} diff --git a/src/main/java/com/gr4vy/sdk/models/components/TransactionCaptureCreate.java b/src/main/java/com/gr4vy/sdk/models/components/TransactionCaptureCreate.java index 128b2ec3..62046c99 100644 --- a/src/main/java/com/gr4vy/sdk/models/components/TransactionCaptureCreate.java +++ b/src/main/java/com/gr4vy/sdk/models/components/TransactionCaptureCreate.java @@ -48,6 +48,13 @@ public class TransactionCaptureCreate { @JsonProperty("cart_items") private JsonNullable> cartItems; + /** + * An array of shipment tracking details for this capture. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("tracking") + private JsonNullable> tracking; + /** * Whether this is marked as the final capture for the associated transaction. Must be `true` or * omitted when multi-capture is not enabled; a value of `false` is only valid when multi-capture is @@ -76,18 +83,21 @@ public TransactionCaptureCreate( @JsonProperty("amount") JsonNullable amount, @JsonProperty("airline") JsonNullable airline, @JsonProperty("cart_items") JsonNullable> cartItems, + @JsonProperty("tracking") JsonNullable> tracking, @JsonProperty("final") Optional final_, @JsonProperty("external_identifier") JsonNullable externalIdentifier, @JsonProperty("reauthorize_if_authorization_expired") Optional reauthorizeIfAuthorizationExpired) { Utils.checkNotNull(amount, "amount"); Utils.checkNotNull(airline, "airline"); Utils.checkNotNull(cartItems, "cartItems"); + Utils.checkNotNull(tracking, "tracking"); Utils.checkNotNull(final_, "final_"); Utils.checkNotNull(externalIdentifier, "externalIdentifier"); Utils.checkNotNull(reauthorizeIfAuthorizationExpired, "reauthorizeIfAuthorizationExpired"); this.amount = amount; this.airline = airline; this.cartItems = cartItems; + this.tracking = tracking; this.final_ = final_; this.externalIdentifier = externalIdentifier; this.reauthorizeIfAuthorizationExpired = reauthorizeIfAuthorizationExpired; @@ -95,7 +105,8 @@ public TransactionCaptureCreate( public TransactionCaptureCreate() { this(JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), - Optional.empty(), JsonNullable.undefined(), Optional.empty()); + JsonNullable.undefined(), Optional.empty(), JsonNullable.undefined(), + Optional.empty()); } /** @@ -125,6 +136,15 @@ public JsonNullable> cartItems() { return (JsonNullable>) cartItems; } + /** + * An array of shipment tracking details for this capture. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable> tracking() { + return (JsonNullable>) tracking; + } + /** * Whether this is marked as the final capture for the associated transaction. Must be `true` or * omitted when multi-capture is not enabled; a value of `false` is only valid when multi-capture is @@ -212,6 +232,24 @@ public TransactionCaptureCreate withCartItems(JsonNullable tracking) { + Utils.checkNotNull(tracking, "tracking"); + this.tracking = JsonNullable.of(tracking); + return this; + } + + /** + * An array of shipment tracking details for this capture. + */ + public TransactionCaptureCreate withTracking(JsonNullable> tracking) { + Utils.checkNotNull(tracking, "tracking"); + this.tracking = tracking; + return this; + } + /** * Whether this is marked as the final capture for the associated transaction. Must be `true` or * omitted when multi-capture is not enabled; a value of `false` is only valid when multi-capture is @@ -285,6 +323,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.amount, other.amount) && Utils.enhancedDeepEquals(this.airline, other.airline) && Utils.enhancedDeepEquals(this.cartItems, other.cartItems) && + Utils.enhancedDeepEquals(this.tracking, other.tracking) && Utils.enhancedDeepEquals(this.final_, other.final_) && Utils.enhancedDeepEquals(this.externalIdentifier, other.externalIdentifier) && Utils.enhancedDeepEquals(this.reauthorizeIfAuthorizationExpired, other.reauthorizeIfAuthorizationExpired); @@ -294,7 +333,8 @@ public boolean equals(java.lang.Object o) { public int hashCode() { return Utils.enhancedHash( amount, airline, cartItems, - final_, externalIdentifier, reauthorizeIfAuthorizationExpired); + tracking, final_, externalIdentifier, + reauthorizeIfAuthorizationExpired); } @Override @@ -303,6 +343,7 @@ public String toString() { "amount", amount, "airline", airline, "cartItems", cartItems, + "tracking", tracking, "final_", final_, "externalIdentifier", externalIdentifier, "reauthorizeIfAuthorizationExpired", reauthorizeIfAuthorizationExpired); @@ -317,6 +358,8 @@ public final static class Builder { private JsonNullable> cartItems = JsonNullable.undefined(); + private JsonNullable> tracking = JsonNullable.undefined(); + private Optional final_; private JsonNullable externalIdentifier = JsonNullable.undefined(); @@ -387,6 +430,25 @@ public Builder cartItems(JsonNullable> cartItems) { } + /** + * An array of shipment tracking details for this capture. + */ + public Builder tracking(List tracking) { + Utils.checkNotNull(tracking, "tracking"); + this.tracking = JsonNullable.of(tracking); + return this; + } + + /** + * An array of shipment tracking details for this capture. + */ + public Builder tracking(JsonNullable> tracking) { + Utils.checkNotNull(tracking, "tracking"); + this.tracking = tracking; + return this; + } + + /** * Whether this is marked as the final capture for the associated transaction. Must be `true` or * omitted when multi-capture is not enabled; a value of `false` is only valid when multi-capture is @@ -457,7 +519,8 @@ public TransactionCaptureCreate build() { return new TransactionCaptureCreate( amount, airline, cartItems, - final_, externalIdentifier, reauthorizeIfAuthorizationExpired); + tracking, final_, externalIdentifier, + reauthorizeIfAuthorizationExpired); } From 974bb6e5412638c17ba47498d75f5338e38443dc Mon Sep 17 00:00:00 2001 From: "speakeasy-github[bot]" <128539517+speakeasy-github[bot]@users.noreply.github.com> Date: Tue, 15 Sep 2026 08:43:55 +0000 Subject: [PATCH 2/2] empty commit to trigger [run-tests] workflow