[ 
https://issues.apache.org/jira/browse/QPID-6969?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15193178#comment-15193178
 ] 

Lorenz Quack commented on QPID-6969:
------------------------------------

Review comments:
 * no tests, no documentation, no examples :(
 * {{QueryServlet#performQuery()}} is relatively long, deeply nested and 
consists of several distinct tasks. I would propose to break it up (patch 
attached)
 * {{ConfiguredObjectFilterParser.java}} claims it was autogenerated from 
{{SelectorParser.jj}} which seems unlikely.
 * It would be nice to clearly separate (auto?)generated code from hand written 
code. It even seems that not all generated files (e.g. 
{{ConfiguredObjectFilterParser.java}}) contain a comment to not edit them which 
seems like a minimal requirement.
 * Are these files really *auto*-generated? If so I would expect a {{mvn clean 
install}} to pick up any changes to a *.jj file which does not seem to be the 
case. I would call them generated (and maybe include instructions on how to 
regenerate them) or truly autogenerate them as part of the build process.
 * The mix of grammar rules and code in the *.jj files make it very hard to 
reason about.
 * I find it worrying that our grammars (SelectorParser.jj and 
ConfiguredObjectFilterParser.jj) are longer than the [grammar for the entire 
C-language|https://java.net/downloads/javacc/contrib/grammars/C.jj]
 * {{TokenMgrError}} is not caught crashing the broker (e.g. 
{{/querybroker/broker?select="}})

> [Java Broker] Provide SQL-like querying functionality through the HTTP 
> Management API
> -------------------------------------------------------------------------------------
>
>                 Key: QPID-6969
>                 URL: https://issues.apache.org/jira/browse/QPID-6969
>             Project: Qpid
>          Issue Type: Improvement
>          Components: Java Broker
>            Reporter: Rob Godfrey
>            Assignee: Rob Godfrey
>             Fix For: qpid-java-6.1
>
>         Attachments: 
> 0001-QPID-6969-Java-Broker-Refactor-QueryServlet-performQ.patch
>
>
> For reporting and monitoring it is sometimes more convenient to provide more 
> complex querying features than are currently supported by the REST API, and 
> to limit the results brought back to be only certain attributes of the 
> queried object.
> We should add mechanisms to query configured objects across the whole broker, 
> or only those within a given virtual host (the latter including connections 
> which are associated with a virtual host even though not directly children of 
> that host - since connections are children of ports).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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

Reply via email to