Re: [Firebird-devel] IPluginConfig

2014-07-01 Thread Alex Peshkoff
On 06/30/14 19:12, Dimitry Sibiryakov wrote:
> Hello, All.
>
> I see in sources this:
>
>> // This interface is passed to plugin's factory as it's single parameter
>> // and contains methods to access specific plugin's configuration data
>> class IPluginConfig : public IRefCounted
>> {
>> public:
>>  virtual const char* FB_CARG getConfigFileName() = 0;
>>  virtual IConfig* FB_CARG getDefaultConfig() = 0;
>>  virtual IFirebirdConf* FB_CARG getFirebirdConf() = 0;
>>  virtual void FB_CARG setReleaseDelay(ISC_UINT64 microSeconds) = 0;
>> };
> But I can't understand which exactly method is supposed to provide access 
> to plugin's
> configuration parameters from file plugins.conf?
>

The question is wrong - plugin's configuration is not necessary in 
plugins.conf. But if you want to access configuration in default place - 
use getDefaultConfig().


--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] IPluginModule

2014-07-01 Thread Dimitry Sibiryakov
01.07.2014 8:47, Alex Peshkoff wrote:
> getMo_g_ule() is really missing, but getMo_d_ule(), returning pointer to
> IPluginModule, is present in MasterImplementation::upgradeInterface()

   So far there is only one version, upgradeInterface() is not ever called. And 
even there 
returned module is never used.
   What's the point to have whole class for the sake of one function which much 
better can 
be in the Factory interface or independently exported?..

-- 
   WBR, SD.

--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] IPluginConfig

2014-07-01 Thread Dimitry Sibiryakov
01.07.2014 9:08, Alex Peshkoff wrote:
> The question is wrong - plugin's configuration is not necessary in
> plugins.conf. But if you want to access configuration in default place -
> use getDefaultConfig().

   Actually, I don't care what user configured to be a storage of plugin config 
- separate 
file or a section in plugins.conf. I just need to know how to read these 
parameters, no 
matter where they are.

-- 
   WBR, SD.

--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] IPluginConfig

2014-07-01 Thread Alex Peshkoff
On 07/01/14 11:38, Dimitry Sibiryakov wrote:
> 01.07.2014 9:08, Alex Peshkoff wrote:
>> The question is wrong - plugin's configuration is not necessary in
>> plugins.conf. But if you want to access configuration in default place -
>> use getDefaultConfig().
> Actually, I don't care what user configured to be a storage of plugin 
> config - separate
> file or a section in plugins.conf. I just need to know how to read these 
> parameters, no
> matter where they are.
>

And this is exactly what is returned by getDefaultConfig().


--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] IPluginModule

2014-07-01 Thread Alex Peshkoff
On 07/01/14 11:35, Dimitry Sibiryakov wrote:
> 01.07.2014 8:47, Alex Peshkoff wrote:
>> getMo_g_ule() is really missing, but getMo_d_ule(), returning pointer to
>> IPluginModule, is present in MasterImplementation::upgradeInterface()
> So far there is only one version, upgradeInterface() is not ever called.

We should better think about future versions here.

> And even there
> returned module is never used.

This ptr is used to distinguish modules between each other. Method is 
not called in this function.
It's called ln class PluginModule in plugin manager. And this interface 
is used to detect unexpected exit() call in user program possible in 
embedded case.

> What's the point to have whole class for the sake of one function which 
> much better can
> be in the Factory interface or independently exported?..
>

Don't mix plugin instance and plugin module. Interface IPluginModule is 
not only for providing doClean function, it's a collection of 
functionalities required for module, not instance.


--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] IPluginModule

2014-07-01 Thread Dimitry Sibiryakov
01.07.2014 10:34, Alex Peshkoff wrote:
> Interface IPluginModule is
> not only for providing doClean function, it's a collection of
> functionalities required for module, not instance.

   I see only doClean(), getVersion() and getModule(). What functionality I 
missed?

-- 
   WBR, SD.

--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] IPluginModule

