1 2 Previous Next 17 Replies Latest reply on Apr 6, 2009 9:41 AM by Andy Taylor

    QueueDeployer?

    Clebert Suconic Master

      Why we are not using the QueueDeployer in our examples?

      For instance.. I'm having to specify a specific AddressSetting for PagedDestination, but the deployment of the queue is being done through JMSExample::deployQueues.


      I looked through QueueDeployer code, and it seems inactive. Maybe I'm missing something there.

        • 1. Re: QueueDeployer?
          Clebert Suconic Master

          I have figured out.

          But I still don't understand is:

          - Why we're not using jbm-jms.xml to deploy the examples?

          - Have we thought about using masks on the deployers, such as jbm-jms*.xml? In a way the user could have its own config files?

          • 2. Re: QueueDeployer?
            Tim Fox Master

             

            "clebert.suconic@jboss.com" wrote:
            I have figured out.

            But I still don't understand is:

            - Why we're not using jbm-jms.xml to deploy the examples?


            I agree the example should deploy JMS queues in the normal way -i.e. through the config. I think this is more transparent and less confusing for the user ("how did this queue get deployed?").


            - Have we thought about using masks on the deployers, such as jbm-jms*.xml? In a way the user could have its own config files?


            I'm not sure what you mean here. But JBM already supports multiple queue files ending in *-queues.xml

            For each example I suggest it has its own config directory where we can put the queue or other config.

            • 3. Re: QueueDeployer?
              Andy Taylor Master

              All queues are deployed via the configs under examples/jms/common/config/ you'll see the jbm-jms.xml used in that directory.

              The jmsexample does also try to deploy queues using the managemnt interface just in case they aren't there.

              I'm not sure what you mean here. But JBM already supports multiple queue files ending in *-queues.xml


              Not true, I think Jeff looked at what was involved with this and we came to the conclusion that we shouldn't do it.iirc it was because we would have had to scan the full classpath.

              • 4. Re: QueueDeployer?
                Tim Fox Master

                 

                "ataylor" wrote:
                All queues are deployed via the configs under examples/jms/common/config/ you'll see the jbm-jms.xml used in that directory.


                Ok good. What are the JMSExample::deployQueues and deployTopics for though?


                I'm not sure what you mean here. But JBM already supports multiple queue files ending in *-queues.xml



                Not true, I think Jeff looked at what was involved with this and we came to the conclusion that we shouldn't do it.iirc it was because we would have had to scan the full classpath.



                But we support multiple queue files, even if they have the same name? I think Clebert was interested in different apps providing their own queue files and it's my understanding we already provide that functionality.

                • 5. Re: QueueDeployer?
                  Andy Taylor Master

                   

                  Ok good. What are the JMSExample::deployQueues and deployTopics for though?


                  My initial thought was to deploy the queues if they didn't already exist, say if the user ran against a standalone server. If your happy to stipulate that they should only be in the config then thats fine. I'll remove it and make things easier.

                  Just one point, the config in the actual examples, i.e. examples/jms/queue/config, is also added to the classpath when run. We should add any extra queues etc in here, I notice theres an expiry queue in the common config, this should be moved and we only have the basic in exampleQueue and exampleTopic in this one.

                  • 6. Re: QueueDeployer?
                    Tim Fox Master

                     

                    "ataylor" wrote:
                    Ok good. What are the JMSExample::deployQueues and deployTopics for though?


                    My initial thought was to deploy the queues if they didn't already exist, say if the user ran against a standalone server. If your happy to stipulate that they should only be in the config then thats fine. I'll remove it and make things easier.


                    +1 The simpler the better


                    Just one point, the config in the actual examples, i.e. examples/jms/queue/config, is also added to the classpath when run. We should add any extra queues etc in here, I notice theres an expiry queue in the common config, this should be moved and we only have the basic in exampleQueue and exampleTopic in this one.


                    To clarify, the classpath for each example first contains the example/jms/<example_name>/config dir followed by the example/jms/common/config dir ? So we can just override anything already in each example?

                    If each example can provide its own config is there any value in a common config?

                    • 7. Re: QueueDeployer?
                      Andy Taylor Master

                       

                      +1 The simpler the better


                      Ok, let me do that.

                      To clarify, the classpath for each example first contains the example/jms/<example_name>/config dir followed by the example/jms/common/config dir ? So we can just override anything already in each example?


                      correct, I've change Jeff's expiry and dead letter example to do this, take a look.

                      If each example can provide its own config is there any value in a common config?


                      My thinking was for most of the examples we would always use a common cf, queue and topic. We could change this to an explicit config for eac example, maybe this would be easier for the user to understand, rather than looking round for common configs to see how things are done

                      • 8. Re: QueueDeployer?
                        Tim Fox Master

                        IMO each example should just have its own config directory and there should be no common config.

                        Then it's obvious and clear to the user where the config is. Otherwise the user may have some pain working out where everything is deployed.

                        "Ok, so this queue used in the example is deployed from this file in this directory, but this other queue also used in the example and connection factory is deployed from this other file in some other directory miles away"..... Which makes for a more confused user.

                        • 9. Re: QueueDeployer?
                          Andy Taylor Master

                          ok, I'll going through th examples now and change them, can anyone hold off checking in any example changes until I've done this.

                          • 10. Re: QueueDeployer?
                            Tim Fox Master

                            I noticed you only added jbm-jms.xml, jbm-queues.xml, jbm-security.xml in the example specific config directory.

                            I think each example should own all its own config, including jbm-configuration.xm. Then it's all in one place, easy for the user to see what is going on. I.e. no common config.

                            If we have jbm-configuration.xml we don't need a separate jbm-queues.xml either.

                            • 11. Re: QueueDeployer?
                              Andy Taylor Master

                               

                              I noticed you only added jbm-jms.xml, jbm-queues.xml, jbm-security.xml in the example specific config directory.

                              I think each example should own all its own config, including jbm-configuration.xm. Then it's all in one place, easy for the user to see what is going on. I.e. no common config.

                              If we have jbm-configuration.xml we don't need a separate jbm-queues.xml either.


                              I'm going to do that, but i need to change the script a bit first, I'm doing the other config first.

                              • 12. Re: QueueDeployer?
                                Andy Taylor Master

                                 

                                If we have jbm-configuration.xml we don't need a separate jbm-queues.xml either.


                                I think for the examples its easier for the user to read if they are separate. The main config file is quite bloated anyway and would make it harder to find the config the user is actually bothered about.

                                • 13. Re: QueueDeployer?
                                  Andy Taylor Master

                                  ok, this is done now

                                  • 14. Re: QueueDeployer?
                                    Clebert Suconic Master

                                     

                                    "ataylor" wrote:

                                    "Tim Fox" wrote:
                                    I'm not sure what you mean here. But JBM already supports multiple queue files ending in *-queues.xml


                                    Not true, I think Jeff looked at what was involved with this and we came to the conclusion that we shouldn't do it.iirc it was because we would have had to scan the full classpath.



                                    What about configuring the file-names on properties through jbm-beans.xml? If the user wants to add a jbm-Factory-jms.xml and another jbm-Store-jms.xml, all he have to do is change the POJO on jbm-beans.xml instead of changing the java code for that.

                                    1 2 Previous Next