Skip to content

Commit c55c55e

Browse files
feat(api): add tier and state to financial_accounts (#301)
1 parent 3972792 commit c55c55e

5 files changed

Lines changed: 84 additions & 3 deletions

File tree

lithic-java-core/src/main/kotlin/com/lithic/api/models/FinancialAccountCreditConfig.kt

Lines changed: 49 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ private constructor(
2323
private val creditLimit: JsonField<Long>,
2424
private val externalBankAccountToken: JsonField<String>,
2525
private val creditProductToken: JsonField<String>,
26+
private val tier: JsonField<String>,
27+
private val financialAccountState: JsonField<String>,
2628
private val additionalProperties: Map<String, JsonValue>,
2729
) {
2830

@@ -42,6 +44,13 @@ private constructor(
4244
fun creditProductToken(): Optional<String> =
4345
Optional.ofNullable(creditProductToken.getNullable("credit_product_token"))
4446

47+
/** Tier assigned to the financial account */
48+
fun tier(): Optional<String> = Optional.ofNullable(tier.getNullable("tier"))
49+
50+
/** State of the financial account */
51+
fun financialAccountState(): Optional<String> =
52+
Optional.ofNullable(financialAccountState.getNullable("financial_account_state"))
53+
4554
/** Globally unique identifier for the account */
4655
@JsonProperty("account_token") @ExcludeMissing fun _accountToken() = accountToken
4756

@@ -56,6 +65,14 @@ private constructor(
5665
@ExcludeMissing
5766
fun _creditProductToken() = creditProductToken
5867

68+
/** Tier assigned to the financial account */
69+
@JsonProperty("tier") @ExcludeMissing fun _tier() = tier
70+
71+
/** State of the financial account */
72+
@JsonProperty("financial_account_state")
73+
@ExcludeMissing
74+
fun _financialAccountState() = financialAccountState
75+
5976
@JsonAnyGetter
6077
@ExcludeMissing
6178
fun _additionalProperties(): Map<String, JsonValue> = additionalProperties
@@ -66,6 +83,8 @@ private constructor(
6683
creditLimit()
6784
externalBankAccountToken()
6885
creditProductToken()
86+
tier()
87+
financialAccountState()
6988
validated = true
7089
}
7190
}
@@ -82,6 +101,8 @@ private constructor(
82101
this.creditLimit == other.creditLimit &&
83102
this.externalBankAccountToken == other.externalBankAccountToken &&
84103
this.creditProductToken == other.creditProductToken &&
104+
this.tier == other.tier &&
105+
this.financialAccountState == other.financialAccountState &&
85106
this.additionalProperties == other.additionalProperties
86107
}
87108

@@ -93,14 +114,16 @@ private constructor(
93114
creditLimit,
94115
externalBankAccountToken,
95116
creditProductToken,
117+
tier,
118+
financialAccountState,
96119
additionalProperties,
97120
)
98121
}
99122
return hashCode
100123
}
101124

102125
override fun toString() =
103-
"FinancialAccountCreditConfig{accountToken=$accountToken, creditLimit=$creditLimit, externalBankAccountToken=$externalBankAccountToken, creditProductToken=$creditProductToken, additionalProperties=$additionalProperties}"
126+
"FinancialAccountCreditConfig{accountToken=$accountToken, creditLimit=$creditLimit, externalBankAccountToken=$externalBankAccountToken, creditProductToken=$creditProductToken, tier=$tier, financialAccountState=$financialAccountState, additionalProperties=$additionalProperties}"
104127

105128
companion object {
106129

@@ -113,6 +136,8 @@ private constructor(
113136
private var creditLimit: JsonField<Long> = JsonMissing.of()
114137
private var externalBankAccountToken: JsonField<String> = JsonMissing.of()
115138
private var creditProductToken: JsonField<String> = JsonMissing.of()
139+
private var tier: JsonField<String> = JsonMissing.of()
140+
private var financialAccountState: JsonField<String> = JsonMissing.of()
116141
private var additionalProperties: MutableMap<String, JsonValue> = mutableMapOf()
117142

118143
@JvmSynthetic
@@ -121,6 +146,8 @@ private constructor(
121146
this.creditLimit = financialAccountCreditConfig.creditLimit
122147
this.externalBankAccountToken = financialAccountCreditConfig.externalBankAccountToken
123148
this.creditProductToken = financialAccountCreditConfig.creditProductToken
149+
this.tier = financialAccountCreditConfig.tier
150+
this.financialAccountState = financialAccountCreditConfig.financialAccountState
124151
additionalProperties(financialAccountCreditConfig.additionalProperties)
125152
}
126153

@@ -160,6 +187,25 @@ private constructor(
160187
this.creditProductToken = creditProductToken
161188
}
162189

190+
/** Tier assigned to the financial account */
191+
fun tier(tier: String) = tier(JsonField.of(tier))
192+
193+
/** Tier assigned to the financial account */
194+
@JsonProperty("tier")
195+
@ExcludeMissing
196+
fun tier(tier: JsonField<String>) = apply { this.tier = tier }
197+
198+
/** State of the financial account */
199+
fun financialAccountState(financialAccountState: String) =
200+
financialAccountState(JsonField.of(financialAccountState))
201+
202+
/** State of the financial account */
203+
@JsonProperty("financial_account_state")
204+
@ExcludeMissing
205+
fun financialAccountState(financialAccountState: JsonField<String>) = apply {
206+
this.financialAccountState = financialAccountState
207+
}
208+
163209
fun additionalProperties(additionalProperties: Map<String, JsonValue>) = apply {
164210
this.additionalProperties.clear()
165211
this.additionalProperties.putAll(additionalProperties)
@@ -180,6 +226,8 @@ private constructor(
180226
creditLimit,
181227
externalBankAccountToken,
182228
creditProductToken,
229+
tier,
230+
financialAccountState,
183231
additionalProperties.toUnmodifiable(),
184232
)
185233
}

lithic-java-core/src/main/kotlin/com/lithic/api/models/FinancialAccountCreditConfigurationUpdateParams.kt

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ constructor(
2020
private val creditLimit: Long?,
2121
private val creditProductToken: String?,
2222
private val externalBankAccountToken: String?,
23+
private val tier: String?,
2324
private val additionalQueryParams: Map<String, List<String>>,
2425
private val additionalHeaders: Map<String, List<String>>,
2526
private val additionalBodyProperties: Map<String, JsonValue>,
@@ -33,12 +34,15 @@ constructor(
3334

3435
fun externalBankAccountToken(): Optional<String> = Optional.ofNullable(externalBankAccountToken)
3536

37+
fun tier(): Optional<String> = Optional.ofNullable(tier)
38+
3639
@JvmSynthetic
3740
internal fun getBody(): FinancialAccountCreditConfigurationUpdateBody {
3841
return FinancialAccountCreditConfigurationUpdateBody(
3942
creditLimit,
4043
creditProductToken,
4144
externalBankAccountToken,
45+
tier,
4246
additionalBodyProperties,
4347
)
4448
}
@@ -61,6 +65,7 @@ constructor(
6165
private val creditLimit: Long?,
6266
private val creditProductToken: String?,
6367
private val externalBankAccountToken: String?,
68+
private val tier: String?,
6469
private val additionalProperties: Map<String, JsonValue>,
6570
) {
6671

@@ -74,6 +79,9 @@ constructor(
7479
@JsonProperty("external_bank_account_token")
7580
fun externalBankAccountToken(): String? = externalBankAccountToken
7681

82+
/** Tier to assign to a financial account */
83+
@JsonProperty("tier") fun tier(): String? = tier
84+
7785
@JsonAnyGetter
7886
@ExcludeMissing
7987
fun _additionalProperties(): Map<String, JsonValue> = additionalProperties
@@ -89,6 +97,7 @@ constructor(
8997
this.creditLimit == other.creditLimit &&
9098
this.creditProductToken == other.creditProductToken &&
9199
this.externalBankAccountToken == other.externalBankAccountToken &&
100+
this.tier == other.tier &&
92101
this.additionalProperties == other.additionalProperties
93102
}
94103

@@ -99,14 +108,15 @@ constructor(
99108
creditLimit,
100109
creditProductToken,
101110
externalBankAccountToken,
111+
tier,
102112
additionalProperties,
103113
)
104114
}
105115
return hashCode
106116
}
107117

108118
override fun toString() =
109-
"FinancialAccountCreditConfigurationUpdateBody{creditLimit=$creditLimit, creditProductToken=$creditProductToken, externalBankAccountToken=$externalBankAccountToken, additionalProperties=$additionalProperties}"
119+
"FinancialAccountCreditConfigurationUpdateBody{creditLimit=$creditLimit, creditProductToken=$creditProductToken, externalBankAccountToken=$externalBankAccountToken, tier=$tier, additionalProperties=$additionalProperties}"
110120

111121
companion object {
112122

@@ -118,6 +128,7 @@ constructor(
118128
private var creditLimit: Long? = null
119129
private var creditProductToken: String? = null
120130
private var externalBankAccountToken: String? = null
131+
private var tier: String? = null
121132
private var additionalProperties: MutableMap<String, JsonValue> = mutableMapOf()
122133

123134
@JvmSynthetic
@@ -130,6 +141,7 @@ constructor(
130141
financialAccountCreditConfigurationUpdateBody.creditProductToken
131142
this.externalBankAccountToken =
132143
financialAccountCreditConfigurationUpdateBody.externalBankAccountToken
144+
this.tier = financialAccountCreditConfigurationUpdateBody.tier
133145
additionalProperties(
134146
financialAccountCreditConfigurationUpdateBody.additionalProperties
135147
)
@@ -149,6 +161,9 @@ constructor(
149161
this.externalBankAccountToken = externalBankAccountToken
150162
}
151163

164+
/** Tier to assign to a financial account */
165+
@JsonProperty("tier") fun tier(tier: String) = apply { this.tier = tier }
166+
152167
fun additionalProperties(additionalProperties: Map<String, JsonValue>) = apply {
153168
this.additionalProperties.clear()
154169
this.additionalProperties.putAll(additionalProperties)
@@ -168,6 +183,7 @@ constructor(
168183
creditLimit,
169184
creditProductToken,
170185
externalBankAccountToken,
186+
tier,
171187
additionalProperties.toUnmodifiable(),
172188
)
173189
}
@@ -189,6 +205,7 @@ constructor(
189205
this.creditLimit == other.creditLimit &&
190206
this.creditProductToken == other.creditProductToken &&
191207
this.externalBankAccountToken == other.externalBankAccountToken &&
208+
this.tier == other.tier &&
192209
this.additionalQueryParams == other.additionalQueryParams &&
193210
this.additionalHeaders == other.additionalHeaders &&
194211
this.additionalBodyProperties == other.additionalBodyProperties
@@ -200,14 +217,15 @@ constructor(
200217
creditLimit,
201218
creditProductToken,
202219
externalBankAccountToken,
220+
tier,
203221
additionalQueryParams,
204222
additionalHeaders,
205223
additionalBodyProperties,
206224
)
207225
}
208226

209227
override fun toString() =
210-
"FinancialAccountCreditConfigurationUpdateParams{financialAccountToken=$financialAccountToken, creditLimit=$creditLimit, creditProductToken=$creditProductToken, externalBankAccountToken=$externalBankAccountToken, additionalQueryParams=$additionalQueryParams, additionalHeaders=$additionalHeaders, additionalBodyProperties=$additionalBodyProperties}"
228+
"FinancialAccountCreditConfigurationUpdateParams{financialAccountToken=$financialAccountToken, creditLimit=$creditLimit, creditProductToken=$creditProductToken, externalBankAccountToken=$externalBankAccountToken, tier=$tier, additionalQueryParams=$additionalQueryParams, additionalHeaders=$additionalHeaders, additionalBodyProperties=$additionalBodyProperties}"
211229

212230
fun toBuilder() = Builder().from(this)
213231

@@ -223,6 +241,7 @@ constructor(
223241
private var creditLimit: Long? = null
224242
private var creditProductToken: String? = null
225243
private var externalBankAccountToken: String? = null
244+
private var tier: String? = null
226245
private var additionalQueryParams: MutableMap<String, MutableList<String>> = mutableMapOf()
227246
private var additionalHeaders: MutableMap<String, MutableList<String>> = mutableMapOf()
228247
private var additionalBodyProperties: MutableMap<String, JsonValue> = mutableMapOf()
@@ -239,6 +258,7 @@ constructor(
239258
financialAccountCreditConfigurationUpdateParams.creditProductToken
240259
this.externalBankAccountToken =
241260
financialAccountCreditConfigurationUpdateParams.externalBankAccountToken
261+
this.tier = financialAccountCreditConfigurationUpdateParams.tier
242262
additionalQueryParams(
243263
financialAccountCreditConfigurationUpdateParams.additionalQueryParams
244264
)
@@ -263,6 +283,9 @@ constructor(
263283
this.externalBankAccountToken = externalBankAccountToken
264284
}
265285

286+
/** Tier to assign to a financial account */
287+
fun tier(tier: String) = apply { this.tier = tier }
288+
266289
fun additionalQueryParams(additionalQueryParams: Map<String, List<String>>) = apply {
267290
this.additionalQueryParams.clear()
268291
putAllQueryParams(additionalQueryParams)
@@ -325,6 +348,7 @@ constructor(
325348
creditLimit,
326349
creditProductToken,
327350
externalBankAccountToken,
351+
tier,
328352
additionalQueryParams.mapValues { it.value.toUnmodifiable() }.toUnmodifiable(),
329353
additionalHeaders.mapValues { it.value.toUnmodifiable() }.toUnmodifiable(),
330354
additionalBodyProperties.toUnmodifiable(),

lithic-java-core/src/test/kotlin/com/lithic/api/models/FinancialAccountCreditConfigTest.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ class FinancialAccountCreditConfigTest {
1515
.creditLimit(123L)
1616
.creditProductToken("credit_product_token")
1717
.externalBankAccountToken("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
18+
.financialAccountState("financial_account_state")
19+
.tier("tier")
1820
.build()
1921
assertThat(financialAccountCreditConfig).isNotNull
2022
assertThat(financialAccountCreditConfig.accountToken())
@@ -24,5 +26,8 @@ class FinancialAccountCreditConfigTest {
2426
.contains("credit_product_token")
2527
assertThat(financialAccountCreditConfig.externalBankAccountToken())
2628
.contains("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
29+
assertThat(financialAccountCreditConfig.financialAccountState())
30+
.contains("financial_account_state")
31+
assertThat(financialAccountCreditConfig.tier()).contains("tier")
2732
}
2833
}

lithic-java-core/src/test/kotlin/com/lithic/api/models/FinancialAccountCreditConfigurationUpdateParamsTest.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ class FinancialAccountCreditConfigurationUpdateParamsTest {
1515
.creditLimit(123L)
1616
.creditProductToken("credit_product_token")
1717
.externalBankAccountToken("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
18+
.tier("x")
1819
.build()
1920
}
2021

@@ -26,13 +27,15 @@ class FinancialAccountCreditConfigurationUpdateParamsTest {
2627
.creditLimit(123L)
2728
.creditProductToken("credit_product_token")
2829
.externalBankAccountToken("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
30+
.tier("x")
2931
.build()
3032
val body = params.getBody()
3133
assertThat(body).isNotNull
3234
assertThat(body.creditLimit()).isEqualTo(123L)
3335
assertThat(body.creditProductToken()).isEqualTo("credit_product_token")
3436
assertThat(body.externalBankAccountToken())
3537
.isEqualTo("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
38+
assertThat(body.tier()).isEqualTo("x")
3639
}
3740

3841
@Test

lithic-java-core/src/test/kotlin/com/lithic/api/services/blocking/financialAccounts/CreditConfigurationServiceTest.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ class CreditConfigurationServiceTest {
4444
.creditLimit(123L)
4545
.creditProductToken("credit_product_token")
4646
.externalBankAccountToken("182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e")
47+
.tier("x")
4748
.build()
4849
)
4950
println(financialAccountCreditConfig)

0 commit comments

Comments
 (0)