2014-07-01 Thread Alex Peshkoff
On 07/01/14 15:47, Dimitry Sibiryakov wrote:
> 01.07.2014 10:34, Alex Peshkoff wrote:
>> Interface IPluginModule is
>> not only for providing doClean function, it's a collection of
>> functionalities required for module, not instance.
> I see only doClean(), getVersion() and getModule(). What functionality I 
> missed?
>

1. It must be single instance per module, therefore may be used as an 
unique marker for it.
2. doClean() makes it possible to set module cleanup routine if needed
3. Implementation of IPluginModule in GetPlugins detects unexpected 
exit/unloadLibrary call in embedded case. This uses features 1 & 2.

Currently we do not need any more module-level functionality, if/when 
need we will add methods to interface.


--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] IPluginModule

2014-07-01 Thread Dimitry Sibiryakov
01.07.2014 14:24, Alex Peshkoff wrote:
> 1. It must be single instance per module, therefore may be used as an
> unique marker for it.

   I saw nowhere this requirement is written.
   Plugin factory, BTW has the same quality, so I really don't see a reason for 
a separate 
class.
   Every plugin module already has unique marker, it is handle returned by 
LoadLibrary()/dload(). What is a second one for?..

> 2. doClean() makes it possible to set module cleanup routine if needed

   Separate exported function can do the same but don't require to implement 
unnecessary 
methods (including ridiculous in this case getModule()).

> Currently we do not need any more module-level functionality, if/when
> need we will add methods to interface.

   What if a plugin does not require any special cleanup? Can it return NULL 
from 
getModule()? Is engine ready to get this NULL from it?

-- 
   WBR, SD.

--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Server-side plugins and character sets

2014-07-01 Thread Adriano dos Santos Fernandes
Hi!

We should decide what should happens with character sets and server-side
plugins. I talked specifically at external engines, but the same may be
valid for trace and whatever.

My idea is that the ExternalContext should have a setCharSet method so
that server-side user code could set its own connection charset. This
connection charset remains active until user code returns to engine.

So far, so good. But there are more problems. At the moment, we return
const char* in various methods, say IRoutineMetadata::getName and
others. These returns utf-8 data.

They are simple (just returns), but may not be convenient in all situations.

Options would be the user to pass a buffer and a character set. Or a
additional API method specifically suitable for conversions.

Opinions?


Adriano


--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Server-side plugins and character sets

2014-07-01 Thread Dimitry Sibiryakov
01.07.2014 17:26, Adriano dos Santos Fernandes wrote:
> We should decide what should happens with character sets and server-side
> plugins. I talked specifically at external engines, but the same may be
> valid for trace and whatever.
>
> Opinions?

   Make them unicode-only as had been suggested many times by many people.

-- 
   WBR, SD.

--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Server-side plugins and character sets

2014-07-01 Thread Adriano dos Santos Fernandes
On 01/07/2014 12:30, Dimitry Sibiryakov wrote:
> 01.07.2014 17:26, Adriano dos Santos Fernandes wrote:
>> We should decide what should happens with character sets and server-side
>> plugins. I talked specifically at external engines, but the same may be
>> valid for trace and whatever.
>>
>> Opinions?
>Make them unicode-only as had been suggested many times by many people.
>
And at the same time, we make Windows, all files present in all HDDs in
the world, and everything unicode-only. Perfect.

And then even the unicode-people will complain, because we chose one
unicode-encoding, while they want another one.


Adriano


--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] IPluginModule

2014-07-01 Thread Alex Peshkoff
On 07/01/14 16:36, Dimitry Sibiryakov wrote:
> 01.07.2014 14:24, Alex Peshkoff wrote:
>> 1. It must be single instance per module, therefore may be used as an
>> unique marker for it.
> I saw nowhere this requirement is written.
> Plugin factory, BTW has the same quality, so I really don't see a reason 
> for a separate
> class.

You are wrong - module may (and does - Win_Sspi) contain >1 factories.

> Every plugin module already has unique marker, it is handle returned by
> LoadLibrary()/dload(). What is a second one for?..

A bit easier to access inside plugin module.

