gemmellr commented on code in PR #85:
URL: 
https://github.com/apache/activemq-artemis-console/pull/85#discussion_r2086843551


##########
artemis-console-extension/artemis-extension/packages/artemis-console-plugin/src/queues/QueuesView.tsx:
##########
@@ -99,6 +101,62 @@ export const QueuesView: React.FunctionComponent<Navigate> 
= navigate => {
         <MessageView currentMessage={currentMessage} back={back}/>
         </>
         }
+        <Modal aria-label='copy-message-modal'
+                variant={ModalVariant.medium}
+                isOpen={showHelpModal}
+                actions={[
+                  <Button key="cancel" variant="secondary" onClick={() => 
setShowHelpModal(false)}>
+                    Close
+                  </Button>
+                ]}>
+          <TextContent>
+            <Text component={TextVariants.h1}>Using Filter Expressions</Text>
+            <Text component={TextVariants.h2}>Apache ActiveMQ Artemis provides 
a powerful filter language based on a subset of the SQL 92 expression 
syntax.</Text>
+            <Text>It is the same as the syntax used for JMS & Jakarta 
Messaging selectors. 
+              For documentation on JMS selector syntax please the JavaDoc for 
javax.jms.Message or jakarta.jms.Message</Text>
+              <Text>A Filter will search for messages that have a matching 
header.</Text>
+              <Text component={TextVariants.h3}>Filter Examples</Text>
+              <TextList component={TextListVariants.dl}>
+                <TextListItem component={TextListItemVariants.dt}>header = 
'value'</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> has the string value 
<b>value</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header = 
1</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> has the int, short, 
long or double value <b>1</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header {'>'} 
1</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> has an int, short, 
long or double value greater than <b>1</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header 
{'<>'} 'value'</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> exists and does not 
equal <b>value</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header in 
('value1', 'value2')</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> equals either 
<b>value1</b> or <b>value2</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header1 = 
'value1' AND header2 = 'value2'</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header1</b> has the value 
<b>value1</b> and the message header <b>header2</b> has the value 
<b>value2</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header LIKE 
'value%'</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> has the pattern 
matching value <b>value%</b> such as <b>value1</b>, <b>value2345</b> 
etc</TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header LIKE 
'value_'</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> has the pattern 
matching value <b>value_</b> such as <b>value1</b> but not 
<b>value2345</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header is 
null</TextListItem>

Review Comment:
   ```suggestion
                   <TextListItem component={TextListItemVariants.dt}>header IS 
NULL</TextListItem>
   ```



##########
artemis-console-extension/artemis-extension/packages/artemis-console-plugin/src/queues/QueuesView.tsx:
##########
@@ -99,6 +101,62 @@ export const QueuesView: React.FunctionComponent<Navigate> 
= navigate => {
         <MessageView currentMessage={currentMessage} back={back}/>
         </>
         }
+        <Modal aria-label='copy-message-modal'
+                variant={ModalVariant.medium}
+                isOpen={showHelpModal}
+                actions={[
+                  <Button key="cancel" variant="secondary" onClick={() => 
setShowHelpModal(false)}>
+                    Close
+                  </Button>
+                ]}>
+          <TextContent>
+            <Text component={TextVariants.h1}>Using Filter Expressions</Text>
+            <Text component={TextVariants.h2}>Apache ActiveMQ Artemis provides 
a powerful filter language based on a subset of the SQL 92 expression 
syntax.</Text>
+            <Text>It is the same as the syntax used for JMS & Jakarta 
Messaging selectors. 
+              For documentation on JMS selector syntax please the JavaDoc for 
javax.jms.Message or jakarta.jms.Message</Text>
+              <Text>A Filter will search for messages that have a matching 
header.</Text>
+              <Text component={TextVariants.h3}>Filter Examples</Text>
+              <TextList component={TextListVariants.dl}>
+                <TextListItem component={TextListItemVariants.dt}>header = 
'value'</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> has the string value 
<b>value</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header = 
1</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> has the int, short, 
long or double value <b>1</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header {'>'} 
1</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> has an int, short, 
long or double value greater than <b>1</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header 
{'<>'} 'value'</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> exists and does not 
equal <b>value</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header in 
('value1', 'value2')</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> equals either 
<b>value1</b> or <b>value2</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header1 = 
'value1' AND header2 = 'value2'</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header1</b> has the value 
<b>value1</b> and the message header <b>header2</b> has the value 
<b>value2</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header LIKE 
'value%'</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> has the pattern 
matching value <b>value%</b> such as <b>value1</b>, <b>value2345</b> 
etc</TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header LIKE 
'value_'</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> has the pattern 
matching value <b>value_</b> such as <b>value1</b> but not 
<b>value2345</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header is 
null</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> has a null value or 
does not exist</TextListItem>
+              </TextList>
+              <Text> The following pre defined identifiers can also be used to 
filter messages </Text>
+              <TextList component={TextListVariants.dl}>
+                <TextListItem 
component={TextListItemVariants.dt}>AMQUserID</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}>The ID set 
by the user when the message is sent. This is analogous to the 
<b>JMSMessageID</b> for JMS-based clients.</TextListItem>
+                <TextListItem 
component={TextListItemVariants.dt}>AMQAddress</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}>The group ID 
used when sending the message.</TextListItem>

Review Comment:
   Description mismatch



