2323public final class CorrespondentBankDetails {
2424 private final Optional <String > bankName ;
2525
26+ private final Optional <Address > bankAddress ;
27+
28+ private final Optional <String > swiftCode ;
29+
2630 private final Optional <List <Tag >> tags ;
2731
2832 private final Map <String , Object > additionalProperties ;
2933
3034 private CorrespondentBankDetails (
31- Optional <String > bankName , Optional <List <Tag >> tags , Map <String , Object > additionalProperties ) {
35+ Optional <String > bankName ,
36+ Optional <Address > bankAddress ,
37+ Optional <String > swiftCode ,
38+ Optional <List <Tag >> tags ,
39+ Map <String , Object > additionalProperties ) {
3240 this .bankName = bankName ;
41+ this .bankAddress = bankAddress ;
42+ this .swiftCode = swiftCode ;
3343 this .tags = tags ;
3444 this .additionalProperties = additionalProperties ;
3545 }
@@ -42,6 +52,19 @@ public Optional<String> getBankName() {
4252 return bankName ;
4353 }
4454
55+ @ JsonProperty ("bankAddress" )
56+ public Optional <Address > getBankAddress () {
57+ return bankAddress ;
58+ }
59+
60+ /**
61+ * @return SWIFT code of the correspondent bank
62+ */
63+ @ JsonProperty ("swiftCode" )
64+ public Optional <String > getSwiftCode () {
65+ return swiftCode ;
66+ }
67+
4568 /**
4669 * @return Additional information that can be added via tags
4770 */
@@ -62,12 +85,15 @@ public Map<String, Object> getAdditionalProperties() {
6285 }
6386
6487 private boolean equalTo (CorrespondentBankDetails other ) {
65- return bankName .equals (other .bankName ) && tags .equals (other .tags );
88+ return bankName .equals (other .bankName )
89+ && bankAddress .equals (other .bankAddress )
90+ && swiftCode .equals (other .swiftCode )
91+ && tags .equals (other .tags );
6692 }
6793
6894 @ java .lang .Override
6995 public int hashCode () {
70- return Objects .hash (this .bankName , this .tags );
96+ return Objects .hash (this .bankName , this .bankAddress , this . swiftCode , this . tags );
7197 }
7298
7399 @ java .lang .Override
@@ -83,6 +109,10 @@ public static Builder builder() {
83109 public static final class Builder {
84110 private Optional <String > bankName = Optional .empty ();
85111
112+ private Optional <Address > bankAddress = Optional .empty ();
113+
114+ private Optional <String > swiftCode = Optional .empty ();
115+
86116 private Optional <List <Tag >> tags = Optional .empty ();
87117
88118 @ JsonAnySetter
@@ -92,6 +122,8 @@ private Builder() {}
92122
93123 public Builder from (CorrespondentBankDetails other ) {
94124 bankName (other .getBankName ());
125+ bankAddress (other .getBankAddress ());
126+ swiftCode (other .getSwiftCode ());
95127 tags (other .getTags ());
96128 return this ;
97129 }
@@ -107,6 +139,28 @@ public Builder bankName(String bankName) {
107139 return this ;
108140 }
109141
142+ @ JsonSetter (value = "bankAddress" , nulls = Nulls .SKIP )
143+ public Builder bankAddress (Optional <Address > bankAddress ) {
144+ this .bankAddress = bankAddress ;
145+ return this ;
146+ }
147+
148+ public Builder bankAddress (Address bankAddress ) {
149+ this .bankAddress = Optional .ofNullable (bankAddress );
150+ return this ;
151+ }
152+
153+ @ JsonSetter (value = "swiftCode" , nulls = Nulls .SKIP )
154+ public Builder swiftCode (Optional <String > swiftCode ) {
155+ this .swiftCode = swiftCode ;
156+ return this ;
157+ }
158+
159+ public Builder swiftCode (String swiftCode ) {
160+ this .swiftCode = Optional .ofNullable (swiftCode );
161+ return this ;
162+ }
163+
110164 @ JsonSetter (value = "tags" , nulls = Nulls .SKIP )
111165 public Builder tags (Optional <List <Tag >> tags ) {
112166 this .tags = tags ;
@@ -119,7 +173,7 @@ public Builder tags(List<Tag> tags) {
119173 }
120174
121175 public CorrespondentBankDetails build () {
122- return new CorrespondentBankDetails (bankName , tags , additionalProperties );
176+ return new CorrespondentBankDetails (bankName , bankAddress , swiftCode , tags , additionalProperties );
123177 }
124178 }
125179}
0 commit comments