[plugin.xml] Purpose of Extensions


I've read the official documentation and whatever I could find, but still cannot define what exactly <extensions> does in plugin.xml?
I understood that these rules apply:

I'm writing a bachelors thesis on theme "How to develop Android Studio Plugin" so any help would be appreciated!

I've checked some of the open source projects such as "Console Beep" and found they have this in their extensions:
<projectService serviceImplementation="net.ishchenko.consolebeep.BeeperProjectComponent"/>
<consoleFilterProvider implementation="net.ishchenko.consolebeep.BeeperProjectComponent$BeepFilterProvider"/>
<projectConfigurable instance="net.ishchenko.consolebeep.BeepSettingsConfigurable"/>

Could someone explain to me what would [projectService serviceImplementation, consoleFilterProvider implementation and projectConfigurable instance] do for that specific plugin? Why he had to include those in the extensions and what do they allow him to do?
I've tried to research the each specific service implementation but couldn't find much on it, not even in the official documentation.

Link to the open source plugin "Console Beep":

Thanks in advance guys, any help is appreciated really.


Comment actions Permalink

As I've mentioned, I have already read the official documentation, but thanks for help regardless.


Please sign in to leave a comment.