8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-31 20:43:03 +01:00
Commit Graph

21 Commits

Author SHA1 Message Date
asfernandes
b99311dd1e Make the API usable with different type of IStatus classes, throwing (what class?) or not throwing. Builtin are CheckStatusWrapper (no throw) and ThrowStatusWrapper (throws FbException). 2015-01-12 00:21:38 +00:00
asfernandes
d8a0ff5f4b Generate interfaces with I-prefix. 2014-12-19 15:24:44 +00:00
alexpeshkoff
153de0f271 Language independent API 2014-09-29 11:03:47 +00:00
alexpeshkoff
d513daa574 Divide IStatus information into 3 parts: errors, warnings and completion code.
Errors and warnings are processed in IStatus independently. Completion code
is moved away from IStatus and returned directly by appropriate functions.
Replaced isSuccess() with more generic function getStatus(), which sets
appropriate bits in returned value when errors/warnings are present.

Also use same style when returning bytes' array and it's length in different
interfaces.
2014-08-27 09:24:30 +00:00
alexpeshkoff
6a2016235a Fixed CORE-4435: After calling release() for attachment to database (instead detach) in embedded mode attachment remains active forever (and some cleanup re. reference counters) 2014-06-10 07:13:34 +00:00
asfernandes
bb735cb5a2 Misc. 2014-05-23 02:12:56 +00:00
alexpeshkoff
be0f72fa6e Fixed assertion reported by Pavel Zotov privately, took typical measures to avoid such behavior in the future 2014-05-20 08:05:16 +00:00
robocop
c90d9d4547 Misc. 2014-04-05 01:44:32 +00:00
alexpeshkoff
20e846369e Implemented CORE-3370: Resolve additional aspects of multiple security databases from services and cross-database requests POV (mapping names) 2014-04-04 15:57:18 +00:00
alexpeshkoff
bc6ef02abd Make functions in IMessageMetadata non-const like the rest of interfaces 2014-03-12 09:32:10 +00:00
alexpeshkoff
949defe5e6 Implemented CORE-4317: Make ISQL use new object API with 32-bit length for object sizes (messages, SQL statements, etc.)
Implementation also includes changes in GPRE, but this utility is not complete - only commands, used in ISQL,
are working in code generator for new API.
New interface IUtl is added - it performs tasks, related with database objects (attachment, transaction, etc.),
but not requiring routing in YValve, i.e. client only tasks.
2014-01-15 13:02:08 +00:00
robocop
2810026363 Misc and warnings. 2013-12-29 00:35:50 +00:00
alexpeshkoff
1b38b028b8 Scale of variable is signed value 2013-11-22 07:44:22 +00:00
alexpeshkoff
83db69c849 Fixed new gcc 4.7 warning "deleting object of polymorphic class" in many places. Adjusted use of interface types (reference counted vs just vesrioned). Avoided some hacks caused by badly chosen interface type. 2013-11-18 12:20:23 +00:00
asfernandes
f931289307 Misc. 2013-07-31 01:21:49 +00:00
alexpeshkoff
9f3a3be189 Fixed segfault when releasing IMessageMetadata, reported by Dmitry privately. It was bad idea to return to the user interface created by plugin. 2013-07-19 13:51:54 +00:00
asfernandes
768b79c361 Improvements and corrections to message builder and UDR. 2013-06-18 15:50:48 +00:00
asfernandes
28f05f168b Refactor. 2013-03-27 01:34:10 +00:00
alexpeshkoff
33b4336028 Enhancements of IMetadataBuilder 2013-02-21 14:59:24 +00:00
asfernandes
1d1f81bdc9 Replaced ICoerceMetadata with IMetadataBuilder and add a builder creator method in IMaster.
This change is to make applications who define they own message format (without metadata inspection and coercion) to easily create its IMessageMetadata.
2013-02-20 19:41:01 +00:00
alexpeshkoff
fc12495d0e Modified IStatement interface in our API:
1. Never allocate empty statement - always use att->prepare() to create statement interface
2. Separated IStatement into 2 parts - statement itself and resultset.
3. Added stmt->openCursor() (and att->openCursor() for unprepared statements) to create IResultSet.
4. Always use IMessageMetadata (former IParametersMetadata) to pass message fromat info from client,
   therefore avoiding need in BLR generation in client applications.
2013-02-17 12:08:53 +00:00