>
>> 2. doClean() makes it possible to set module cleanup routine if needed
> Separate exported function can do the same but don't require to implement 
> unnecessary
> methods (including ridiculous in this case getModule()).

Yes, it may be replaced. But it combines very nice with unexpected 
unload detection.

>> Currently we do not need any more module-level functionality, if/when
>> need we will add methods to interface.
> What if a plugin does not require any special cleanup? Can it return NULL 
> from
> getModule()? Is engine ready to get this NULL from it?
>

Not.


--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] IPluginModule

2014-07-01 Thread Dimitry Sibiryakov
01.07.2014 18:06, Alex Peshkoff wrote:
> On 07/01/14 16:36, Dimitry Sibiryakov wrote:
>> >01.07.2014 14:24, Alex Peshkoff wrote:
>>> >>1. It must be single instance per module, therefore may be used as an
>>> >>unique marker for it.
>> > I saw nowhere this requirement is written.
>> > Plugin factory, BTW has the same quality, so I really don't see a 
>> > reason for a separate
>> >class.
> You are wrong - module may (and does - Win_Sspi) contain >1 factories.

   Which means that each of them can perform its part of cleanup or only one of 
them can 
do cleanup - it is up to plugin developer. I still see no point in single 
cleanup entity.

>> What if a plugin does not require any special cleanup? Can it return 
>> NULL from
>> getModule()? Is engine ready to get this NULL from it?
>>
>
> Not.

   And out of curiosity: what IPluginModule::getModule() is supposed to return 
and why it 
may be called at all?

-- 
   WBR, SD.

--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] IPluginModule

2014-07-01 Thread Alex Peshkoff
On 07/01/14 20:15, Dimitry Sibiryakov wrote:
> 01.07.2014 18:06, Alex Peshkoff wrote:
>> On 07/01/14 16:36, Dimitry Sibiryakov wrote:
 01.07.2014 14:24, Alex Peshkoff wrote:
>> 1. It must be single instance per module, therefore may be used as an
>> unique marker for it.
  I saw nowhere this requirement is written.
  Plugin factory, BTW has the same quality, so I really don't see a 
 reason for a separate
 class.
>> You are wrong - module may (and does - Win_Sspi) contain >1 factories.
> Which means that each of them can perform its part of cleanup or only one 
> of them can
> do cleanup - it is up to plugin developer. I still see no point in single 
> cleanup entity.

May not use it in that case...

>
>>>  What if a plugin does not require any special cleanup? Can it return 
>>> NULL from
>>> getModule()? Is engine ready to get this NULL from it?
>>>
>> Not.
> And out of curiosity: what IPluginModule::getModule() is supposed to 
> return and why it
> may be called at all?
>

self


--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] IPluginModule

2014-07-01 Thread Dimitry Sibiryakov
01.07.2014 20:05, Alex Peshkoff wrote:
>>> You are wrong - module may (and does - Win_Sspi) contain >1 factories.
>> > Which means that each of them can perform its part of cleanup or only 
>> > one of them can
>> >do cleanup - it is up to plugin developer. I still see no point in single 
>> >cleanup entity.
> May not use it in that case...

   Why?

>> > And out of curiosity: what IPluginModule::getModule() is supposed to 
>> > return and why it
>> >may be called at all?
>> >
> self

   But calling code already has this pointer. What's the point?

-- 
   WBR, SD.

--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


[Firebird-devel] Meaning of incarnation

2014-07-01 Thread Mark Rotteveel
In various places of the Firebird wire protocol and the Firebird sources 
the term 'incarnation' is used. What does this mean?

For example for op_info_database, the struct on the Firebird side has:

typedef struct p_info
{
 OBJCT  p_info_object; // Object of information
 USHORT p_info_incarnation; // Incarnation of object
 CSTRING_CONST  p_info_items; // Information
 CSTRING_CONST  p_info_recv_items; // Receive information
 ULONG  p_info_buffer_length; // Target buffer length
} P_INFO;

Searching through the sources I see other occurrence of this term as 
well, but I am not getting any closer to its meaning. Currently Jaybird 
always sends 0 (and I believe other wire protocol implementations do as 
well).

Mark
-- 
Mark Rotteveel

