diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index 8f3e0a49..b4e9013b 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,3 +1,3 @@
{
- ".": "0.15.0"
+ ".": "0.16.0"
}
\ No newline at end of file
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 37514f77..4abb6618 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,136 @@
# Changelog
+## 0.16.0 (2025-01-03)
+
+Full Changelog: [v0.15.0...v0.16.0](https://github.com/orbcorp/orb-java/compare/v0.15.0...v0.16.0)
+
+### ⚠ BREAKING CHANGES
+
+* **api:** endpoint expects amount of new allocation price to be a string, not a number ([#10](https://github.com/orbcorp/orb-java/issues/10))
+* **api:** add semi_annual cadence and remove metadata from update items ([#2](https://github.com/orbcorp/orb-java/issues/2))
+
+### Features
+
+* **api:** add semi_annual cadence and remove metadata from update items ([#2](https://github.com/orbcorp/orb-java/issues/2)) ([38298ff](https://github.com/orbcorp/orb-java/commit/38298fffb277246750d838f4f705d3ad1a9237f8))
+* **api:** add support for adding allocation price to subscription ([#8](https://github.com/orbcorp/orb-java/issues/8)) ([d150c33](https://github.com/orbcorp/orb-java/commit/d150c33743c505658aeb09b639ea4b739ad4322c))
+* **api:** add support for query param include_all_blocks ([#11](https://github.com/orbcorp/orb-java/issues/11)) ([73d5e94](https://github.com/orbcorp/orb-java/commit/73d5e9453745dda4c138bed77c3dc71b306f37f3))
+* **api:** add webhook validation and parsing ([#111](https://github.com/orbcorp/orb-java/issues/111)) ([4472875](https://github.com/orbcorp/orb-java/commit/44728754a99a0f06db78e6dffc215da599886913))
+* **api:** api update ([#103](https://github.com/orbcorp/orb-java/issues/103)) ([aeb1fed](https://github.com/orbcorp/orb-java/commit/aeb1fed100a2ec3ab167b802d005238839ce16dd))
+* **api:** api update ([#112](https://github.com/orbcorp/orb-java/issues/112)) ([aedd2bf](https://github.com/orbcorp/orb-java/commit/aedd2bf4a7266560d9b1ee1f372bb4490ac22021))
+* **api:** api update ([#125](https://github.com/orbcorp/orb-java/issues/125)) ([e74b0c3](https://github.com/orbcorp/orb-java/commit/e74b0c31d3d11a4423fc6e7d4e33bbe764a80e8c))
+* **api:** api update ([#129](https://github.com/orbcorp/orb-java/issues/129)) ([e8edbd0](https://github.com/orbcorp/orb-java/commit/e8edbd02e37c71b4f3efdecd13996e6bcb9a1f1e))
+* **api:** api update ([#131](https://github.com/orbcorp/orb-java/issues/131)) ([1733a5c](https://github.com/orbcorp/orb-java/commit/1733a5cdb272627dc19f53269cf11953dc00e37b))
+* **api:** api update ([#137](https://github.com/orbcorp/orb-java/issues/137)) ([60695f9](https://github.com/orbcorp/orb-java/commit/60695f967b5c91f7ebeaa2c36bd5fddc5914a2ea))
+* **api:** api update ([#140](https://github.com/orbcorp/orb-java/issues/140)) ([6a3362e](https://github.com/orbcorp/orb-java/commit/6a3362e8fa8181f732195e8391bf6e39329f23ec))
+* **api:** api update ([#152](https://github.com/orbcorp/orb-java/issues/152)) ([7a78319](https://github.com/orbcorp/orb-java/commit/7a78319428de5e34858e6d9e73c5b4b21da4b2ad))
+* **api:** api update ([#154](https://github.com/orbcorp/orb-java/issues/154)) ([770d4cc](https://github.com/orbcorp/orb-java/commit/770d4cc165b3d6952efd593141759c3b59a1f1b9))
+* **api:** api update ([#159](https://github.com/orbcorp/orb-java/issues/159)) ([f51bb21](https://github.com/orbcorp/orb-java/commit/f51bb21f026a27c10107516546fe079192e5c5ee))
+* **api:** api update ([#161](https://github.com/orbcorp/orb-java/issues/161)) ([6b21c9b](https://github.com/orbcorp/orb-java/commit/6b21c9bccc2baf99fe45c25e62253db9b543381e))
+* **api:** api update ([#81](https://github.com/orbcorp/orb-java/issues/81)) ([6b595ca](https://github.com/orbcorp/orb-java/commit/6b595caf0ced6da64742883efae7ff55aa3a74b6))
+* **api:** api update ([#82](https://github.com/orbcorp/orb-java/issues/82)) ([3d2aa72](https://github.com/orbcorp/orb-java/commit/3d2aa72926de34616e5c622197204f32c48462bf))
+* **api:** api update ([#84](https://github.com/orbcorp/orb-java/issues/84)) ([89db90d](https://github.com/orbcorp/orb-java/commit/89db90d6b9ca93f3469b8095f193e943e2580c83))
+* **api:** api update ([#85](https://github.com/orbcorp/orb-java/issues/85)) ([ccb4f21](https://github.com/orbcorp/orb-java/commit/ccb4f21cabdd7a8db4a57fe7a8de1570ce4a1863))
+* **api:** api update ([#86](https://github.com/orbcorp/orb-java/issues/86)) ([4f4639d](https://github.com/orbcorp/orb-java/commit/4f4639dbf70bbb75f56e96fc574441a37518656e))
+* **api:** api update ([#87](https://github.com/orbcorp/orb-java/issues/87)) ([925563d](https://github.com/orbcorp/orb-java/commit/925563d00a38d6f78a56413aa8a24cf61fc41805))
+* **api:** api update ([#88](https://github.com/orbcorp/orb-java/issues/88)) ([8a09a17](https://github.com/orbcorp/orb-java/commit/8a09a173eec143cc8f574c4623985b69246bc8fe))
+* **api:** api update ([#90](https://github.com/orbcorp/orb-java/issues/90)) ([6a7b7b8](https://github.com/orbcorp/orb-java/commit/6a7b7b8e059d6d1257d0e256818f01f5778a4636))
+* **api:** api update ([#92](https://github.com/orbcorp/orb-java/issues/92)) ([b06d37a](https://github.com/orbcorp/orb-java/commit/b06d37a55e7746a5058750036acf5e7ff888f866))
+* **api:** api update ([#93](https://github.com/orbcorp/orb-java/issues/93)) ([311c123](https://github.com/orbcorp/orb-java/commit/311c123cd870144fcbda844e1d9dbc0843fc320e))
+* **api:** api update ([#94](https://github.com/orbcorp/orb-java/issues/94)) ([1ab1485](https://github.com/orbcorp/orb-java/commit/1ab148544455697718f423e1bde89f39669b53ae))
+* **api:** api update ([#97](https://github.com/orbcorp/orb-java/issues/97)) ([d85ab62](https://github.com/orbcorp/orb-java/commit/d85ab623e23c592afc053ad6ade1aec9c7e07de9))
+* **api:** codegen changes ([#39](https://github.com/orbcorp/orb-java/issues/39)) ([4568489](https://github.com/orbcorp/orb-java/commit/4568489793e5a8793a8ebe847efa218cdaa494e5))
+* **api:** codegen changes ([#48](https://github.com/orbcorp/orb-java/issues/48)) ([8a0190e](https://github.com/orbcorp/orb-java/commit/8a0190e72457485174719ab58948dc474d53ca25))
+* **api:** external connections made optional when updating items ([#9](https://github.com/orbcorp/orb-java/issues/9)) ([d1a63a3](https://github.com/orbcorp/orb-java/commit/d1a63a3edcd71535e421b9ded0f749e96d18b253))
+* **api:** manual updates ([#40](https://github.com/orbcorp/orb-java/issues/40)) ([423de9f](https://github.com/orbcorp/orb-java/commit/423de9f49600ef8deac5049da1f96956fddcf69f))
+* **api:** OpenAPI spec update via Stainless API ([#31](https://github.com/orbcorp/orb-java/issues/31)) ([aec4e89](https://github.com/orbcorp/orb-java/commit/aec4e89c811c7704b68ca6acbe2c81f1f2dbfd8c))
+* **api:** OpenAPI spec update via Stainless API ([#34](https://github.com/orbcorp/orb-java/issues/34)) ([3a42785](https://github.com/orbcorp/orb-java/commit/3a427852b444a502116457fb1d45ff85e9378cd5))
+* **api:** OpenAPI spec update via Stainless API ([#36](https://github.com/orbcorp/orb-java/issues/36)) ([03178df](https://github.com/orbcorp/orb-java/commit/03178dfaa6bfd6a3b180438916cb44738bb084d4))
+* **api:** OpenAPI spec update via Stainless API ([#37](https://github.com/orbcorp/orb-java/issues/37)) ([6d07d56](https://github.com/orbcorp/orb-java/commit/6d07d56a02f520af24180d9e825b9551c8d4bf7a))
+* **api:** OpenAPI spec update via Stainless API ([#38](https://github.com/orbcorp/orb-java/issues/38)) ([a92d627](https://github.com/orbcorp/orb-java/commit/a92d627184db41c58d90bf860e1746276a4228fb))
+* **api:** OpenAPI spec update via Stainless API ([#41](https://github.com/orbcorp/orb-java/issues/41)) ([64fdca5](https://github.com/orbcorp/orb-java/commit/64fdca5952f67afccb6220c99bc39a6417bb8ba2))
+* **api:** OpenAPI spec update via Stainless API ([#43](https://github.com/orbcorp/orb-java/issues/43)) ([ed5e3c8](https://github.com/orbcorp/orb-java/commit/ed5e3c8cafa1abfee247ddbe824700084ef7d7a7))
+* **api:** OpenAPI spec update via Stainless API ([#44](https://github.com/orbcorp/orb-java/issues/44)) ([9941471](https://github.com/orbcorp/orb-java/commit/994147155249ff02075d5c590671654cbcbb6676))
+* **api:** OpenAPI spec update via Stainless API ([#45](https://github.com/orbcorp/orb-java/issues/45)) ([055d0a8](https://github.com/orbcorp/orb-java/commit/055d0a81db48729e99980b83ac275338d6aa1e7b))
+* **api:** OpenAPI spec update via Stainless API ([#47](https://github.com/orbcorp/orb-java/issues/47)) ([cbb6cca](https://github.com/orbcorp/orb-java/commit/cbb6cca7e31e1c44ae3b00811fb5979e2912d5e8))
+* **api:** OpenAPI spec update via Stainless API ([#50](https://github.com/orbcorp/orb-java/issues/50)) ([2bd0af6](https://github.com/orbcorp/orb-java/commit/2bd0af6f644d5f0273003f22af55c4116ea325a0))
+* **api:** OpenAPI spec update via Stainless API ([#51](https://github.com/orbcorp/orb-java/issues/51)) ([c4e232e](https://github.com/orbcorp/orb-java/commit/c4e232ed8a840f5f0da7618f489fa3c24d9c5af4))
+* **api:** OpenAPI spec update via Stainless API ([#52](https://github.com/orbcorp/orb-java/issues/52)) ([773d7e7](https://github.com/orbcorp/orb-java/commit/773d7e71970a4629fbfd32c92ebfd1c8288c3327))
+* **api:** OpenAPI spec update via Stainless API ([#53](https://github.com/orbcorp/orb-java/issues/53)) ([7efa5f4](https://github.com/orbcorp/orb-java/commit/7efa5f4042e763b642d99e3b41dcf5350ceb97b8))
+* **api:** OpenAPI spec update via Stainless API ([#54](https://github.com/orbcorp/orb-java/issues/54)) ([f9006eb](https://github.com/orbcorp/orb-java/commit/f9006ebdc60bb00a77a7d574c82601b32f86ac4c))
+* **api:** OpenAPI spec update via Stainless API ([#55](https://github.com/orbcorp/orb-java/issues/55)) ([73ed069](https://github.com/orbcorp/orb-java/commit/73ed069286d3e6e23081f31bcae1c4739f3ef5c3))
+* **api:** OpenAPI spec update via Stainless API ([#57](https://github.com/orbcorp/orb-java/issues/57)) ([4a3ce75](https://github.com/orbcorp/orb-java/commit/4a3ce752daa3fc63a858b3f94c033b5e2bde0288))
+* **api:** OpenAPI spec update via Stainless API ([#59](https://github.com/orbcorp/orb-java/issues/59)) ([8e8574c](https://github.com/orbcorp/orb-java/commit/8e8574cb159e45ab036088048a1362a6a8c32cc2))
+* **api:** OpenAPI spec update via Stainless API ([#61](https://github.com/orbcorp/orb-java/issues/61)) ([b48f9fe](https://github.com/orbcorp/orb-java/commit/b48f9fe87aae83b2bb028a4c8216a66f26af8801))
+* **api:** OpenAPI spec update via Stainless API ([#63](https://github.com/orbcorp/orb-java/issues/63)) ([fd13223](https://github.com/orbcorp/orb-java/commit/fd13223cd190ecee0312f5d64d74522db567d864))
+* **api:** OpenAPI spec update via Stainless API ([#67](https://github.com/orbcorp/orb-java/issues/67)) ([afffd96](https://github.com/orbcorp/orb-java/commit/afffd968e135d74d899c0377b0f6e5bf1787ae33))
+* **api:** OpenAPI spec update via Stainless API ([#68](https://github.com/orbcorp/orb-java/issues/68)) ([bd66065](https://github.com/orbcorp/orb-java/commit/bd6606510bf4dad9be78d019b9130542d0a9a532))
+* **api:** OpenAPI spec update via Stainless API ([#70](https://github.com/orbcorp/orb-java/issues/70)) ([8ab0aab](https://github.com/orbcorp/orb-java/commit/8ab0aab0ebea8a4d147a9c93b0e30917192743a6))
+* **api:** OpenAPI spec update via Stainless API ([#76](https://github.com/orbcorp/orb-java/issues/76)) ([5013205](https://github.com/orbcorp/orb-java/commit/50132057be8af15e443e6c6ee6a3828d24b888c0))
+* **api:** OpenAPI spec update via Stainless API ([#78](https://github.com/orbcorp/orb-java/issues/78)) ([e745d41](https://github.com/orbcorp/orb-java/commit/e745d410327507e514b35968c97b29c7983b90df))
+* **api:** OpenAPI spec update via Stainless API ([#80](https://github.com/orbcorp/orb-java/issues/80)) ([e1fc9e9](https://github.com/orbcorp/orb-java/commit/e1fc9e9f9b9f38313e051194e430880cfa46dad4))
+* **api:** updates ([#5](https://github.com/orbcorp/orb-java/issues/5)) ([fb8c7d9](https://github.com/orbcorp/orb-java/commit/fb8c7d974e51d260d1bb9aa1f93021a64288589a))
+* **client:** add logging when debug env is set ([#124](https://github.com/orbcorp/orb-java/issues/124)) ([3a54438](https://github.com/orbcorp/orb-java/commit/3a5443850294502d15401f96a0e7680dbd60275d))
+* **client:** add support for `putQueryParam` on `ClientOptions` ([#6](https://github.com/orbcorp/orb-java/issues/6)) ([71d82b0](https://github.com/orbcorp/orb-java/commit/71d82b0545a51df2abb8ebfe852991d9f740d498))
+* **client:** added structured fields to errors ([#65](https://github.com/orbcorp/orb-java/issues/65)) ([e6226f9](https://github.com/orbcorp/orb-java/commit/e6226f9a57e42c1786353757aca5b32744a24ffb))
+
+
+### Bug Fixes
+
+* **api:** endpoint expects amount of new allocation price to be a string, not a number ([#10](https://github.com/orbcorp/orb-java/issues/10)) ([f38419a](https://github.com/orbcorp/orb-java/commit/f38419a6c6b10b5137d573dfc9c7f5a96a302348))
+* **docs:** use correct putAdditionalProperty value ([#42](https://github.com/orbcorp/orb-java/issues/42)) ([4f236bc](https://github.com/orbcorp/orb-java/commit/4f236bc7d29a65895aafd0c9c5e6e1745fb42bad))
+* **internal:** add missing options ([49c0367](https://github.com/orbcorp/orb-java/commit/49c03672bca758f032e5125099c0e5bcf415f770))
+* **unions:** fix namespacing in example types for unions that have models ([846d155](https://github.com/orbcorp/orb-java/commit/846d15562417ca933515297623d630db0ec9e9a0))
+
+
+### Chores
+
+* **api:** rename `void` to `void_invoice` in Java SDK ([#72](https://github.com/orbcorp/orb-java/issues/72)) ([61d300a](https://github.com/orbcorp/orb-java/commit/61d300a474bca6fc47658bb3daa9dc7f1de44a16))
+* consistent string literal escaping ([#49](https://github.com/orbcorp/orb-java/issues/49)) ([556e69d](https://github.com/orbcorp/orb-java/commit/556e69d08db6005e58612fc83828329c9beb608c))
+* **docs:** improve Coupon description ([#7](https://github.com/orbcorp/orb-java/issues/7)) ([4d1d183](https://github.com/orbcorp/orb-java/commit/4d1d183eba7883c30007edc2aac0ab27c5e62600))
+* **docs:** internal update ([#74](https://github.com/orbcorp/orb-java/issues/74)) ([577588d](https://github.com/orbcorp/orb-java/commit/577588daa262f51547de5eb6785226fdca41be2b))
+* **docs:** internal update ([#75](https://github.com/orbcorp/orb-java/issues/75)) ([6905912](https://github.com/orbcorp/orb-java/commit/69059129d10672b1806b2288e044ff986c53d0c8))
+* **docs:** update readme ([#157](https://github.com/orbcorp/orb-java/issues/157)) ([26c33ec](https://github.com/orbcorp/orb-java/commit/26c33ecb791a128a35e3132359f3265a2e0f89cb))
+* **docs:** updates price intervals docs ([#12](https://github.com/orbcorp/orb-java/issues/12)) ([554df1b](https://github.com/orbcorp/orb-java/commit/554df1b92b83237d8f88cea66bee47524ee8d9db))
+* fix formatting ([6d27c6c](https://github.com/orbcorp/orb-java/commit/6d27c6c9e5047097764aa79cf7cbd00106ad8039))
+* gitignore test server logs ([#13](https://github.com/orbcorp/orb-java/issues/13)) ([11e4ebc](https://github.com/orbcorp/orb-java/commit/11e4ebc52501ab8c6ea3ba15eff0ef82134eda89))
+* **internal:** codegen related update ([#123](https://github.com/orbcorp/orb-java/issues/123)) ([9bbb41f](https://github.com/orbcorp/orb-java/commit/9bbb41f1fca7dfddc6ed2ecd1493c99183405cc5))
+* **internal:** codegen related update ([#134](https://github.com/orbcorp/orb-java/issues/134)) ([61e2a3f](https://github.com/orbcorp/orb-java/commit/61e2a3f250034b37c31697cda1f9366445d88358))
+* **internal:** codegen related update ([#163](https://github.com/orbcorp/orb-java/issues/163)) ([9361feb](https://github.com/orbcorp/orb-java/commit/9361febeaacb3ccaa005071ec9e7cf1a07037566))
+* **internal:** codegen related update ([#164](https://github.com/orbcorp/orb-java/issues/164)) ([d2a3612](https://github.com/orbcorp/orb-java/commit/d2a3612a46c69917fce2ac6a9ba0d8bda398d5d8))
+* **internal:** codegen related update ([#167](https://github.com/orbcorp/orb-java/issues/167)) ([5064c6d](https://github.com/orbcorp/orb-java/commit/5064c6d8c3faec116445162be14797b14e3adf60))
+* **internal:** codegen related update ([#56](https://github.com/orbcorp/orb-java/issues/56)) ([837e1ed](https://github.com/orbcorp/orb-java/commit/837e1ed1619d993c680581d3dc6a9e02e1c9f8a6))
+* **internal:** codegen related update ([#71](https://github.com/orbcorp/orb-java/issues/71)) ([99ddc03](https://github.com/orbcorp/orb-java/commit/99ddc031f02c7fe5648bfad4b6de0481864707cc))
+* **internal:** codegen related update ([#73](https://github.com/orbcorp/orb-java/issues/73)) ([5021325](https://github.com/orbcorp/orb-java/commit/50213258784197ba307bfe34f7c82a8ee821439a))
+* **internal:** fix lint warning for isPresent ([#66](https://github.com/orbcorp/orb-java/issues/66)) ([ff81eb6](https://github.com/orbcorp/orb-java/commit/ff81eb6ab227a308b45b0fa961ce3a8759826fdf))
+* **internal:** remove unused and expand used wildcard imports ([#150](https://github.com/orbcorp/orb-java/issues/150)) ([f2ff940](https://github.com/orbcorp/orb-java/commit/f2ff940f47f5d584cff2d737e02a048b01dc07f3))
+* **internal:** remove unused and expand used wildcard imports ([#151](https://github.com/orbcorp/orb-java/issues/151)) ([36ec9ab](https://github.com/orbcorp/orb-java/commit/36ec9ab1cb60ab066483d92e64df3bbb4cfe1103))
+* **internal:** remove unused imports ([#147](https://github.com/orbcorp/orb-java/issues/147)) ([fb322e7](https://github.com/orbcorp/orb-java/commit/fb322e7077af79c5e7ce7eb7f87bda7e2723df26))
+* **internal:** update example values ([#127](https://github.com/orbcorp/orb-java/issues/127)) ([78608a6](https://github.com/orbcorp/orb-java/commit/78608a6180b01aa0499a9754eff16064d260f4d5))
+* **internal:** version bump ([#100](https://github.com/orbcorp/orb-java/issues/100)) ([3993648](https://github.com/orbcorp/orb-java/commit/39936484979235feef711bfde8f3e2333df69d7b))
+* **internal:** version bump ([#109](https://github.com/orbcorp/orb-java/issues/109)) ([0a4c949](https://github.com/orbcorp/orb-java/commit/0a4c94986ef02371572b282ebd79c0f0d8a8a0b0))
+* **internal:** version bump ([#119](https://github.com/orbcorp/orb-java/issues/119)) ([793a5e4](https://github.com/orbcorp/orb-java/commit/793a5e4c812ce6eadba334e9a084026c8b10d68d))
+* **internal:** version bump ([#121](https://github.com/orbcorp/orb-java/issues/121)) ([8b54a94](https://github.com/orbcorp/orb-java/commit/8b54a9444164d3577705770cd35e1e0806b0f926))
+* **internal:** version bump ([#122](https://github.com/orbcorp/orb-java/issues/122)) ([ed488d2](https://github.com/orbcorp/orb-java/commit/ed488d23958a93d2f606c49307eb5a5abdfdc31d))
+* **internal:** version bump ([#89](https://github.com/orbcorp/orb-java/issues/89)) ([14ae070](https://github.com/orbcorp/orb-java/commit/14ae070250523c21dd90a82cbd70685694bbbb87))
+* rebuild project due to codegen change ([#105](https://github.com/orbcorp/orb-java/issues/105)) ([686edce](https://github.com/orbcorp/orb-java/commit/686edce1218e41f4c48735dfe563601c1b354426))
+* rebuild project due to codegen change ([#107](https://github.com/orbcorp/orb-java/issues/107)) ([15f22cd](https://github.com/orbcorp/orb-java/commit/15f22cdf943dd29bfcd710ef410c92bd33fa237b))
+* rebuild project due to codegen change ([#116](https://github.com/orbcorp/orb-java/issues/116)) ([94d7006](https://github.com/orbcorp/orb-java/commit/94d700697d44adede203c1f7d3dda1e67f37eae2))
+* **test:** remove unused imports ([#148](https://github.com/orbcorp/orb-java/issues/148)) ([6f766e5](https://github.com/orbcorp/orb-java/commit/6f766e534aca6263f04c28321904493f3d02cc1b))
+* **test:** use `JsonValue` instead of `JsonString` ([#149](https://github.com/orbcorp/orb-java/issues/149)) ([119422b](https://github.com/orbcorp/orb-java/commit/119422b8ded3064bf6dd2566b9cfabac0087068c))
+* update example values in tests and docs ([#143](https://github.com/orbcorp/orb-java/issues/143)) ([28f1ab5](https://github.com/orbcorp/orb-java/commit/28f1ab5198e58c2b1e26045d8b81b1504cdd45cb))
+
+
+### Documentation
+
+* adjust additional properties example ([#64](https://github.com/orbcorp/orb-java/issues/64)) ([f200314](https://github.com/orbcorp/orb-java/commit/f20031470e553f4e414375e536e1366c2316dfb2))
+* small updates ([#3](https://github.com/orbcorp/orb-java/issues/3)) ([11b888b](https://github.com/orbcorp/orb-java/commit/11b888b44a0063a15bb0bdee64273659b9cc4514))
+
+
+### Styles
+
+* **internal:** make enum value definitions less verbose ([#145](https://github.com/orbcorp/orb-java/issues/145)) ([1a3bc07](https://github.com/orbcorp/orb-java/commit/1a3bc075994b287ce658648895c18cf4c8586db0))
+* **internal:** move enum identity methods to bottom of class ([#146](https://github.com/orbcorp/orb-java/issues/146)) ([c2bc9d2](https://github.com/orbcorp/orb-java/commit/c2bc9d251f3dc3eb887467570c68f0335d4a61b1))
+
## 0.15.0 (2025-01-02)
Full Changelog: [v0.14.0...v0.15.0](https://github.com/orbcorp/orb-java/compare/v0.14.0...v0.15.0)
diff --git a/LICENSE b/LICENSE
index 782200ee..00b1f9c8 100644
--- a/LICENSE
+++ b/LICENSE
@@ -186,7 +186,7 @@
same "printed page" as the copyright notice for easier
identification within third-party archives.
- Copyright 2024 Orb
+ Copyright 2025 Orb
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
diff --git a/README.md b/README.md
index 89816dcf..7d809207 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@
-[](https://central.sonatype.com/artifact/com.withorb.api/orb-java/0.15.0)
+[](https://central.sonatype.com/artifact/com.withorb.api/orb-java/0.16.0)
@@ -25,7 +25,7 @@ The REST API documentation can be found on [docs.withorb.com](https://docs.with
```kotlin
-implementation("com.withorb.api:orb-java:0.15.0")
+implementation("com.withorb.api:orb-java:0.16.0")
```
#### Maven
@@ -34,7 +34,7 @@ implementation("com.withorb.api:orb-java:0.15.0")
com.withorb.api
orb-java
- 0.15.0
+ 0.16.0
```
diff --git a/build.gradle.kts b/build.gradle.kts
index 7d153221..b1ecc9ee 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -4,7 +4,7 @@ plugins {
allprojects {
group = "com.withorb.api"
- version = "0.15.0" // x-release-please-version
+ version = "0.16.0" // x-release-please-version
}
diff --git a/orb-java-core/src/main/kotlin/com/withorb/api/client/OrbClientImpl.kt b/orb-java-core/src/main/kotlin/com/withorb/api/client/OrbClientImpl.kt
index f1c01fee..6f0bec20 100644
--- a/orb-java-core/src/main/kotlin/com/withorb/api/client/OrbClientImpl.kt
+++ b/orb-java-core/src/main/kotlin/com/withorb/api/client/OrbClientImpl.kt
@@ -14,8 +14,6 @@ import com.withorb.api.services.blocking.CustomerService
import com.withorb.api.services.blocking.CustomerServiceImpl
import com.withorb.api.services.blocking.DimensionalPriceGroupService
import com.withorb.api.services.blocking.DimensionalPriceGroupServiceImpl
-import com.withorb.api.services.blocking.WebhookService
-import com.withorb.api.services.blocking.WebhookServiceImpl
import com.withorb.api.services.blocking.EventService
import com.withorb.api.services.blocking.EventServiceImpl
import com.withorb.api.services.blocking.InvoiceLineItemService
@@ -34,6 +32,8 @@ import com.withorb.api.services.blocking.SubscriptionService
import com.withorb.api.services.blocking.SubscriptionServiceImpl
import com.withorb.api.services.blocking.TopLevelService
import com.withorb.api.services.blocking.TopLevelServiceImpl
+import com.withorb.api.services.blocking.WebhookService
+import com.withorb.api.services.blocking.WebhookServiceImpl
class OrbClientImpl
constructor(
diff --git a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForCustomerParams.kt b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForCustomerParams.kt
index e2f067e5..33e110b3 100644
--- a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForCustomerParams.kt
+++ b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForCustomerParams.kt
@@ -22,37 +22,29 @@ import java.util.Optional
class AlertCreateForCustomerParams
constructor(
private val customerId: String,
- private val currency: String,
- private val type: Type,
- private val thresholds: List?,
+ private val body: AlertCreateForCustomerBody,
private val additionalHeaders: Headers,
private val additionalQueryParams: QueryParams,
- private val additionalBodyProperties: Map,
) {
fun customerId(): String = customerId
- fun currency(): String = currency
+ /** The case sensitive currency or custom pricing unit to use for this alert. */
+ fun currency(): String = body.currency()
- fun type(): Type = type
+ /** The type of alert to create. This must be a valid alert type. */
+ fun type(): Type = body.type()
- fun thresholds(): Optional> = Optional.ofNullable(thresholds)
+ /** The thresholds that define the values at which the alert will be triggered. */
+ fun thresholds(): Optional> = body.thresholds()
fun _additionalHeaders(): Headers = additionalHeaders
fun _additionalQueryParams(): QueryParams = additionalQueryParams
- fun _additionalBodyProperties(): Map = additionalBodyProperties
+ fun _additionalBodyProperties(): Map = body._additionalProperties()
- @JvmSynthetic
- internal fun getBody(): AlertCreateForCustomerBody {
- return AlertCreateForCustomerBody(
- currency,
- type,
- thresholds,
- additionalBodyProperties,
- )
- }
+ @JvmSynthetic internal fun getBody(): AlertCreateForCustomerBody = body
@JvmSynthetic internal fun getHeaders(): Headers = additionalHeaders
@@ -101,7 +93,7 @@ constructor(
private var currency: String? = null
private var type: Type? = null
- private var thresholds: List? = null
+ private var thresholds: MutableList? = null
private var additionalProperties: MutableMap = mutableMapOf()
@JvmSynthetic
@@ -120,7 +112,14 @@ constructor(
fun type(type: Type) = apply { this.type = type }
/** The thresholds that define the values at which the alert will be triggered. */
- fun thresholds(thresholds: List) = apply { this.thresholds = thresholds }
+ fun thresholds(thresholds: List) = apply {
+ this.thresholds = thresholds.toMutableList()
+ }
+
+ /** The thresholds that define the values at which the alert will be triggered. */
+ fun addThreshold(threshold: Threshold) = apply {
+ thresholds = (thresholds ?: mutableListOf()).apply { add(threshold) }
+ }
fun additionalProperties(additionalProperties: Map) = apply {
this.additionalProperties.clear()
@@ -179,41 +178,31 @@ constructor(
class Builder {
private var customerId: String? = null
- private var currency: String? = null
- private var type: Type? = null
- private var thresholds: MutableList = mutableListOf()
+ private var body: AlertCreateForCustomerBody.Builder = AlertCreateForCustomerBody.builder()
private var additionalHeaders: Headers.Builder = Headers.builder()
private var additionalQueryParams: QueryParams.Builder = QueryParams.builder()
- private var additionalBodyProperties: MutableMap = mutableMapOf()
@JvmSynthetic
internal fun from(alertCreateForCustomerParams: AlertCreateForCustomerParams) = apply {
customerId = alertCreateForCustomerParams.customerId
- currency = alertCreateForCustomerParams.currency
- type = alertCreateForCustomerParams.type
- thresholds = alertCreateForCustomerParams.thresholds?.toMutableList() ?: mutableListOf()
+ body = alertCreateForCustomerParams.body.toBuilder()
additionalHeaders = alertCreateForCustomerParams.additionalHeaders.toBuilder()
additionalQueryParams = alertCreateForCustomerParams.additionalQueryParams.toBuilder()
- additionalBodyProperties =
- alertCreateForCustomerParams.additionalBodyProperties.toMutableMap()
}
fun customerId(customerId: String) = apply { this.customerId = customerId }
/** The case sensitive currency or custom pricing unit to use for this alert. */
- fun currency(currency: String) = apply { this.currency = currency }
+ fun currency(currency: String) = apply { body.currency(currency) }
/** The type of alert to create. This must be a valid alert type. */
- fun type(type: Type) = apply { this.type = type }
+ fun type(type: Type) = apply { body.type(type) }
/** The thresholds that define the values at which the alert will be triggered. */
- fun thresholds(thresholds: List) = apply {
- this.thresholds.clear()
- this.thresholds.addAll(thresholds)
- }
+ fun thresholds(thresholds: List) = apply { body.thresholds(thresholds) }
/** The thresholds that define the values at which the alert will be triggered. */
- fun addThreshold(threshold: Threshold) = apply { this.thresholds.add(threshold) }
+ fun addThreshold(threshold: Threshold) = apply { body.addThreshold(threshold) }
fun additionalHeaders(additionalHeaders: Headers) = apply {
this.additionalHeaders.clear()
@@ -314,36 +303,30 @@ constructor(
}
fun additionalBodyProperties(additionalBodyProperties: Map) = apply {
- this.additionalBodyProperties.clear()
- putAllAdditionalBodyProperties(additionalBodyProperties)
+ body.additionalProperties(additionalBodyProperties)
}
fun putAdditionalBodyProperty(key: String, value: JsonValue) = apply {
- additionalBodyProperties.put(key, value)
+ body.putAdditionalProperty(key, value)
}
fun putAllAdditionalBodyProperties(additionalBodyProperties: Map) =
apply {
- this.additionalBodyProperties.putAll(additionalBodyProperties)
+ body.putAllAdditionalProperties(additionalBodyProperties)
}
- fun removeAdditionalBodyProperty(key: String) = apply {
- additionalBodyProperties.remove(key)
- }
+ fun removeAdditionalBodyProperty(key: String) = apply { body.removeAdditionalProperty(key) }
fun removeAllAdditionalBodyProperties(keys: Set) = apply {
- keys.forEach(::removeAdditionalBodyProperty)
+ body.removeAllAdditionalProperties(keys)
}
fun build(): AlertCreateForCustomerParams =
AlertCreateForCustomerParams(
checkNotNull(customerId) { "`customerId` is required but was not set" },
- checkNotNull(currency) { "`currency` is required but was not set" },
- checkNotNull(type) { "`type` is required but was not set" },
- thresholds.toImmutable().ifEmpty { null },
+ body.build(),
additionalHeaders.build(),
additionalQueryParams.build(),
- additionalBodyProperties.toImmutable(),
)
}
@@ -517,11 +500,11 @@ constructor(
return true
}
- return /* spotless:off */ other is AlertCreateForCustomerParams && customerId == other.customerId && currency == other.currency && type == other.type && thresholds == other.thresholds && additionalHeaders == other.additionalHeaders && additionalQueryParams == other.additionalQueryParams && additionalBodyProperties == other.additionalBodyProperties /* spotless:on */
+ return /* spotless:off */ other is AlertCreateForCustomerParams && customerId == other.customerId && body == other.body && additionalHeaders == other.additionalHeaders && additionalQueryParams == other.additionalQueryParams /* spotless:on */
}
- override fun hashCode(): Int = /* spotless:off */ Objects.hash(customerId, currency, type, thresholds, additionalHeaders, additionalQueryParams, additionalBodyProperties) /* spotless:on */
+ override fun hashCode(): Int = /* spotless:off */ Objects.hash(customerId, body, additionalHeaders, additionalQueryParams) /* spotless:on */
override fun toString() =
- "AlertCreateForCustomerParams{customerId=$customerId, currency=$currency, type=$type, thresholds=$thresholds, additionalHeaders=$additionalHeaders, additionalQueryParams=$additionalQueryParams, additionalBodyProperties=$additionalBodyProperties}"
+ "AlertCreateForCustomerParams{customerId=$customerId, body=$body, additionalHeaders=$additionalHeaders, additionalQueryParams=$additionalQueryParams}"
}
diff --git a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForExternalCustomerParams.kt b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForExternalCustomerParams.kt
index f76e2f71..41d2f297 100644
--- a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForExternalCustomerParams.kt
+++ b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForExternalCustomerParams.kt
@@ -22,37 +22,29 @@ import java.util.Optional
class AlertCreateForExternalCustomerParams
constructor(
private val externalCustomerId: String,
- private val currency: String,
- private val type: Type,
- private val thresholds: List?,
+ private val body: AlertCreateForExternalCustomerBody,
private val additionalHeaders: Headers,
private val additionalQueryParams: QueryParams,
- private val additionalBodyProperties: Map,
) {
fun externalCustomerId(): String = externalCustomerId
- fun currency(): String = currency
+ /** The case sensitive currency or custom pricing unit to use for this alert. */
+ fun currency(): String = body.currency()
- fun type(): Type = type
+ /** The type of alert to create. This must be a valid alert type. */
+ fun type(): Type = body.type()
- fun thresholds(): Optional> = Optional.ofNullable(thresholds)
+ /** The thresholds that define the values at which the alert will be triggered. */
+ fun thresholds(): Optional> = body.thresholds()
fun _additionalHeaders(): Headers = additionalHeaders
fun _additionalQueryParams(): QueryParams = additionalQueryParams
- fun _additionalBodyProperties(): Map = additionalBodyProperties
+ fun _additionalBodyProperties(): Map = body._additionalProperties()
- @JvmSynthetic
- internal fun getBody(): AlertCreateForExternalCustomerBody {
- return AlertCreateForExternalCustomerBody(
- currency,
- type,
- thresholds,
- additionalBodyProperties,
- )
- }
+ @JvmSynthetic internal fun getBody(): AlertCreateForExternalCustomerBody = body
@JvmSynthetic internal fun getHeaders(): Headers = additionalHeaders
@@ -101,7 +93,7 @@ constructor(
private var currency: String? = null
private var type: Type? = null
- private var thresholds: List? = null
+ private var thresholds: MutableList? = null
private var additionalProperties: MutableMap = mutableMapOf()
@JvmSynthetic
@@ -122,7 +114,14 @@ constructor(
fun type(type: Type) = apply { this.type = type }
/** The thresholds that define the values at which the alert will be triggered. */
- fun thresholds(thresholds: List) = apply { this.thresholds = thresholds }
+ fun thresholds(thresholds: List) = apply {
+ this.thresholds = thresholds.toMutableList()
+ }
+
+ /** The thresholds that define the values at which the alert will be triggered. */
+ fun addThreshold(threshold: Threshold) = apply {
+ thresholds = (thresholds ?: mutableListOf()).apply { add(threshold) }
+ }
fun additionalProperties(additionalProperties: Map) = apply {
this.additionalProperties.clear()
@@ -181,27 +180,20 @@ constructor(
class Builder {
private var externalCustomerId: String? = null
- private var currency: String? = null
- private var type: Type? = null
- private var thresholds: MutableList = mutableListOf()
+ private var body: AlertCreateForExternalCustomerBody.Builder =
+ AlertCreateForExternalCustomerBody.builder()
private var additionalHeaders: Headers.Builder = Headers.builder()
private var additionalQueryParams: QueryParams.Builder = QueryParams.builder()
- private var additionalBodyProperties: MutableMap = mutableMapOf()
@JvmSynthetic
internal fun from(
alertCreateForExternalCustomerParams: AlertCreateForExternalCustomerParams
) = apply {
externalCustomerId = alertCreateForExternalCustomerParams.externalCustomerId
- currency = alertCreateForExternalCustomerParams.currency
- type = alertCreateForExternalCustomerParams.type
- thresholds =
- alertCreateForExternalCustomerParams.thresholds?.toMutableList() ?: mutableListOf()
+ body = alertCreateForExternalCustomerParams.body.toBuilder()
additionalHeaders = alertCreateForExternalCustomerParams.additionalHeaders.toBuilder()
additionalQueryParams =
alertCreateForExternalCustomerParams.additionalQueryParams.toBuilder()
- additionalBodyProperties =
- alertCreateForExternalCustomerParams.additionalBodyProperties.toMutableMap()
}
fun externalCustomerId(externalCustomerId: String) = apply {
@@ -209,19 +201,16 @@ constructor(
}
/** The case sensitive currency or custom pricing unit to use for this alert. */
- fun currency(currency: String) = apply { this.currency = currency }
+ fun currency(currency: String) = apply { body.currency(currency) }
/** The type of alert to create. This must be a valid alert type. */
- fun type(type: Type) = apply { this.type = type }
+ fun type(type: Type) = apply { body.type(type) }
/** The thresholds that define the values at which the alert will be triggered. */
- fun thresholds(thresholds: List) = apply {
- this.thresholds.clear()
- this.thresholds.addAll(thresholds)
- }
+ fun thresholds(thresholds: List) = apply { body.thresholds(thresholds) }
/** The thresholds that define the values at which the alert will be triggered. */
- fun addThreshold(threshold: Threshold) = apply { this.thresholds.add(threshold) }
+ fun addThreshold(threshold: Threshold) = apply { body.addThreshold(threshold) }
fun additionalHeaders(additionalHeaders: Headers) = apply {
this.additionalHeaders.clear()
@@ -322,25 +311,22 @@ constructor(
}
fun additionalBodyProperties(additionalBodyProperties: Map) = apply {
- this.additionalBodyProperties.clear()
- putAllAdditionalBodyProperties(additionalBodyProperties)
+ body.additionalProperties(additionalBodyProperties)
}
fun putAdditionalBodyProperty(key: String, value: JsonValue) = apply {
- additionalBodyProperties.put(key, value)
+ body.putAdditionalProperty(key, value)
}
fun putAllAdditionalBodyProperties(additionalBodyProperties: Map) =
apply {
- this.additionalBodyProperties.putAll(additionalBodyProperties)
+ body.putAllAdditionalProperties(additionalBodyProperties)
}
- fun removeAdditionalBodyProperty(key: String) = apply {
- additionalBodyProperties.remove(key)
- }
+ fun removeAdditionalBodyProperty(key: String) = apply { body.removeAdditionalProperty(key) }
fun removeAllAdditionalBodyProperties(keys: Set) = apply {
- keys.forEach(::removeAdditionalBodyProperty)
+ body.removeAllAdditionalProperties(keys)
}
fun build(): AlertCreateForExternalCustomerParams =
@@ -348,12 +334,9 @@ constructor(
checkNotNull(externalCustomerId) {
"`externalCustomerId` is required but was not set"
},
- checkNotNull(currency) { "`currency` is required but was not set" },
- checkNotNull(type) { "`type` is required but was not set" },
- thresholds.toImmutable().ifEmpty { null },
+ body.build(),
additionalHeaders.build(),
additionalQueryParams.build(),
- additionalBodyProperties.toImmutable(),
)
}
@@ -527,11 +510,11 @@ constructor(
return true
}
- return /* spotless:off */ other is AlertCreateForExternalCustomerParams && externalCustomerId == other.externalCustomerId && currency == other.currency && type == other.type && thresholds == other.thresholds && additionalHeaders == other.additionalHeaders && additionalQueryParams == other.additionalQueryParams && additionalBodyProperties == other.additionalBodyProperties /* spotless:on */
+ return /* spotless:off */ other is AlertCreateForExternalCustomerParams && externalCustomerId == other.externalCustomerId && body == other.body && additionalHeaders == other.additionalHeaders && additionalQueryParams == other.additionalQueryParams /* spotless:on */
}
- override fun hashCode(): Int = /* spotless:off */ Objects.hash(externalCustomerId, currency, type, thresholds, additionalHeaders, additionalQueryParams, additionalBodyProperties) /* spotless:on */
+ override fun hashCode(): Int = /* spotless:off */ Objects.hash(externalCustomerId, body, additionalHeaders, additionalQueryParams) /* spotless:on */
override fun toString() =
- "AlertCreateForExternalCustomerParams{externalCustomerId=$externalCustomerId, currency=$currency, type=$type, thresholds=$thresholds, additionalHeaders=$additionalHeaders, additionalQueryParams=$additionalQueryParams, additionalBodyProperties=$additionalBodyProperties}"
+ "AlertCreateForExternalCustomerParams{externalCustomerId=$externalCustomerId, body=$body, additionalHeaders=$additionalHeaders, additionalQueryParams=$additionalQueryParams}"
}
diff --git a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForSubscriptionParams.kt b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForSubscriptionParams.kt
index b043feac..5287c3aa 100644
--- a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForSubscriptionParams.kt
+++ b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertCreateForSubscriptionParams.kt
@@ -22,37 +22,29 @@ import java.util.Optional
class AlertCreateForSubscriptionParams
constructor(
private val subscriptionId: String,
- private val thresholds: List,
- private val type: Type,
- private val metricId: String?,
+ private val body: AlertCreateForSubscriptionBody,
private val additionalHeaders: Headers,
private val additionalQueryParams: QueryParams,
- private val additionalBodyProperties: Map,
) {
fun subscriptionId(): String = subscriptionId
- fun thresholds(): List = thresholds
+ /** The thresholds that define the values at which the alert will be triggered. */
+ fun thresholds(): List = body.thresholds()
- fun type(): Type = type
+ /** The type of alert to create. This must be a valid alert type. */
+ fun type(): Type = body.type()
- fun metricId(): Optional = Optional.ofNullable(metricId)
+ /** The metric to track usage for. */
+ fun metricId(): Optional = body.metricId()
fun _additionalHeaders(): Headers = additionalHeaders
fun _additionalQueryParams(): QueryParams = additionalQueryParams
- fun _additionalBodyProperties(): Map = additionalBodyProperties
+ fun _additionalBodyProperties(): Map = body._additionalProperties()
- @JvmSynthetic
- internal fun getBody(): AlertCreateForSubscriptionBody {
- return AlertCreateForSubscriptionBody(
- thresholds,
- type,
- metricId,
- additionalBodyProperties,
- )
- }
+ @JvmSynthetic internal fun getBody(): AlertCreateForSubscriptionBody = body
@JvmSynthetic internal fun getHeaders(): Headers = additionalHeaders
@@ -98,7 +90,7 @@ constructor(
class Builder {
- private var thresholds: List? = null
+ private var thresholds: MutableList? = null
private var type: Type? = null
private var metricId: String? = null
private var additionalProperties: MutableMap = mutableMapOf()
@@ -114,7 +106,14 @@ constructor(
}
/** The thresholds that define the values at which the alert will be triggered. */
- fun thresholds(thresholds: List) = apply { this.thresholds = thresholds }
+ fun thresholds(thresholds: List) = apply {
+ this.thresholds = thresholds.toMutableList()
+ }
+
+ /** The thresholds that define the values at which the alert will be triggered. */
+ fun addThreshold(threshold: Threshold) = apply {
+ thresholds = (thresholds ?: mutableListOf()).apply { add(threshold) }
+ }
/** The type of alert to create. This must be a valid alert type. */
fun type(type: Type) = apply { this.type = type }
@@ -180,43 +179,34 @@ constructor(
class Builder {
private var subscriptionId: String? = null
- private var thresholds: MutableList = mutableListOf()
- private var type: Type? = null
- private var metricId: String? = null
+ private var body: AlertCreateForSubscriptionBody.Builder =
+ AlertCreateForSubscriptionBody.builder()
private var additionalHeaders: Headers.Builder = Headers.builder()
private var additionalQueryParams: QueryParams.Builder = QueryParams.builder()
- private var additionalBodyProperties: MutableMap = mutableMapOf()
@JvmSynthetic
internal fun from(alertCreateForSubscriptionParams: AlertCreateForSubscriptionParams) =
apply {
subscriptionId = alertCreateForSubscriptionParams.subscriptionId
- thresholds = alertCreateForSubscriptionParams.thresholds.toMutableList()
- type = alertCreateForSubscriptionParams.type
- metricId = alertCreateForSubscriptionParams.metricId
+ body = alertCreateForSubscriptionParams.body.toBuilder()
additionalHeaders = alertCreateForSubscriptionParams.additionalHeaders.toBuilder()
additionalQueryParams =
alertCreateForSubscriptionParams.additionalQueryParams.toBuilder()
- additionalBodyProperties =
- alertCreateForSubscriptionParams.additionalBodyProperties.toMutableMap()
}
fun subscriptionId(subscriptionId: String) = apply { this.subscriptionId = subscriptionId }
/** The thresholds that define the values at which the alert will be triggered. */
- fun thresholds(thresholds: List) = apply {
- this.thresholds.clear()
- this.thresholds.addAll(thresholds)
- }
+ fun thresholds(thresholds: List) = apply { body.thresholds(thresholds) }
/** The thresholds that define the values at which the alert will be triggered. */
- fun addThreshold(threshold: Threshold) = apply { this.thresholds.add(threshold) }
+ fun addThreshold(threshold: Threshold) = apply { body.addThreshold(threshold) }
/** The type of alert to create. This must be a valid alert type. */
- fun type(type: Type) = apply { this.type = type }
+ fun type(type: Type) = apply { body.type(type) }
/** The metric to track usage for. */
- fun metricId(metricId: String) = apply { this.metricId = metricId }
+ fun metricId(metricId: String) = apply { body.metricId(metricId) }
fun additionalHeaders(additionalHeaders: Headers) = apply {
this.additionalHeaders.clear()
@@ -317,36 +307,30 @@ constructor(
}
fun additionalBodyProperties(additionalBodyProperties: Map) = apply {
- this.additionalBodyProperties.clear()
- putAllAdditionalBodyProperties(additionalBodyProperties)
+ body.additionalProperties(additionalBodyProperties)
}
fun putAdditionalBodyProperty(key: String, value: JsonValue) = apply {
- additionalBodyProperties.put(key, value)
+ body.putAdditionalProperty(key, value)
}
fun putAllAdditionalBodyProperties(additionalBodyProperties: Map) =
apply {
- this.additionalBodyProperties.putAll(additionalBodyProperties)
+ body.putAllAdditionalProperties(additionalBodyProperties)
}
- fun removeAdditionalBodyProperty(key: String) = apply {
- additionalBodyProperties.remove(key)
- }
+ fun removeAdditionalBodyProperty(key: String) = apply { body.removeAdditionalProperty(key) }
fun removeAllAdditionalBodyProperties(keys: Set) = apply {
- keys.forEach(::removeAdditionalBodyProperty)
+ body.removeAllAdditionalProperties(keys)
}
fun build(): AlertCreateForSubscriptionParams =
AlertCreateForSubscriptionParams(
checkNotNull(subscriptionId) { "`subscriptionId` is required but was not set" },
- thresholds.toImmutable(),
- checkNotNull(type) { "`type` is required but was not set" },
- metricId,
+ body.build(),
additionalHeaders.build(),
additionalQueryParams.build(),
- additionalBodyProperties.toImmutable(),
)
}
@@ -520,11 +504,11 @@ constructor(
return true
}
- return /* spotless:off */ other is AlertCreateForSubscriptionParams && subscriptionId == other.subscriptionId && thresholds == other.thresholds && type == other.type && metricId == other.metricId && additionalHeaders == other.additionalHeaders && additionalQueryParams == other.additionalQueryParams && additionalBodyProperties == other.additionalBodyProperties /* spotless:on */
+ return /* spotless:off */ other is AlertCreateForSubscriptionParams && subscriptionId == other.subscriptionId && body == other.body && additionalHeaders == other.additionalHeaders && additionalQueryParams == other.additionalQueryParams /* spotless:on */
}
- override fun hashCode(): Int = /* spotless:off */ Objects.hash(subscriptionId, thresholds, type, metricId, additionalHeaders, additionalQueryParams, additionalBodyProperties) /* spotless:on */
+ override fun hashCode(): Int = /* spotless:off */ Objects.hash(subscriptionId, body, additionalHeaders, additionalQueryParams) /* spotless:on */
override fun toString() =
- "AlertCreateForSubscriptionParams{subscriptionId=$subscriptionId, thresholds=$thresholds, type=$type, metricId=$metricId, additionalHeaders=$additionalHeaders, additionalQueryParams=$additionalQueryParams, additionalBodyProperties=$additionalBodyProperties}"
+ "AlertCreateForSubscriptionParams{subscriptionId=$subscriptionId, body=$body, additionalHeaders=$additionalHeaders, additionalQueryParams=$additionalQueryParams}"
}
diff --git a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertDisableParams.kt b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertDisableParams.kt
index f9a08d4b..6f058fdb 100644
--- a/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertDisableParams.kt
+++ b/orb-java-core/src/main/kotlin/com/withorb/api/models/AlertDisableParams.kt
@@ -21,6 +21,7 @@ constructor(
fun alertConfigurationId(): String = alertConfigurationId
+ /** Used to update the status of a plan alert scoped to this subscription_id */
fun subscriptionId(): Optional = Optional.ofNullable(subscriptionId)
fun _additionalHeaders(): Headers = additionalHeaders
@@ -30,9 +31,8 @@ constructor(
fun _additionalBodyProperties(): Map = additionalBodyProperties
@JvmSynthetic
- internal fun getBody(): Optional