@@ -37,6 +37,8 @@ private constructor(
37
37
private val lastFour: JsonField <String >,
38
38
private val memo: JsonField <String >,
39
39
private val pan: JsonField <String >,
40
+ private val pendingCommands: JsonField <List <String >>,
41
+ private val pinStatus: JsonField <PinStatus >,
40
42
private val productId: JsonField <String >,
41
43
private val spendLimit: JsonField <Long >,
42
44
private val spendLimitDuration: JsonField <SpendLimitDuration >,
@@ -112,6 +114,19 @@ private constructor(
112
114
*/
113
115
fun pan (): Optional <String > = Optional .ofNullable(pan.getNullable(" pan" ))
114
116
117
+ /* *
118
+ * Indicates if there are offline PIN changes pending card interaction with an offline PIN
119
+ * terminal. Possible commands are: CHANGE_PIN, UNBLOCK_PIN. Applicable only to cards issued in
120
+ * markets supporting offline PINs.
121
+ */
122
+ fun pendingCommands (): Optional <List <String >> =
123
+ Optional .ofNullable(pendingCommands.getNullable(" pending_commands" ))
124
+
125
+ /* *
126
+ * Indicates if a card is blocked due a PIN status issue (e.g. excessive incorrect attempts).
127
+ */
128
+ fun pinStatus (): PinStatus = pinStatus.getRequired(" pin_status" )
129
+
115
130
/* *
116
131
* Only applicable to cards of type `PHYSICAL`. This must be configured with Lithic before use.
117
132
* Specifies the configuration (i.e., physical card art) that the card should be manufactured
@@ -237,6 +252,18 @@ private constructor(
237
252
*/
238
253
@JsonProperty(" pan" ) @ExcludeMissing fun _pan () = pan
239
254
255
+ /* *
256
+ * Indicates if there are offline PIN changes pending card interaction with an offline PIN
257
+ * terminal. Possible commands are: CHANGE_PIN, UNBLOCK_PIN. Applicable only to cards issued in
258
+ * markets supporting offline PINs.
259
+ */
260
+ @JsonProperty(" pending_commands" ) @ExcludeMissing fun _pendingCommands () = pendingCommands
261
+
262
+ /* *
263
+ * Indicates if a card is blocked due a PIN status issue (e.g. excessive incorrect attempts).
264
+ */
265
+ @JsonProperty(" pin_status" ) @ExcludeMissing fun _pinStatus () = pinStatus
266
+
240
267
/* *
241
268
* Only applicable to cards of type `PHYSICAL`. This must be configured with Lithic before use.
242
269
* Specifies the configuration (i.e., physical card art) that the card should be manufactured
@@ -320,6 +347,8 @@ private constructor(
320
347
lastFour()
321
348
memo()
322
349
pan()
350
+ pendingCommands()
351
+ pinStatus()
323
352
productId()
324
353
spendLimit()
325
354
spendLimitDuration()
@@ -352,6 +381,8 @@ private constructor(
352
381
this .lastFour == other.lastFour &&
353
382
this .memo == other.memo &&
354
383
this .pan == other.pan &&
384
+ this .pendingCommands == other.pendingCommands &&
385
+ this .pinStatus == other.pinStatus &&
355
386
this .productId == other.productId &&
356
387
this .spendLimit == other.spendLimit &&
357
388
this .spendLimitDuration == other.spendLimitDuration &&
@@ -379,6 +410,8 @@ private constructor(
379
410
lastFour,
380
411
memo,
381
412
pan,
413
+ pendingCommands,
414
+ pinStatus,
382
415
productId,
383
416
spendLimit,
384
417
spendLimitDuration,
@@ -392,7 +425,7 @@ private constructor(
392
425
}
393
426
394
427
override fun toString () =
395
- " Card{accountToken=$accountToken , authRuleTokens=$authRuleTokens , cardProgramToken=$cardProgramToken , cardholderCurrency=$cardholderCurrency , created=$created , cvv=$cvv , digitalCardArtToken=$digitalCardArtToken , expMonth=$expMonth , expYear=$expYear , funding=$funding , hostname=$hostname , lastFour=$lastFour , memo=$memo , pan=$pan , productId=$productId , spendLimit=$spendLimit , spendLimitDuration=$spendLimitDuration , state=$state , token=$token , type=$type , additionalProperties=$additionalProperties }"
428
+ " Card{accountToken=$accountToken , authRuleTokens=$authRuleTokens , cardProgramToken=$cardProgramToken , cardholderCurrency=$cardholderCurrency , created=$created , cvv=$cvv , digitalCardArtToken=$digitalCardArtToken , expMonth=$expMonth , expYear=$expYear , funding=$funding , hostname=$hostname , lastFour=$lastFour , memo=$memo , pan=$pan , pendingCommands= $pendingCommands , pinStatus= $pinStatus , productId=$productId , spendLimit=$spendLimit , spendLimitDuration=$spendLimitDuration , state=$state , token=$token , type=$type , additionalProperties=$additionalProperties }"
396
429
397
430
companion object {
398
431
@@ -415,6 +448,8 @@ private constructor(
415
448
private var lastFour: JsonField <String > = JsonMissing .of()
416
449
private var memo: JsonField <String > = JsonMissing .of()
417
450
private var pan: JsonField <String > = JsonMissing .of()
451
+ private var pendingCommands: JsonField <List <String >> = JsonMissing .of()
452
+ private var pinStatus: JsonField <PinStatus > = JsonMissing .of()
418
453
private var productId: JsonField <String > = JsonMissing .of()
419
454
private var spendLimit: JsonField <Long > = JsonMissing .of()
420
455
private var spendLimitDuration: JsonField <SpendLimitDuration > = JsonMissing .of()
@@ -439,6 +474,8 @@ private constructor(
439
474
this .lastFour = card.lastFour
440
475
this .memo = card.memo
441
476
this .pan = card.pan
477
+ this .pendingCommands = card.pendingCommands
478
+ this .pinStatus = card.pinStatus
442
479
this .productId = card.productId
443
480
this .spendLimit = card.spendLimit
444
481
this .spendLimitDuration = card.spendLimitDuration
@@ -608,6 +645,39 @@ private constructor(
608
645
@ExcludeMissing
609
646
fun pan (pan : JsonField <String >) = apply { this .pan = pan }
610
647
648
+ /* *
649
+ * Indicates if there are offline PIN changes pending card interaction with an offline PIN
650
+ * terminal. Possible commands are: CHANGE_PIN, UNBLOCK_PIN. Applicable only to cards issued
651
+ * in markets supporting offline PINs.
652
+ */
653
+ fun pendingCommands (pendingCommands : List <String >) =
654
+ pendingCommands(JsonField .of(pendingCommands))
655
+
656
+ /* *
657
+ * Indicates if there are offline PIN changes pending card interaction with an offline PIN
658
+ * terminal. Possible commands are: CHANGE_PIN, UNBLOCK_PIN. Applicable only to cards issued
659
+ * in markets supporting offline PINs.
660
+ */
661
+ @JsonProperty(" pending_commands" )
662
+ @ExcludeMissing
663
+ fun pendingCommands (pendingCommands : JsonField <List <String >>) = apply {
664
+ this .pendingCommands = pendingCommands
665
+ }
666
+
667
+ /* *
668
+ * Indicates if a card is blocked due a PIN status issue (e.g. excessive incorrect
669
+ * attempts).
670
+ */
671
+ fun pinStatus (pinStatus : PinStatus ) = pinStatus(JsonField .of(pinStatus))
672
+
673
+ /* *
674
+ * Indicates if a card is blocked due a PIN status issue (e.g. excessive incorrect
675
+ * attempts).
676
+ */
677
+ @JsonProperty(" pin_status" )
678
+ @ExcludeMissing
679
+ fun pinStatus (pinStatus : JsonField <PinStatus >) = apply { this .pinStatus = pinStatus }
680
+
611
681
/* *
612
682
* Only applicable to cards of type `PHYSICAL`. This must be configured with Lithic before
613
683
* use. Specifies the configuration (i.e., physical card art) that the card should be
@@ -779,6 +849,8 @@ private constructor(
779
849
lastFour,
780
850
memo,
781
851
pan,
852
+ pendingCommands.map { it.toUnmodifiable() },
853
+ pinStatus,
782
854
productId,
783
855
spendLimit,
784
856
spendLimitDuration,
@@ -1214,6 +1286,69 @@ private constructor(
1214
1286
}
1215
1287
}
1216
1288
1289
+ class PinStatus
1290
+ @JsonCreator
1291
+ private constructor (
1292
+ private val value: JsonField <String >,
1293
+ ) : Enum {
1294
+
1295
+ @com.fasterxml.jackson.annotation.JsonValue fun _value (): JsonField <String > = value
1296
+
1297
+ override fun equals (other : Any? ): Boolean {
1298
+ if (this == = other) {
1299
+ return true
1300
+ }
1301
+
1302
+ return other is PinStatus && this .value == other.value
1303
+ }
1304
+
1305
+ override fun hashCode () = value.hashCode()
1306
+
1307
+ override fun toString () = value.toString()
1308
+
1309
+ companion object {
1310
+
1311
+ @JvmField val OK = PinStatus (JsonField .of(" OK" ))
1312
+
1313
+ @JvmField val BLOCKED = PinStatus (JsonField .of(" BLOCKED" ))
1314
+
1315
+ @JvmField val NOT_SET = PinStatus (JsonField .of(" NOT_SET" ))
1316
+
1317
+ @JvmStatic fun of (value : String ) = PinStatus (JsonField .of(value))
1318
+ }
1319
+
1320
+ enum class Known {
1321
+ OK ,
1322
+ BLOCKED ,
1323
+ NOT_SET ,
1324
+ }
1325
+
1326
+ enum class Value {
1327
+ OK ,
1328
+ BLOCKED ,
1329
+ NOT_SET ,
1330
+ _UNKNOWN ,
1331
+ }
1332
+
1333
+ fun value (): Value =
1334
+ when (this ) {
1335
+ OK -> Value .OK
1336
+ BLOCKED -> Value .BLOCKED
1337
+ NOT_SET -> Value .NOT_SET
1338
+ else -> Value ._UNKNOWN
1339
+ }
1340
+
1341
+ fun known (): Known =
1342
+ when (this ) {
1343
+ OK -> Known .OK
1344
+ BLOCKED -> Known .BLOCKED
1345
+ NOT_SET -> Known .NOT_SET
1346
+ else -> throw LithicInvalidDataException (" Unknown PinStatus: $value " )
1347
+ }
1348
+
1349
+ fun asString (): String = _value ().asStringOrThrow()
1350
+ }
1351
+
1217
1352
class State
1218
1353
@JsonCreator
1219
1354
private constructor (
0 commit comments