[ https://issues.apache.org/jira/browse/IGNITE-6013?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16121461#comment-16121461 ]
Andrey Novikov commented on IGNITE-6013: ---------------------------------------- Hi [~kuaw26], I think will be better to create generic deserializer for such fields and bind it using annotation JsonDeserialize. What do you think about this? > Web agent: refactor processing response from cluster > ---------------------------------------------------- > > Key: IGNITE-6013 > URL: https://issues.apache.org/jira/browse/IGNITE-6013 > Project: Ignite > Issue Type: Improvement > Reporter: Alexey Kuznetsov > Assignee: Andrey Novikov > Fix For: 2.2 > > > RestExecutor.sendRequest() contain following code: > {code} > .... > try (Response resp = > httpClient.newCall(reqBuilder.build()).execute()) { > String content = resp.body().string(); > if (resp.isSuccessful()) { > JsonNode node = mapper.readTree(content); > .... > {code} > Problems: > # String content = resp.body().string(); >> Generate not needed String. > # JsonNode node = mapper.readTree(content); >> Generates a big tree of > JsonNodes > > Could be fixed like: > RestResponseHolder res = MAPPER.readValue(resp.body().byteStream(), > RestResponseHolder.class); > Where for RestResponseHolder should also created optimized > RestResponseHolderDeserializer that will extract response as String without > building tree of JsonNodes. -- This message was sent by Atlassian JIRA (v6.4.14#64029)