--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Meaning of incarnation

2014-07-01 Thread Ann Harrison
> 
Mark,

> In various places of the Firebird wire protocol and the Firebird sources 
> the term 'incarnation' is used. What does this mean?

For cross-version compatibilty, most objects have a version number, sometimes 
called "incarnation".  Objects that have not changed will be zero.   At least 
that's what it meant originally.  The header file that declares the object 
should have all versions.

Cheers,

Ann
--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Meaning of incarnation

2014-07-01 Thread Mark Rotteveel
On 1-7-2014 20:56, Ann Harrison wrote:
>> In various places of the Firebird wire protocol and the Firebird sources
>> the term 'incarnation' is used. What does this mean?
>
> For cross-version compatibilty, most objects have a version number, sometimes 
> called "incarnation".  Objects that have not changed will be zero.   At least 
> that's what it meant originally.  The header file that declares the object 
> should have all versions.

I am looking at (for example) Request::send and Request::startAndSend in 
interface.cpp and I am not sure if that is how it is used there (but I 
haven't been able to find what the parameter level does).

Mark
-- 
Mark Rotteveel

--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] Meaning of incarnation

2014-07-01 Thread Helen Borrie
At 06:46 a.m. 2/07/2014, Mark Rotteveel wrote:
>In various places of the Firebird wire protocol and the Firebird sources 
>the term 'incarnation' is used. What does this mean?

(fig.) Bringing into existence; (lit.) Embodiment in human flesh.

Helen


--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] SF.net SVN: firebird:[59774] firebird/trunk/src

2014-07-01 Thread Adriano dos Santos Fernandes
Frank,

Please don't mess with obj.h for ISQL support.

I think you should do it different, for example, passing extra
parameters instead of the new constants.


Adriano


