From 3bf65422d33713f25b5fb625ddde0ef1b040510f Mon Sep 17 00:00:00 2001 From: pricelees Date: Tue, 15 Jul 2025 17:34:35 +0900 Subject: [PATCH] =?UTF-8?q?refactor:=20=EC=B7=A8=EC=86=8C=20=EC=9D=91?= =?UTF-8?q?=EB=8B=B5=EC=9D=84=20=EC=97=AD=EC=A7=81=EB=A0=AC=ED=99=94?= =?UTF-8?q?=ED=95=98=EB=8A=94=20PaymentCancelResponseDeserializer=20?= =?UTF-8?q?=EC=BD=94=ED=8B=80=EB=A6=B0=20=EB=A7=88=EC=9D=B4=EA=B7=B8?= =?UTF-8?q?=EB=A0=88=EC=9D=B4=EC=85=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PaymentCancelResponseDeserializer.kt | 60 +++++++++---------- 1 file changed, 27 insertions(+), 33 deletions(-) diff --git a/src/main/java/roomescape/payment/web/support/PaymentCancelResponseDeserializer.kt b/src/main/java/roomescape/payment/web/support/PaymentCancelResponseDeserializer.kt index 60993797..c1e7b904 100644 --- a/src/main/java/roomescape/payment/web/support/PaymentCancelResponseDeserializer.kt +++ b/src/main/java/roomescape/payment/web/support/PaymentCancelResponseDeserializer.kt @@ -1,38 +1,32 @@ -package roomescape.payment.web.support; +package roomescape.payment.web.support -import java.io.IOException; -import java.time.OffsetDateTime; -import java.time.format.DateTimeFormatter; +import com.fasterxml.jackson.core.JsonParser +import com.fasterxml.jackson.core.TreeNode +import com.fasterxml.jackson.databind.DeserializationContext +import com.fasterxml.jackson.databind.JsonNode +import com.fasterxml.jackson.databind.deser.std.StdDeserializer +import roomescape.payment.web.dto.response.PaymentCancelResponse +import java.io.IOException +import java.time.OffsetDateTime -import com.fasterxml.jackson.core.JsonParser; -import com.fasterxml.jackson.databind.DeserializationContext; -import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.deser.std.StdDeserializer; +class PaymentCancelResponseDeserializer( + vc: Class? = null +) : StdDeserializer(vc) { -import roomescape.payment.web.dto.response.PaymentCancelResponse; + @Throws(IOException::class) + override fun deserialize( + jsonParser: JsonParser, + deserializationContext: DeserializationContext? + ): PaymentCancelResponse { + val cancels: JsonNode = jsonParser.codec.readTree(jsonParser) + .get("cancels") + .get(0) as JsonNode -public class PaymentCancelResponseDeserializer extends StdDeserializer { - - private static final DateTimeFormatter DATE_TIME_FORMATTER = DateTimeFormatter.ofPattern( - "yyyy-MM-dd'T'HH:mm:ssXXX"); - - public PaymentCancelResponseDeserializer() { - this(null); - } - - public PaymentCancelResponseDeserializer(Class vc) { - super(vc); - } - - @Override - public PaymentCancelResponse deserialize(JsonParser jsonParser, DeserializationContext deserializationContext) - throws IOException { - JsonNode cancels = (JsonNode)jsonParser.getCodec().readTree(jsonParser).get("cancels").get(0); - return new PaymentCancelResponse( - cancels.get("cancelStatus").asText(), - cancels.get("cancelReason").asText(), - cancels.get("cancelAmount").asLong(), - OffsetDateTime.parse(cancels.get("canceledAt").asText()) - ); - } + return PaymentCancelResponse( + cancels.get("cancelStatus").asText(), + cancels.get("cancelReason").asText(), + cancels.get("cancelAmount").asLong(), + OffsetDateTime.parse(cancels.get("canceledAt").asText()) + ) + } }