[ 
https://issues.apache.org/jira/browse/DIRMINA-608?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Barend Garvelink updated DIRMINA-608:
-------------------------------------

    Attachment: IoServiceStatistics.patch

Attached is a first proposal, please take a look. I'd like to see if there's 
any initial feedback now, and I'll work up a more extensive patch the coming 
weeks before M3 is released.

Open issues:
- should maybe leave the methodes on the IoService interface for the next 
milestone, marked deprecated, and don't remove them until 2.0 final.

- interface naming is open to debate (e.g. the current naming scheme doesn't 
really allow the same interfaces to be used for IoSession statistics).

- location of the lastReadTime() / lastWriteTime() / lastIoTime() methods is 
open to debate.

- to keep the impact of this first patch low, I just made AbstractIoService 
implement the statistics interfaces, rather than factoring them into inner 
classes. (separation of concerns, high cohesion, etc.) Factoring them into 
separate classes gives the ability to deploy those instances into an 
MBeanServer, which I think is a big reason to make that change. Not all 
application servers use the standard MBeanServer (at least historically; Java 5 
may have changed that) and JMX+OSGi isn't always straightforward, so the actual 
MBean deployment should be handled by a pluggable strategy implementation.

- I haven't touched the IoSession statistics yet, but the basic idea is the 
same.

- anything else?


Thanks,

Barend

> Move stats out of the IoService API
> -----------------------------------
>
>                 Key: DIRMINA-608
>                 URL: https://issues.apache.org/jira/browse/DIRMINA-608
>             Project: MINA
>          Issue Type: Improvement
>    Affects Versions: 2.0.0-M2
>            Reporter: Emmanuel Lecharny
>            Priority: Minor
>             Fix For: 2.0.0-M3
>
>         Attachments: IoServiceStatistics.patch
>
>
> The statictic informations contained into the IoService API could be put in 
> some specific class, and made available through a call to a dedicated getter :
> IoServiceStatistics getStatistics()

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to