RosterItemProvider patch

Hi,

we are using great openfire server and we need custom RosterItemProvider.

So I did this patch…

Description:

  • change RosterItemProvider from class to interface
  • added DefaultRosterItemProvider - default implementation of RosterItemProvider interface
  • you can configure custom class with provider.roster.className property
  • registered listener - when property change - reload the provider

I haven’t found any unit tests in the repository, but there is a lot of refactoring for more testable architecture in the code…

So, do you use unit tests ? It looks like the project is on the way to use tests, isn’t it ?

There is a lot of work to do to achieve testable architecture in OF codebase, but I’m pretty sure, it would help OF development quite a bit.

I could help with it a bit.

Let me know, if you have any comments or suggestions to this patch…

Would be good to create BasePropertyEventListener (implements PropertyEventListener interface) with empty methods, so we don’t have to define empty methods all the time…

And would be good to consider moving to git… Contributing to git (especially github) is much more fun…

Hi VJ,

Thanks for your patch! I’ve filed it as OF-418 in our issue tracker.

As for your other suggestions - the PropertyEventListener is not that big. Adding another class would primarily confuse people, I think. If you are annoyed by it, you can always write up a quick abstract implementation that you use in your own plugins, of course.

We’ll not change SCM at this time. It’d be a timeconsuming migration (take into account that existing infrastructure is currently working with SVN), and will not bring that much benefits. SVN suits our needs just fine at the moment.

Hi VJ,

We could certainly use more help with developing openfire’s code base. Is the fact we aren’t using github make you not wish to help out?

daryl

It was just suggestion. Definitely it’s not reason why I’m not helping more at the moment.

I was working on project, that was using OpenFire and I really like Open Fire.

Unfortuntaly, I’m really busy now (starting at new job) and I don’t use Open Fire - that’s the reason.

Hopefuly I will find some free time in the future to help.

So, keep doing a great work on OF !!!