[ 
https://issues.apache.org/jira/browse/ARTEMIS-3584?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Erwin Dondorp updated ARTEMIS-3584:
-----------------------------------
    Attachment:     (was: screenshot-2.png)

> show multiple representations of the payload on "Browse Queue"
> --------------------------------------------------------------
>
>                 Key: ARTEMIS-3584
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-3584
>             Project: ActiveMQ Artemis
>          Issue Type: Improvement
>          Components: Web Console
>    Affects Versions: 2.19.0
>            Reporter: Erwin Dondorp
>            Priority: Minor
>         Attachments: screenshot-3.png
>
>          Time Spent: 40m
>  Remaining Estimate: 0h
>
> A message payload can be viewed in a few different ways: text, hexadecimal 
> bytes and decimal bytes, or a combination of these. However, when a message 
> payload follows the internal structure of its protocol, it is 
> indistinguishable whether the text that is shown is the actual payload for a 
> text message, or the representation for a structured message.
> I'm proposing a new visualisation, in which multiple (relevant) 
> representations of the message payload are shown in a tabbed area. Basically 
> the tabs are added to the message description and message payload fields that 
> already exist. Selecting a tab will just replace the content of these 2 
> fields.
> The following tabs are proposed:
> * Text
> * Hex
> * Decimal
> * AMQP
> * Large
> * Compressed
> The first 3 (Text/Hex/Decimal) are always visible. The "Text" tab is only 
> active when the message has an actual text payload, otherwise it is inactive. 
> The Hex and Decimal tabs are always active, except for large messages. The 
> last 3 tabs (AMQP/Large/Compressed) are only visible when the message-payload 
> is of that type. The AMQP tab shows the simple AMQP data structure in a 
> JSON-like notation, and the Large and Compressed tabs just inform the user 
> that the message is large or compressed. Using 3 separate tabs for this 
> quickly informs the user that the text that is shown is a representation and 
> not the actual text.
> All relevant representations are generated on the server-side, including the 
> hex and decimal representations that previously were constructed on the 
> gui-side.
> The construction of representations that are similar between the message 
> protocols is now shared code. this applies to text/hex/binary.
> The preferences option "Browse Bytes Messages" is now removed. Instead, the 
> system will remember the last representation that was used. otherwise the 
> first active representation is selected.
> A first look:
>  !screenshot-3.png! 
> TODO:
> * setup initial view (build+test)
> * switch views (build+test)
> * revert bytes-representation to browser-side, otherwise it is always sent 
> twice, once for Hex and once for Decimal
> * test with all protocols and all message types
> * cleanup
> It may take a while before the matching PR is ready...



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to