How to register a customer TransportAction in elk

Hi all
i want to write a plugin to manage my index cache. I have finish the rest layer and register it to restController now.
I want to write a transportAction extends the TransportReplicationAction that helps me notify all replica shard update related index. But how can i register the customer action to a nodeClient?
My elasticsearch version is 2.4.0.

I have referenced the old plugin
But it's wired.
I can't understand the method public void onModule(ActionModule actionModule). How elasticsearch call a plugin method which has not appeared in Plugin interface.

In 2.x, it's done reflectively.