You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ignite.apache.org by luqmanahmad <lu...@gmail.com> on 2017/07/11 16:18:45 UTC

Ignite PlugingProvider

Hi,

I have created my own plugin to override some defaults in the Ignite.

For configuration purposes I have got a class xxxPluginConfiguration which
is implementing PluginConfiguration. This class has got all the
configuration related settings to my plugin.

Custom plugin provider I have got a separate class xxxPluginProvider which
is implementing PluginProvider<xxxPluginConfiguration>

Just a bit confused with a few things over here:

org.apache.ignite.plugin.PluginProvider#initExtensions - From the
documentation it is clear that it will call this method first which will do
the custom initialisation stuff, but I can't understand what is the purpose
of org.apache.ignite.plugin.ExtensionRegistry in initExtensions() - can
someone please explain it ? 

org.apache.ignite.plugin.PluginProvider#plugin - From this I understand that
is needs to return our CustomPluginAPI and org.apache.ignite.Ignite#plugin
can return our custom plugin api but what is the overall usage for this
method ? 

org.apache.ignite.plugin.PluginProvider#createComponent - Is there any list
of components which can be changed through pluggable api apart from the one
whose class types is being sent to this method ?

Thanks,
Luqman



--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Ignite-PlugingProvider-tp14640.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Re: Ignite PlugingProvider

Posted by luqmanahmad <lu...@gmail.com>.
Thanks Dmitry that helps alot



--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Ignite-PlugingProvider-tp14640p14887.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Re: Ignite PlugingProvider

Posted by dkarachentsev <dk...@gridgain.com>.
Hi Luqman,

ExtensionRegistry is used by IgnitePluginProcessor to replace internal
Ignite interface implementations, but it's only used for MessageFormatter,
MessageFactory and IoPool (search usages for
IgnitePluginProcessor#extensions). So if you do not want to use your own
implementation for that interfaces, you may omit using of ExtensionRegistry.

Yes, PluginProvider#plugin returns your plugin implementation that will be
accessible over Ignite.plugin("pluginName") at any place:
MyPlugin plugin = ignite.plugin("pluginName");
plugin.doCoolStuff();

PluginProvider#createComponent components that could be replaced by plugin
that I found for 2.0:
GridSecurityProcessor
DiscoveryNodeValidationProcessor
GridSegmentationProcessor
IgniteCacheObjectProcessor
PlatformProcessor
IgniteCacheDatabaseSharedManager
IgnitePageStoreManager
IgniteWriteAheadLogManager
CacheConflictResolutionManager

Thanks!
-Dmitry.



--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Ignite-PlugingProvider-tp14640p14885.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Re: Ignite PlugingProvider

Posted by luqmanahmad <lu...@gmail.com>.
Any help on this class would be highly appreciated

org.apache.ignite.plugin.PluginProvider#initExtensions -
org.apache.ignite.plugin.ExtensionRegistry



--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Ignite-PlugingProvider-tp14640p14797.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.