|
22 | 22 | import java.net.URLEncoder; |
23 | 23 | import java.util.Base64; |
24 | 24 | import java.util.Map; |
25 | | -import java.util.function.Consumer; |
26 | 25 | import javax.imageio.ImageIO; |
27 | 26 | import com.authlete.common.dto.CredentialOfferCreateRequest; |
28 | 27 | import com.authlete.common.dto.CredentialOfferInfo; |
29 | 28 | import com.authlete.common.types.User; |
30 | 29 | import com.authlete.jaxrs.AuthorizationPageModel; |
31 | 30 | import com.authlete.jaxrs.server.util.ExceptionUtil; |
32 | 31 | import com.authlete.jaxrs.server.util.ProcessingUtil; |
| 32 | +import com.google.gson.JsonElement; |
| 33 | +import com.google.gson.JsonParser; |
33 | 34 | import com.google.zxing.BarcodeFormat; |
34 | 35 | import com.google.zxing.WriterException; |
35 | 36 | import com.google.zxing.client.j2se.MatrixToImageWriter; |
36 | 37 | import com.google.zxing.common.BitMatrix; |
37 | 38 | import com.google.zxing.qrcode.QRCodeWriter; |
| 39 | +import com.nimbusds.jose.shaded.gson.Gson; |
| 40 | +import com.nimbusds.jose.shaded.gson.GsonBuilder; |
| 41 | +import com.nimbusds.jose.shaded.gson.JsonParseException; |
38 | 42 |
|
39 | 43 |
|
40 | 44 | /** |
@@ -73,6 +77,7 @@ public class CredentialOfferPageModel extends AuthorizationPageModel |
73 | 77 | private CredentialOfferInfo info; |
74 | 78 | private String credentialOfferLink; |
75 | 79 | private String credentialOfferQrCode; |
| 80 | + private String credentialOfferContent; |
76 | 81 | private String credentialOfferUriLink; |
77 | 82 | private String credentialOfferUriQrCode; |
78 | 83 |
|
@@ -143,6 +148,14 @@ private String asQrCode(final String text) throws IOException, WriterException |
143 | 148 | } |
144 | 149 |
|
145 | 150 |
|
| 151 | + private String prettifyJson(final String json) |
| 152 | + { |
| 153 | + final Gson gson = new GsonBuilder().setPrettyPrinting().create(); |
| 154 | + final JsonElement je = JsonParser.parseString(json); |
| 155 | + return gson.toJson(je); |
| 156 | + } |
| 157 | + |
| 158 | + |
146 | 159 | public CredentialOfferCreateRequest toRequest(final User user) |
147 | 160 | { |
148 | 161 | return new CredentialOfferCreateRequest() |
@@ -280,6 +293,15 @@ public void setInfo(CredentialOfferInfo info) |
280 | 293 | { |
281 | 294 | throw ExceptionUtil.internalServerErrorException("Can't generate QR code."); |
282 | 295 | } |
| 296 | + |
| 297 | + this.credentialOfferContent = info.getCredentialOffer(); |
| 298 | + |
| 299 | + try |
| 300 | + { |
| 301 | + this.credentialOfferContent = prettifyJson(this.credentialOfferContent); |
| 302 | + } |
| 303 | + catch (JsonParseException ignored) |
| 304 | + {} |
283 | 305 | } |
284 | 306 |
|
285 | 307 |
|
@@ -307,6 +329,18 @@ public void setCredentialOfferQrCode(String credentialOfferQrCode) |
307 | 329 | } |
308 | 330 |
|
309 | 331 |
|
| 332 | + public String getCredentialOfferContent() |
| 333 | + { |
| 334 | + return credentialOfferContent; |
| 335 | + } |
| 336 | + |
| 337 | + |
| 338 | + public void setCredentialOfferContent(String credentialOfferContent) |
| 339 | + { |
| 340 | + this.credentialOfferContent = credentialOfferContent; |
| 341 | + } |
| 342 | + |
| 343 | + |
310 | 344 | public String getCredentialOfferUriLink() |
311 | 345 | { |
312 | 346 | return credentialOfferUriLink; |
|
0 commit comments