axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sameera Madushan" <sameera.madus...@gmail.com>
Subject Re: [axis2] Pinging capability to services deployed in Axs2
Date Mon, 12 Feb 2007 18:01:35 GMT
I have an on going prototype development of the ping module, but it is
not yet submitted as a patch. It satisfies following requirements as
they were discussed in this thread.

The ping module supports only the service level ping requests. Once a
service level ping request is received, it will invoke the ping
methods of the all the MessageReceivers which handle the operations
defined in the service and this module assumes that the
MessageReceiver interface is extended. Consider the following sample
code.

                boolean status = true;
                Iterator iterator = axisService.getOperations();

                while (iterator.hasNext() && status) {
                    axisOperation = (AxisOperation) iterator.next();
                    msgReceiver = (AbstractMessageReceiver)

axisOperation.getMessageReceiver();
                    status = msgReceiver.ping();
                }

If all the MRs returns true then status of the service is "up". If one
of MRs return false, the the status of the service will be "down"
(say). Or else we can send the status of each operation as proposed by
thilina.

In most of the times single MR handles several web service operations.
Therefore Using the above approache,  the ping method of a single MR
can be invoked several times. This is an extra overhead.

One solution to overcome this problem is to cache MR on which the ping
method is invoked. AFA I think the second option is to send the
operation name as a parameter to the ping method.

These are just my opinions.

Sameera

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


Mime
View raw message