##########
artemis-console-extension/artemis-extension/packages/artemis-console-plugin/src/queues/QueuesView.tsx:
##########
@@ -99,6 +101,62 @@ export const QueuesView: React.FunctionComponent<Navigate> 
= navigate => {
         <MessageView currentMessage={currentMessage} back={back}/>
         </>
         }
+        <Modal aria-label='copy-message-modal'
+                variant={ModalVariant.medium}
+                isOpen={showHelpModal}
+                actions={[
+                  <Button key="cancel" variant="secondary" onClick={() => 
setShowHelpModal(false)}>
+                    Close
+                  </Button>
+                ]}>
+          <TextContent>
+            <Text component={TextVariants.h1}>Using Filter Expressions</Text>
+            <Text component={TextVariants.h2}>Apache ActiveMQ Artemis provides 
a powerful filter language based on a subset of the SQL 92 expression 
syntax.</Text>
+            <Text>It is the same as the syntax used for JMS & Jakarta 
Messaging selectors. 
+              For documentation on JMS selector syntax please the JavaDoc for 
javax.jms.Message or jakarta.jms.Message</Text>
+              <Text>A Filter will search for messages that have a matching 
header.</Text>
+              <Text component={TextVariants.h3}>Filter Examples</Text>
+              <TextList component={TextListVariants.dl}>
+                <TextListItem component={TextListItemVariants.dt}>header = 
'value'</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> has the string value 
<b>value</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header = 
1</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> has the int, short, 
long or double value <b>1</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header {'>'} 
1</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> has an int, short, 
long or double value greater than <b>1</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header 
{'<>'} 'value'</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> exists and does not 
equal <b>value</b></TextListItem>
+                <TextListItem component={TextListItemVariants.dt}>header in 
('value1', 'value2')</TextListItem>

Review Comment:
   ```suggestion
                   <TextListItem component={TextListItemVariants.dt}>header IN 
('value1', 'value2')</TextListItem>
   ```



##########
artemis-console-extension/artemis-extension/packages/artemis-console-plugin/src/queues/QueuesView.tsx:
##########
@@ -99,6 +101,62 @@ export const QueuesView: React.FunctionComponent<Navigate> 
= navigate => {
         <MessageView currentMessage={currentMessage} back={back}/>
         </>
         }
+        <Modal aria-label='copy-message-modal'
+                variant={ModalVariant.medium}
+                isOpen={showHelpModal}
+                actions={[
+                  <Button key="cancel" variant="secondary" onClick={() => 
setShowHelpModal(false)}>
+                    Close
+                  </Button>
+                ]}>
+          <TextContent>
+            <Text component={TextVariants.h1}>Using Filter Expressions</Text>
+            <Text component={TextVariants.h2}>Apache ActiveMQ Artemis provides 
a powerful filter language based on a subset of the SQL 92 expression 
syntax.</Text>
+            <Text>It is the same as the syntax used for JMS & Jakarta 
Messaging selectors. 
+              For documentation on JMS selector syntax please the JavaDoc for 
javax.jms.Message or jakarta.jms.Message</Text>

Review Comment:
   ```suggestion
                 For documentation on JMS selector syntax please consult the 
JavaDoc for javax.jms.Message or jakarta.jms.Message</Text>
   ```
   
   Might also be worth linking to it, e.g. currently for the latter: 
https://jakarta.ee/specifications/messaging/3.1/apidocs/jakarta.messaging/jakarta/jms/message



##########
artemis-console-extension/artemis-extension/packages/artemis-console-plugin/src/queues/QueuesView.tsx:
##########
@@ -99,6 +101,62 @@ export const QueuesView: React.FunctionComponent<Navigate> 
= navigate => {
         <MessageView currentMessage={currentMessage} back={back}/>
         </>
         }
+        <Modal aria-label='copy-message-modal'
+                variant={ModalVariant.medium}
+                isOpen={showHelpModal}
+                actions={[
+                  <Button key="cancel" variant="secondary" onClick={() => 
setShowHelpModal(false)}>
+                    Close
+                  </Button>
+                ]}>
+          <TextContent>
+            <Text component={TextVariants.h1}>Using Filter Expressions</Text>
+            <Text component={TextVariants.h2}>Apache ActiveMQ Artemis provides 
a powerful filter language based on a subset of the SQL 92 expression 
syntax.</Text>
+            <Text>It is the same as the syntax used for JMS & Jakarta 
Messaging selectors. 
+              For documentation on JMS selector syntax please the JavaDoc for 
javax.jms.Message or jakarta.jms.Message</Text>
+              <Text>A Filter will search for messages that have a matching 
header.</Text>
+              <Text component={TextVariants.h3}>Filter Examples</Text>
+              <TextList component={TextListVariants.dl}>
+                <TextListItem component={TextListItemVariants.dt}>header = 
'value'</TextListItem>
+                <TextListItem component={TextListItemVariants.dd}> This will 
return any message where the message header <b>header</b> has the string value 
<b>value</b></TextListItem>

Review Comment:
   Saying the syntax is the same as (possibly say 'similar to', as it is not 
actually exactly the same?) JMS/Jakarta Messaging selectors and then 
immediately saying filters matches 'headers' possibly has potential to confuse 
given matching will as/more often be done against JMS _properties_; only a 
handful of JMS headers are allowed to be used in selectors, most of which arent 
mentioned here.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: gitbox-unsubscr...@activemq.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: gitbox-unsubscr...@activemq.apache.org
For additional commands, e-mail: gitbox-h...@activemq.apache.org
For further information, visit: https://activemq.apache.org/contact


Reply via email to