On 26-06-2014 13:14, f...@users.sourceforge.net wrote:
> Revision: 59774
>   http://sourceforge.net/p/firebird/code/59774
> Author:   fsg
> Date: 2014-06-26 16:14:21 + (Thu, 26 Jun 2014)
> Log Message:
> ---
> some more enhancements to isqls extract utility
> split extraction of functions and procedures in two parts (header and body)
> 
> Modified Paths:
> --
> firebird/trunk/src/isql/extract.epp
> firebird/trunk/src/jrd/obj.h
> 
> Modified: firebird/trunk/src/isql/extract.epp
> ===
> --- firebird/trunk/src/isql/extract.epp   2014-06-26 09:43:40 UTC (rev 
> 59773)
> +++ firebird/trunk/src/isql/extract.epp   2014-06-26 16:14:21 UTC (rev 
> 59774)
> @@ -73,7 +73,6 @@
>  static void list_all_grants();
>  static processing_state list_all_grants2(bool, const SCHAR*);
>  static void list_all_procs();
> -static void list_all_procs();
>  static void list_all_tables(LegacyTables flag, SSHORT);
>  static void list_all_triggers();
>  static void list_check();
> @@ -88,11 +87,15 @@
>  static void list_foreign();
>  static void list_functions();
>  static void list_functions_ods12();
> +static void list_functions_ods12_headers();
> +static void list_functions_ods12_bodies();
>  static void list_functions_legacy();
>  static void list_generators();
>  static void list_indexes();
>  static void list_package_bodies();
>  static void list_package_headers();
> +static void list_procedure_bodies();
> +static void list_procedure_headers();
>  static void list_views();
>  
>  static const char* const Procterm = "^"; // TXNN: script use only
> @@ -181,9 +184,11 @@
>   list_filters();
>   list_charsets();
>   list_collations();
> + list_domains(default_char_set_id);
>   list_generators();
> - list_domains(default_char_set_id);
> - list_functions();
> + list_functions_legacy();
> + list_functions_ods12_headers();
> + list_procedure_headers();
>   list_package_headers();
>   list_all_tables(flag, default_char_set_id);
>   list_indexes();
> @@ -191,7 +196,8 @@
>   list_views();
>   list_check();
>   list_exceptions();
> - list_all_procs();
> + list_functions_ods12_bodies();
> + list_procedure_bodies();
>   list_package_bodies();
>   listDomainConstraints();
>   list_all_triggers();
> @@ -1310,8 +1316,23 @@
>   case obj_procedure:
>   legend = "Stored procedures";
>   break;
> + case obj_procedure_header:
> + legend = "Stored procedures headers";
> + break;
> + case obj_procedure_body:
> + legend = "Stored procedures bodies";
> + break;
> + case obj_function:
> + legend = "Stored functions";
> + break;
> +case obj_function_header:
> + legend = "Stored functions headers";
> + break;
> + case obj_function_body:
> + legend = "Stored functions bodies";
> + break;
>   case obj_udf:
> - legend = "Stored functions";
> + legend = "User defined functions";
>   break;
>   case obj_trigger:
>   legend = "Triggers only will work for SQL triggers";
> @@ -1337,7 +1358,6 @@
>   isqlGlob.printf("SET AUTODDL ON%s%s", isqlGlob.global_Term, 
> NEWLINE);
>  }
>  
> -
>  static void list_all_procs()
>  {
>  /**
> @@ -1347,19 +1367,41 @@
>   **
>   *
>   * Functional description
> - *   Shows text of a stored procedure given a name.
> - *   or lists procedures if no argument.
> + *   
> + *   lists all procedures 
>   *   Since procedures may reference each other, we will create all
>   *   dummy procedures of the correct name, then alter these to their
>   *   correct form.
>   *  Add the parameter names when these procedures are created.
>   *
>   **/
> + print_proc_prefix(obj_procedure);
> + list_procedure_headers();
> + list_procedure_bodies();
> + 
> +}
>  
> +static void list_procedure_headers()
> +{
> +/**
> + *
> + *   l i s t _ p r o c e d u r e _ h e a d e r s
> + *
> + **
> + *
> + * Functional description
> + * Create all procedure declarations
> + * with empty body. This will allow us to create objects
> + * that depend on them. The alteration to their
> + * correct form is postponed to list_procedure_bodies.
> + * Add the parameter names when these procedures are created.
> + *
> + *

Re: [Firebird-devel] SF.net SVN: firebird:[59774] firebird/trunk/src

2014-07-01 Thread Claudio Valderrama C.
> -Original Message-
> From: Adriano dos Santos Fernandes [mailto:adrian...@gmail.com] 
> Sent: Martes, 01 de Julio de 2014 22:22
> 
> 
> Frank,
> 
> Please don't mess with obj.h for ISQL support.
> 
> I think you should do it different, for example, passing extra
> parameters instead of the new constants.
> 
> 
> Adriano

I have my reservations about the extraction order, but since I didn't try, I
didn't voice my concern yet. This was the old order:
list_functions();
list_generators();
list_domains(default_char_set_id);

This is the new order... I mean the isql extraction order, not the "new
world order":

list_domains(default_char_set_id);
list_generators();
list_functions_legacy();
list_functions_ods12_headers();

Why is it necessary to extract domains before generators? Domains can depend
on generators, but generators don't depend on anything. This is a silly
example, but it's allowed by our syntax:

SQL> create domain d int check (value > gen_id(g, 3));
Statement failed, SQLSTATE = 42000
invalid request BLR at offset 15
-generator G is not defined

I think generators should continue preceding domains when extracting
scripts. Maybe I will have more to say when I'm able to digest all the
commits.

C.


--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel


Re: [Firebird-devel] IPluginModule

2014-07-01 Thread Alex Peshkoff
On 07/01/14 22:40, Dimitry Sibiryakov wrote:

  And out of curiosity: what IPluginModule::getModule() is supposed to 
 return and why it
 may be called at all?

>> self
> But calling code already has this pointer. What's the point?
>

Because all our interfaces are derived from IVersioned, and it has 
getModule() function.



--
Open source business process management suite built on Java and Eclipse
Turn processes into business applications with Bonita BPM Community Edition
Quickly connect people, data, and systems into organized workflows
Winner of BOSSIE, CODIE, OW2 and Gartner awards
http://p.sf.net/sfu/Bonitasoft
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel