[ https://issues.apache.org/jira/browse/QPID-3401?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13127715#comment-13127715 ]
jirapos...@reviews.apache.org commented on QPID-3401: ----------------------------------------------------- bq. On 2011-10-13 16:36:12, Andrew Kennedy wrote: bq. > http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AddressBasedDestination.java, line 100 bq. > <https://reviews.apache.org/r/2366/diff/1/?file=49774#file49774line100> bq. > bq. > I assume this and similar mean resolveAddress? Also, is there any particular reason why you can't go ahead and attempt address resolution here? Or is this actually a case of an unresolvABLE address, when destination is null? In the client, resolveAddress, create and azzert would be called sequentially, normally, right? Since we do have access to the session, I see no reason why we could not go ahead an attempt to resolve the address. On the other hand, this check was there to catch programmer errors than a user error. That is an attempt to call create (azzert, delete ..etc) without explicitly resolving the address. bq. From a users pov this will never happen as they don't really interact with the Destination object directly. I don't feel strongly about either strategy. - rajith ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2366/#review2551 ----------------------------------------------------------- On 2011-10-12 21:02:31, rajith attapattu wrote: bq. bq. ----------------------------------------------------------- bq. This is an automatically generated e-mail. To reply, visit: bq. https://reviews.apache.org/r/2366/ bq. ----------------------------------------------------------- bq. bq. (Updated 2011-10-12 21:02:31) bq. bq. bq. Review request for qpid, Gordon Sim, Robbie Gemmell, Weston Price, and Keith Wall. bq. bq. bq. Summary bq. ------- bq. bq. This patch contains the new class structure used for retrieving information from addressing and creating destinations and managing it's lifecycle. bq. How this code is tied to the main client is illustrated with the patch put up for review at https://reviews.apache.org/r/2364/ bq. bq. A basic class diagram for this can be found here [ https://issues.apache.org/jira/secure/attachment/12498753/class_diagram.png ] bq. bq. In summary the goals are, bq. =========================== bq. 1. Provide a proper abstraction of Queue and Topic concepts bq. bq. 2. Provide an address format based implementation of Queue and Topic bq. bq. 3. Hide the implementatio of the life cycle of a destination (create, delete, createSubscription, deleteSubscription) bq. bq. 4. Create a top level AddressBasedDestination class (extending from AMQDestination), bq. 4.1 To separate the address based details from AMQQueue, AMQTopic ..etc bq. 4.2 To bridge btw the new code and the AMQDestination interface bq. bq. 4. Improve the code that retrievs data from an address (a.k.a AddressHelper) bq. bq. 5. Provide a fix for QPID-3265, QPID-3317, QPID-3271 bq. bq. 6. Implement the above with minimum disruption to regular client code. bq. bq. bq. This addresses bug QPID-3401. bq. https://issues.apache.org/jira/browse/QPID-3401 bq. bq. bq. Diffs bq. ----- bq. bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AddressBasedDestination.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AddressBasedQueue.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AddressBasedTopic.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/QpidDestination.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/QpidQueue.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/QpidTopic.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/Session.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/SubscriptionSettings.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/AddressException.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/AddressHelper.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/AddressProperty.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/AddressResolver.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/Link.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/Node.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/amqp_0_10/AddressHelper_0_10.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/amqp_0_10/AddressProperty_0_10.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/amqp_0_10/AddressResolver_0_10.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/amqp_0_10/Binding.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/amqp_0_10/ExchangeNode.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/amqp_0_10/Link_0_10.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/amqp_0_10/Node_0_10.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/amqp_0_10/QpidQueue_0_10.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/amqp_0_10/QpidTopic_0_10.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/amqp_0_10/QueueNode.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/address/amqp_0_10/SubscriptionSettings_0_10.java PRE-CREATION bq. http://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/messaging/amqp_0_10/Session_0_10.java PRE-CREATION bq. bq. Diff: https://reviews.apache.org/r/2366/diff bq. bq. bq. Testing bq. ------- bq. bq. Changes are verified using the existing tests in AddressBasedDestinationTest.java bq. I am planning to add more coverage and possibly refactor the above class to cover more cases with less code. bq. bq. bq. Thanks, bq. bq. rajith bq. bq. > Refactor address resolution code > -------------------------------- > > Key: QPID-3401 > URL: https://issues.apache.org/jira/browse/QPID-3401 > Project: Qpid > Issue Type: Improvement > Components: Java Client > Reporter: Rajith Attapattu > Assignee: Rajith Attapattu > Fix For: 0.14 > > Attachments: QPID-3401-systests.patch, QPID-3401.patch, > class_diagram.png, model2.gif > > > After some thought it seems that the following JIRA's would benefit from some > reworking of the address resolution code as the original design had a few > flaws based on incorrect understanding of the address syntax. > QPID-3265 > QPID-3317 > QPID-3271 > The redesign would be minimal and not very disruptive. The goal is to fix > certain design flaws in the current code, rather than a complete redesign. I > am planning to reuse as much code as possible to ensure we don't throw away > tested code. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:dev-subscr...@qpid.apache.org