Hi Marnie and Aidan,

On Thu, Jun 26, 2008 at 10:04 AM, lahiru gunathilake <[EMAIL PROTECTED]>
wrote:

> Hi Marnie,
>
> On Mon, Jun 16, 2008 at 1:21 PM, Marnie McCormack <
> [EMAIL PROTECTED]> wrote:
>
>> Hi Lahiru,
>>
>> I think the ability to list the following would be helpful:
>>
>> - virtualhosts
>> - connections (with originating IP)
>>
> Still going through the qpid code to find why ProtocolSessionMBean is not
> registered. Although It's has been instrumented that code is not running
> when server starts. I'm trying figure that out :-(
>
I change the code of Qpid broker and now we can monitor Connection but I can
see any value of that since I myself created the Object and registered when
broker get start. So no user is having any value of that object but there's
a useful class called AMQPFastProtocolHandler if you want I can instrument
it. Still I'm having that confusion of which consumers or which publisher do
I have to instrument. If you can tell me exactl class name I can instrument
all of them register them each and every place those objects are creating.

>
>
>> - consumers (with queue/topic/selector details ?)
>> - publishers (ditto)
>
> I have instrumented the Jmsconsumer.java Class and I couldn't find a usage
> of that class and no way to register with the mbeanserver :-(
>
And this intrumentation is become obsolete since this object is not using
any place of the qpid code. Please tell me what are the exact classs types
you meant by consumers, publishers and connections.

Waiting for an anser with pleasure to write code in to qpid code base. (I'm
think now I'm having reasonable knowledge  management code :-) ).

Thankd in advanced
Regards
Lahiru

>
>
> Regards
> Lahiru
>
>>
>> - thresholds for a queue/virtualhosts i.e. the configured MAX_QUEUE_DEPTH
>> etc as defined in the virtualhosts.xml ?
>>
>> I'll have a better think about what else might be useful for a user to be
>> able to see. Might also be an idea to have a look at what else Hermes
>> displays (for example) as a generic pointer ?
>>
>> Hth !
>>
>> Kind Regards,
>> Marnie
>>
>>
>>
>>
>> On 6/16/08, lahiru gunathilake <[EMAIL PROTECTED]> wrote:
>> >
>> > hi Aidan and Marnie,
>> >
>> > On Thu, May 15, 2008 at 9:59 PM, Marnie McCormack <
>> > [EMAIL PROTECTED]> wrote:
>> >
>> > > Hi Lahiru,
>> > >
>> > > Martin & Aidan & I are just discussing your project and here are some
>> of
>> > > our
>> > > thoughts:
>> > >
>> > > - so we need a command line with options. Aidan suggests it looks like
>> > > this:
>> > >
>> > >
>> > > I was thinking something like
>> > >
>> > > $ qpid-admin --list-queues
>> > > queue-1
>> > > queue-2
>> > > queue-3
>> > >
>> > Other than the queue object what else you want to use with list command
>> and
>> > I can implement them.With the list command it display all the important
>> > information so what would info command do. I think no need to implement
>> > another command. And I will implement some options to list command like
>> > list -d <display all the domains >
>> >
>> > Do you want me to do some more stuff with these commands in the
>> interactive
>> > mode. So if you have some more I can implement them and we can probably
>> ask
>> > from users what they want by letting them to use this by committing this
>> > code in to SVN.
>> >
>> > Any thoughts what should I do next.
>> >
>> > Regards
>> > Lahiru
>> >
>> > >
>> > > $ qpid-admin --queue-info queue-1
>> > > Depth: 1 Count: 1 Subscribers: 0
>> > >
>> > > $ qpid-admin --queue-info --depth queue-1
>> > > 1
>> > >
>> > > for timed reports for alerting you could put that in cron, or use
>> > > watch for top/vmstat-esque action. I think it's probably a more
>> > > natural interface than editing a properties file and would be
>> > > something that we could apply to the C++ broker as well, which would
>> > > be nice. Plus, it's quite UNIXy and lets people leverage things like
>> > > awk.
>> > >
>> > >
>> > > - I'd also like it to be configurable using a properties file, but
>> it's
>> > > probably worth getting list views on this for consensus
>> > >
>> > > - I think you're mainly on the right track, but I'd focus more on the
>> > > useful attributes we expose rather than all variables of the objects
>> > >
>> > > Rgds,
>> > > Marnie
>> > >
>> > > On 5/14/08, lahiru gunathilake <[EMAIL PROTECTED]> wrote:
>> > >
>> > > > Hi all,
>> > > > Now I'm writing this output in to a file and this is running like a
>> > > > thread(daemon) and it write different files time to time as Aiden
>> > > discussed
>> > > > with me.When I run the program it monitor the broker time to time
>> (time
>> > > > interval can be configured).
>> > > >
>> > > > Honestly this is not the actual code I'm developing I'm just writing
>> > some
>> > > > sample code to test and informing you what I'm doing and expecting a
>> > feed
>> > > > from you.
>> > > >
>> > > > Thanks in advance
>> > > >
>> > > > Regards
>> > > > lahiru
>> > > >
>> > > > On Sun, May 11, 2008 at 9:00 AM, lahiru gunathilake <
>> [EMAIL PROTECTED]
>> > >
>> > > > wrote:
>> > > >
>> > > > > Hi Aiden,
>> > > > >
>> > > > > First thanks a lot for your reply I was waiting for a reply for
>> few
>> > > days
>> > > > > hopefully.
>> > > > > I did some modification to my program and I'm listing all the
>> > > attributes
>> > > > of
>> > > > > all the mbeans which is having org.apache.qpid domain.
>> > > > > Here's the output of my program....(I'm printing the attribute
>> name
>> > and
>> > > > > value and type in a single line and for now I haven't done any
>> > > > formattings
>> > > > > with the output.
>> > > > >
>> > >
>> ========================================================================
>> > > > > Press <Enter> to continue...
>> > > > >
>> > > > > TOTAL MBEAN COUNT:   46
>> > > > >
>> > > > > DOMAINS:
>> > > > >     Domain[0] = JMImplementation
>> > > > >     Domain[1] = com.sun.management
>> > > > >     Domain[2] = org.apache.qpid
>> > > > >     Domain[3] = java.lang
>> > > > >     Domain[4] = java.util.logging
>> > > > > ALL THE EXPOSED CLASSES
>> > > > > 29
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=localhost,name=amq.direct,ExchangeType=direct
>> > > > >
>> > =======================================================================
>> > > > > Name     amq.direct      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     direct      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > > org.apache.qpid:type=VirtualHost.Queue,VirtualHost=test,name=ping
>> > > > >
>> > =======================================================================
>> > > > > Name     ping      java.lang.String
>> > > > > Owner     null      java.lang.String
>> > > > > Durable     false      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > MessageCount     0      java.lang.Integer
>> > > > > QueueDepth     0      java.lang.Long
>> > > > > MaximumMessageSize     2117632      java.lang.Long
>> > > > > ConsumerCount     0      java.lang.Integer
>> > > > > ActiveConsumerCount     0      java.lang.Integer
>> > > > > ReceivedMessageCount     0      java.lang.Long
>> > > > > MaximumMessageCount     5000      java.lang.Long
>> > > > > MaximumQueueDepth     4136      java.lang.Long
>> > > > > MaximumMessageAge     600000      java.lang.Long
>> > > > >
>> > =======================================================================
>> > > > > org.apache.qpid:type=VirtualHost.Queue,VirtualHost=test,name=queue
>> > > > >
>> > =======================================================================
>> > > > > Name     queue      java.lang.String
>> > > > > Owner     null      java.lang.String
>> > > > > Durable     false      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > MessageCount     0      java.lang.Integer
>> > > > > QueueDepth     0      java.lang.Long
>> > > > > MaximumMessageSize     2117632      java.lang.Long
>> > > > > ConsumerCount     0      java.lang.Integer
>> > > > > ActiveConsumerCount     0      java.lang.Integer
>> > > > > ReceivedMessageCount     0      java.lang.Long
>> > > > > MaximumMessageCount     5000      java.lang.Long
>> > > > > MaximumQueueDepth     4136      java.lang.Long
>> > > > > MaximumMessageAge     600000      java.lang.Long
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=test,name=amq.match,ExchangeType=headers
>> > > > >
>> > =======================================================================
>> > > > > Name     amq.match      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     headers      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > >
>> > >
>> org.apache.qpid:type=VirtualHost.Queue,VirtualHost=development,name=queue
>> > > > >
>> > =======================================================================
>> > > > > Name     queue      java.lang.String
>> > > > > Owner     null      java.lang.String
>> > > > > Durable     false      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > MessageCount     0      java.lang.Integer
>> > > > > QueueDepth     0      java.lang.Long
>> > > > > MaximumMessageSize     2117632      java.lang.Long
>> > > > > ConsumerCount     0      java.lang.Integer
>> > > > > ActiveConsumerCount     0      java.lang.Integer
>> > > > > ReceivedMessageCount     0      java.lang.Long
>> > > > > MaximumMessageCount     5000      java.lang.Long
>> > > > > MaximumQueueDepth     4136      java.lang.Long
>> > > > > MaximumMessageAge     600000      java.lang.Long
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=test,name=amq.fanout,ExchangeType=fanout
>> > > > >
>> > =======================================================================
>> > > > > Name     amq.fanout      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     fanout      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=development,name=<<default>>,ExchangeType=direct
>> > > > >
>> > =======================================================================
>> > > > > Name     <<default>>      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     direct      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=localhost,name=amq.match,ExchangeType=headers
>> > > > >
>> > =======================================================================
>> > > > > Name     amq.match      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     headers      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=test,name=amq.topic,ExchangeType=topic
>> > > > >
>> > =======================================================================
>> > > > > Name     amq.topic      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     topic      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > >
>> org.apache.qpid:type=VirtualHost.VirtualHostManager,VirtualHost=test
>> > > > >
>> > =======================================================================
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=localhost,name=test.topic,ExchangeType=direct
>> > > > >
>> > =======================================================================
>> > > > > Name     test.topic      java.lang.String
>> > > > > Durable     false      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     direct      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=development,name=amq.direct,ExchangeType=direct
>> > > > >
>> > =======================================================================
>> > > > > Name     amq.direct      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     direct      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=localhost,name=amq.topic,ExchangeType=topic
>> > > > >
>> > =======================================================================
>> > > > > Name     amq.topic      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     topic      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > > org.apache.qpid:type=UserManagement,name=UserManagement
>> > > > >
>> > =======================================================================
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=development,name=amq.topic,ExchangeType=topic
>> > > > >
>> > =======================================================================
>> > > > > Name     amq.topic      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     topic      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > >
>> > org.apache.qpid:type=VirtualHost.Queue,VirtualHost=localhost,name=ping
>> > > > >
>> > =======================================================================
>> > > > > Name     ping      java.lang.String
>> > > > > Owner     null      java.lang.String
>> > > > > Durable     false      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > MessageCount     0      java.lang.Integer
>> > > > > QueueDepth     0      java.lang.Long
>> > > > > MaximumMessageSize     2117632      java.lang.Long
>> > > > > ConsumerCount     0      java.lang.Integer
>> > > > > ActiveConsumerCount     0      java.lang.Integer
>> > > > > ReceivedMessageCount     0      java.lang.Long
>> > > > > MaximumMessageCount     0      java.lang.Long
>> > > > > MaximumQueueDepth     4136      java.lang.Long
>> > > > > MaximumMessageAge     600000      java.lang.Long
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=localhost,name=<<default>>,ExchangeType=direct
>> > > > >
>> > =======================================================================
>> > > > > Name     <<default>>      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     direct      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=development,name=amq.fanout,ExchangeType=fanout
>> > > > >
>> > =======================================================================
>> > > > > Name     amq.fanout      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     fanout      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.VirtualHostManager,VirtualHost=development
>> > > > >
>> > =======================================================================
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Queue,VirtualHost=localhost,name=test-queue
>> > > > >
>> > =======================================================================
>> > > > > Name     test-queue      java.lang.String
>> > > > > Owner     null      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > MessageCount     0      java.lang.Integer
>> > > > > QueueDepth     0      java.lang.Long
>> > > > > MaximumMessageSize     2117632      java.lang.Long
>> > > > > ConsumerCount     0      java.lang.Integer
>> > > > > ActiveConsumerCount     0      java.lang.Integer
>> > > > > ReceivedMessageCount     0      java.lang.Long
>> > > > > MaximumMessageCount     0      java.lang.Long
>> > > > > MaximumQueueDepth     4136      java.lang.Long
>> > > > > MaximumMessageAge     600000      java.lang.Long
>> > > > >
>> > =======================================================================
>> > > > >
>> > >
>> org.apache.qpid:type=VirtualHost.VirtualHostManager,VirtualHost=localhost
>> > > > >
>> > =======================================================================
>> > > > >
>> > =======================================================================
>> > > > >
>> > org.apache.qpid:type=VirtualHost.Queue,VirtualHost=localhost,name=queue
>> > > > >
>> > =======================================================================
>> > > > > Name     queue      java.lang.String
>> > > > > Owner     null      java.lang.String
>> > > > > Durable     false      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > MessageCount     0      java.lang.Integer
>> > > > > QueueDepth     0      java.lang.Long
>> > > > > MaximumMessageSize     2117632      java.lang.Long
>> > > > > ConsumerCount     0      java.lang.Integer
>> > > > > ActiveConsumerCount     0      java.lang.Integer
>> > > > > ReceivedMessageCount     0      java.lang.Long
>> > > > > MaximumMessageCount     0      java.lang.Long
>> > > > > MaximumQueueDepth     4136      java.lang.Long
>> > > > > MaximumMessageAge     600000      java.lang.Long
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=test,name=amq.direct,ExchangeType=direct
>> > > > >
>> > =======================================================================
>> > > > > Name     amq.direct      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     direct      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Queue,VirtualHost=localhost,name=test-ping
>> > > > >
>> > =======================================================================
>> > > > > Name     test-ping      java.lang.String
>> > > > > Owner     null      java.lang.String
>> > > > > Durable     false      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > MessageCount     0      java.lang.Integer
>> > > > > QueueDepth     0      java.lang.Long
>> > > > > MaximumMessageSize     2117632      java.lang.Long
>> > > > > ConsumerCount     0      java.lang.Integer
>> > > > > ActiveConsumerCount     0      java.lang.Integer
>> > > > > ReceivedMessageCount     0      java.lang.Long
>> > > > > MaximumMessageCount     0      java.lang.Long
>> > > > > MaximumQueueDepth     4136      java.lang.Long
>> > > > > MaximumMessageAge     600000      java.lang.Long
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=test,name=<<default>>,ExchangeType=direct
>> > > > >
>> > =======================================================================
>> > > > > Name     <<default>>      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     direct      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=localhost,name=amq.fanout,ExchangeType=fanout
>> > > > >
>> > =======================================================================
>> > > > > Name     amq.fanout      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     fanout      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=development,name=amq.match,ExchangeType=headers
>> > > > >
>> > =======================================================================
>> > > > > Name     amq.match      java.lang.String
>> > > > > Durable     true      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     headers      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > >
>> > > > >
>> > > >
>> > >
>> >
>> org.apache.qpid:type=VirtualHost.Exchange,VirtualHost=localhost,name=test.direct,ExchangeType=direct
>> > > > >
>> > =======================================================================
>> > > > > Name     test.direct      java.lang.String
>> > > > > Durable     false      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > ExchangeType     direct      java.lang.String
>> > > > > TicketNo     0      java.lang.Integer
>> > > > >
>> > =======================================================================
>> > > > >
>> > >
>> org.apache.qpid:type=VirtualHost.Queue,VirtualHost=development,name=ping
>> > > > >
>> > =======================================================================
>> > > > > Name     ping      java.lang.String
>> > > > > Owner     null      java.lang.String
>> > > > > Durable     false      boolean
>> > > > > AutoDelete     false      boolean
>> > > > > MessageCount     0      java.lang.Integer
>> > > > > QueueDepth     0      java.lang.Long
>> > > > > MaximumMessageSize     2117632      java.lang.Long
>> > > > > ConsumerCount     0      java.lang.Integer
>> > > > > ActiveConsumerCount     0      java.lang.Integer
>> > > > > ReceivedMessageCount     0      java.lang.Long
>> > > > > MaximumMessageCount     5000      java.lang.Long
>> > > > > MaximumQueueDepth     4136      java.lang.Long
>> > > > > MaximumMessageAge     600000      java.lang.Long
>> > > > >
>> > > > > Close the connection to the server
>> > > > >
>> > > > > Bye! Bye!
>> > > > > [EMAIL PROTECTED]
>> > > > :~/IdeaProjects/jmxpractice/classes/production/jmxpractice$
>> > > > >
>> > > > >
>> > > > >
>> > >
>> =========================================================================
>> > > > > On Fri, May 9, 2008 at 8:35 PM, Aidan Skinner <[EMAIL PROTECTED]>
>> > > wrote:
>> > > > >
>> > > > >> Hey Lahiru,
>> > > > >>
>> > > > >> the screenshot you sent was stripped by the mailing list, as it's
>> a
>> > > > >> command line it's probably best just to copy and paste the output
>> > into
>> > > > >> an email anyway.
>> > > > >>
>> > > > >> As for a next step, probably something quick like listing all the
>> > > > >> queues or the count on a specified queue.
>> > > > >
>> > > > > I think I have done what you are asking but I'm not sure if I'm
>> wrong
>> > > > > please let me know.
>> > > > > Could you please explain it some more and however I will try to
>> > > > understand
>> > > > > what you meant by that sentence.
>> > > > >
>> > > > > Thanks in advance
>> > > > >
>> > > > >
>> > > > > Regs
>> > > > > lahiru
>> > > > >
>> > > >
>> > > >
>> > > >
>> > > > --
>> > > > East or West
>> > > > Mahindians are the
>> > > > Best... !
>> > > >
>> > >
>> >
>>
>
>

Reply via email to