On 31/10/2015 11:41, Alex Peshkoff wrote:
> On 10/30/2015 08:53 PM, Adriano dos Santos Fernandes wrote:
>> On 30/10/2015 11:57, Alex Peshkoff wrote:
>>> On 10/30/2015 04:00 PM, Adriano dos Santos Fernandes wrote:
>>>> On 30/10/2015 10:57, Adriano dos Santos Fernandes wrote:
>>>>> On 30/10/2015 10:53, Dimitry Sibiryakov wrote:
>>>>>> 30.10.2015 13:35, Adriano dos Santos Fernandes wrote:
>>>>>>> I said that external plugins are not loaded without editing Firebird
>>>>>>> supplied configuration files.
>>>>>>      Avalerion's CDC plugin is loaded perfectly well without editing 
>>>>>> plugins.conf.
>>>>>>
>>>>> What's the [Firebird] type of this plugin?
>>>>>
>>>> And, does it uses a .conf file through the API plugin?
>>>>
>>>> Of course, this is what I want, in addition to an easy-install approach,
>>>> use the plugin's config within the Firebird plugin API.
>>>>
>>> Plugins can be loaded without changes in plugins.conf (the only one
>>> plugin which needs it is UDR, the reason is plugin name does not match
>>> executable module name). I suppose that after renaming libudr_engine.so
>>> to libUDR.so parameter
>>>       Module = $(root)/plugins/udr_engine
>>> will not be needed.
>>>
>> Well, but UDR is an "external language", it's not (necessarily) a plugin.
>>
>> A plugin may have many languages and other things.
>>
>> When you get the language name (from metadata) and try a file (plugin)
>> name, something is wrong.
> A file and plugin names are not same things in general case. First of 
> all it's necessary to mention that "plugin name" is not absolutely 
> correct term - there are 3 different plugin names.
>
> First (and most permanent) is "Registered name" (or factory name) - a 
> name which plugin reports to plugin manager when registers in the system.
> iPlugin->registerPluginFactory(IPluginManager::TYPE_AUTH_SERVER, 
> RemotePassword::plugName, &factory);
> (in this case it is RemotePassword::plugName)
> Registered name is given by a plugin author and can not be changed later.
> Next is "Plugin module name". In simple case it matches registered name, 
> but certainly in single module one can have more than single plugin's 
> factory.
> Third is "Configured plugin name" - it's a name which is provided for 
> plugin in plugins.conf and under which it's known to plugin manager.
> In simple case all 3 names match, therefore avoiding need in 
> configuration in plugins.conf.
>
> Returning to UDR - as far as I understand when you say that a plugin may 
> have many languages you mean that in single plugin module may be placed 
> more than 1 plugin's factory for different languages, and name of each 
> factory will match that language name from metadata. In such case plugin 
> does need to be configured in plugins.conf and we return to the problem 
> we have started with - how to install plugin without editing 
> plguins.conf. Am I right?
>
Looks like plugins are loaded on-demand, and the problems come from that.

IMO all plugins should be loaded. They can then load their components
on-demand if appropriate.


Adriano


------------------------------------------------------------------------------
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to