Alex Rudyy commented on QPID-7409:

I addressed your review comments for AbstractQueue and majority of review 
comments for JsonMessageContent in commit under revision 
As part of those changes I did the following:
* moved JsonMessageContent into AbstractQueue in order to share the code with 
MessageContent by means of parent abstract class
* the conversion and truncation code is now in MessageContentJsonConverter 
class where I addressed your comments about truncation of maps, nulls, strings

Re copyString: it converts string to json  in order to account for possible 
escaped Backslash,Slash,Backspace and Form feed characters in addition to 
quoting. Regarding not accounting  _remaining for DOTS: when DOTS is returned, 
the remaining is 0 or negative, i.e no space left. Nothing else will be added 
after that...
The truncation algorithm does not truncate content precisely to limit value. It 
does that on best effort basis...

I changed MessageConverter_v0_10_to_Internal, MessageConverter_v0_8_to_Internal 
as I found out that compressed map and list messages are not decompressed and 
reported as empty. I should have committed those changes separately

> Support preview of maps/list message content
> --------------------------------------------
>                 Key: QPID-7409
>                 URL: https://issues.apache.org/jira/browse/QPID-7409
>             Project: Qpid
>          Issue Type: Improvement
>            Reporter: Keith Wall
>            Assignee: Alex Rudyy
>             Fix For: qpid-java-6.1
>         Attachments: 
> 0001-QPID-7409-WIP-add-support-for-getting-of-message-con.patch
> When viewing messages through the web management console, if the message is 
> of type such as a list or map currently the user sees the bytes of the 
> underlying AMQP datastructure.  Instead, the preview area should display the 
> data in a human friendly way.
> The managed operation {{Queue#getMessageContent}} will be enhanced to be 
> capable of returning a message in JSON format if possible with an optional 
> parameter {{returnJson}}.  If rather than returning the message's content 
> bytes directly, it should first convert the message to an {{InternalMessage}} 
> (MessageConverterRegistry.getConverter(serverMessage.getClass, 
> InternalMessage.class).convert(...)) then use the JSON serialiser to serial 
> the MessageBody of the resulting internal message.
> Within the WMC, if the resulting object is of a previewable type (string, 
> map, list etc) and the content is not too long, the content should be added 
> to a scrollable preview pane of the message dialogue by traversing the object 
> tree and producing a human readable representation of its structure and 
> content.  (Perhaps an approach such as 
> https://stackoverflow.com/questions/13341373/render-arbitrary-json-in-html 
> will help)

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to