Hi Marnie and Aidan, I'm sorry for the delay for the fortnight report.During last two weeks I started on working for the Apache Qpid CLI 0.2 Release. Here's the major changes I have done for the CLI. Major changes ===========
1.You can use list command without specifying object type using -o option by giving object type at the beginning. - ex: queue list - This is equal to list -o queue. - exchange list - This is equal to list -o exchange 2. Added following options for list command. - -n --name Allow user to specify object name type. - -v --virtualhost Allow user to specify virtualhost type. - -output Allow user to specify output format (csv) - -separator Separator for the output formatter 3. Change the way list command display information. - Now list command display limited number of information in a tabular format which is very clear. - If user want to see all the attributes of particular object user have to use info command. 4.Added a new command to CLI called ** info ** - This command is very similar to list command and supports almost all the arguments which works with list command. - Only difference is this command display all the attributes of particular object type in a different format. 5.Added command completion for users convenience now you can use TAB key to complete the command and object type. 6.Added capability of running a command in one shot which is very useful when you want to run particular command in qpid-cli using a shell script. - Ex: <$QPID_CLI/bin/qpid-cli queue list > - This command list all the queue objects and exit from the CLI so you can use these when you use shell scripts. - Usage of one shot mode : you can use grep awk like commands with normal qpid-cli commands with one shot mode like this. $QPID_CLI/bin/qpid-cli queue list | grep ping Thanks in advance Lahiru On Fri, Jul 4, 2008 at 9:33 AM, lahiru gunathilake <[EMAIL PROTECTED]>wrote: > Hi Marnie and Aidan, > > > - After finishing implementation to support all the MBeans which are > already instruemented in the broker with list command I tried to expose > some > more objects which are not already registered.While I'm trying to do that I > realized that I should go through the qpid code and started on reading qpid > java broker source code.Tried to import Qpid Java broker on to Intellij > Idea > because I wanted to debug the broker, with the help from the mailing list I > was able run the broker successfully on Intellij Idea and I bloged about > that in my > blog<http://lahirumanaya.blogspot.com/2008/06/import-apache-qpid-in-to-intellij-idea.html>.I > was informed that there's not much usefulness of monitoring Publisher and > Subscriber by Martin and Aidan so I start on concentrating on Connection > Object.(y Somehow I will try instrument those two objects too ) > - I was able to add the Connection object type to monitor using list > command. Martin helped me to figure this out since although that was > instrument on the broker it was not displayed in Jconsole. I have tested > the > list command implementation for Connection object by running some samples > and it works fine. > - With the instruction from Aidan I started on writing Test cases to > all the possible methods in the current code.I have finish writing test > cases for almost all the methods.(Aidan please have a look in to my test > cases) > - Change the build of the project in to more easier way.Now user > doesn't need to set classpath or anything other than QPID_CLI environment > variable.Added another target to ant script to build test.(Still working on > running test cases using Ant at the moment Test cases can be run using an > IDE) > - As Aidan asked about releasing the CLI I have added another ant > target in order to create a jar for the project and now working releasing > the CLI.Following thing have to be done before releasing the CLI. > - Implement --help option for list command. > - Add some more details about the product in to README file. > > Please inform me what else to do before releasing the CLI. > > Thanks in advance > > Regards > Lahiru > On Fri, Jun 20, 2008 at 10:15 AM, lahiru gunathilake <[EMAIL PROTECTED]> > wrote: > >> Hi Marnie and Aidan, >> >> >> >> - Started implementing list command. >> >> >> - Now list command works with following options and following option >> values >> >> >> >> 1. list -o queue : list all the queue objects currently in >> the broker >> 2. list -o virtualhost : list all the virtualhost objects >> 3. list -o all : list all the mbeans and with all the >> attributes >> 4. list -d : list all the domains in the broker >> >> >> >> - After implementing those features I thought of giving somewhat >> formatted output and did some coding inorder to get a nice output for >> these >> previos commands. >> >> >> >> - Change the code as Aidan last week by phone and that code is far >> more better that the one >> - I wrote earlier and Aidan thanks for pointing that out. >> >> >> >> - As Marnie ask me several types of objects to display using list >> command I tried to implement those features too. >> >> >> 1. These objects >> 2. Connection >> 3. Consumers >> 4. publishers >> >> >> Issues >> ====== >> Since those objects are not listing in jconsole when we start the broker >> and monitor without running any client I couldn't >> write that code and check whether it's working or not.So that's why I >> thought of going through the broker code and find some way of access those >> information or change the broker code inorder to create those objects even >> when it start in normal mode(without running any client) then I can monitor >> them easily in jconsole and find some way to access those MBeans.Do you have >> any idea of doing this that would be really great to finish the >> implementation of the command list. And once we finish that I think if we >> can ask QPID users to use them and suggest some more features to >> implement(new commands or some more options to list command) in interactive >> mode.And when they use this in with a real broker we'll be able to find some >> bugs in the code and I'm happy to fix them too. >> >> Any comments about my work for last two weeks. >> >> Thanks in advance >> Regards >> Lahiru >> >> On Fri, Jun 6, 2008 at 8:49 AM, lahiru gunathilake <[EMAIL PROTECTED]> >> wrote: >> >>> hi Marnie and Aiden, >>> >>> I'm writing the fortnight report in point form and I hope this will >>> useful everybody to go through it >>> easily. >>> >>> 1. Started coding for Gsoc in the first week and reused some of the code >>> I wrote when I'm experimenting the project. >>> 2.Wrote some more code for reading command when we give commands with >>> arguments.(code to read options separately with option values) >>> (ex: ./qpid-admin -h localhost -p 3434) >>> 3.Found a library to support for the GNU ReadLine and start developing >>> the CLI using that >>> library. >>> 4.Since I used some previously written JMX code I was able to connect to >>> the remote broker >>> once user give appropriate commands. >>> 5. Designed a class diagram to include new commands to interactive mode, >>> and implemented it and added two >>> basic commands to the command line.(but didn't implemented the logic for >>> those commands,when you type those >>> commands it will just print some text)I spent sometime >>> 6.Created ant build for the CLI and committed code for the repository >>> created in google code project >>> according to the advice given by Aiden.(Thanks Aiden for the help) >>> 7. Started writing some test cases. >>> 8. Now Implementing the business logic of following commands. >>> list >>> info >>> >>> I have some questions when i come to implementation of those commands and >>> I hope to write them in to the >>> thread we are discussing thing from the very beginning. >>> >>> Any comments about the way I gave you my fortnight report ? Is this too >>> long/too short..? >>> >>> And any thoughts about my work I have done during first two weeks. >>> >>> Thanks >>> Lahiru >>> >>> >> >
