Dear MINA-team,

We are using the MINA 0.8.2 to implement a DataCollector application
(apply the Service Wrapper in Unix) so that the data-loss issue is very
critical.
Our protocol:
1. Client sends a message
2. Software will decode and send the ACK to Client
3. Do business (via messageRecieved() methods).

The problem is:
When stopping my application, it has to complete all the message already
sent ACK => what can I do? How could I get the number of being-processed
messages (already sent to the ProtocolDecoderOutput.write() in decode()
method) of MINA?
Does MINA show the API to get this number?

I have implemented the ServiceRegistry with information below (almost
the same as the SimpleServiceRegistry existed in MINA):
==============================================
public class DCServiceRegistry implements ServiceRegistry {
        
        private static Logger m_logger =
logger.getLogger(DCServiceRegistry.class);
        
        protected final IoAcceptor socketIoAcceptor
= new SocketAcceptor();

        protected final ProtocolAcceptor
socketProtocolAcceptor          = new IoProtocolAcceptor(
        
socketIoAcceptor);

        protected final IoThreadPoolFilter
ioThreadPoolFilter                      = new IoThreadPoolFilter();

        protected final ProtocolThreadPoolFilter
protocolThreadPoolFilter        = new ProtocolThreadPoolFilter();

        private final Set
services                                        = new HashSet();
================================================

If you have any idea about this issue, please help me ASAP. It's very
urgent to me.

Thanks & best regards,
Hieu Phan.


Reply via email to