You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(13) |
Sep
(25) |
Oct
(10) |
Nov
(19) |
Dec
(20) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
|
Feb
(206) |
Mar
(43) |
Apr
(25) |
May
(20) |
Jun
(69) |
Jul
(121) |
Aug
(95) |
Sep
(122) |
Oct
(213) |
Nov
(46) |
Dec
(39) |
2006 |
Jan
(28) |
Feb
(57) |
Mar
(21) |
Apr
(7) |
May
(11) |
Jun
(2) |
Jul
(8) |
Aug
(13) |
Sep
(2) |
Oct
(2) |
Nov
(20) |
Dec
(16) |
2007 |
Jan
(9) |
Feb
(15) |
Mar
|
Apr
(4) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2008 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(3) |
Aug
(1) |
Sep
(9) |
Oct
|
Nov
(1) |
Dec
|
2009 |
Jan
|
Feb
|
Mar
(8) |
Apr
(1) |
May
|
Jun
|
Jul
(11) |
Aug
(57) |
Sep
(2) |
Oct
(6) |
Nov
|
Dec
(7) |
2010 |
Jan
(11) |
Feb
(1) |
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
(1) |
Aug
(2) |
Sep
(27) |
Oct
(3) |
Nov
(7) |
Dec
(1) |
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(10) |
Oct
|
Nov
|
Dec
|
2012 |
Jan
(8) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
(3) |
Nov
(1) |
Dec
(1) |
2013 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
(4) |
Dec
|
2015 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
(1) |
Sep
(1) |
Oct
|
Nov
|
Dec
|
2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
(1) |
Apr
(4) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
(3) |
Oct
|
Nov
(4) |
Dec
|
2022 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
From: Femi F. <fad...@us...> - 2005-02-21 10:20:59
|
Update of /cvsroot/instantobjects/Source/Brokers/UIB/D5 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27662/D5 Log Message: Directory /cvsroot/instantobjects/Source/Brokers/UIB/D5 added to the repository |
From: Nando D. <na...@us...> - 2005-02-21 10:15:28
|
Update of /cvsroot/instantobjects/Docs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25963 Modified Files: Maintainers.html Log Message: updated Index: Maintainers.html =================================================================== RCS file: /cvsroot/instantobjects/Docs/Maintainers.html,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Maintainers.html 14 Feb 2005 17:57:45 -0000 1.2 --- Maintainers.html 21 Feb 2005 10:15:07 -0000 1.3 *************** *** 10,14 **** <META NAME="CREATED" CONTENT="20050209;10225000"> <META NAME="CHANGEDBY" CONTENT="Nando Dessena"> ! <META NAME="CHANGED" CONTENT="20050214;18573381"> <STYLE> --- 10,14 ---- <META NAME="CREATED" CONTENT="20050209;10225000"> <META NAME="CHANGEDBY" CONTENT="Nando Dessena"> ! <META NAME="CHANGED" CONTENT="20050221;11141803"> <STYLE> *************** *** 40,47 **** <TD ALIGN=CENTER BGCOLOR="#0000FF"><B>D7</B></TD> <TD ALIGN=CENTER BGCOLOR="#0000FF"><B>K3</B></TD> ! <TD ALIGN=CENTER BGCOLOR="#0000FF"><B>FPC</B></TD> </TR> <TR> ! <TD HEIGHT=17 ALIGN=RIGHT BGCOLOR="#0000FF"><B>Core</B></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER>CB</TD> --- 40,47 ---- <TD ALIGN=CENTER BGCOLOR="#0000FF"><B>D7</B></TD> <TD ALIGN=CENTER BGCOLOR="#0000FF"><B>K3</B></TD> ! <TD ALIGN=CENTER BGCOLOR="#0000FF"><B><I>FPC</I></B></TD> </TR> <TR> ! <TD HEIGHT=17 ALIGN=RIGHT BGCOLOR="#0000FF"><B>Core/Design</B></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER>CB</TD> *************** *** 49,56 **** <TD ALIGN=CENTER>ND</TD> <TD ALIGN=CENTER>AP</TD> ! <TD ALIGN=CENTER>UB</TD> </TR> <TR> ! <TD HEIGHT=17 ALIGN=RIGHT BGCOLOR="#0000FF"><B>TestSuite</B></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> --- 49,56 ---- <TD ALIGN=CENTER>ND</TD> <TD ALIGN=CENTER>AP</TD> ! <TD ALIGN=CENTER><I>UB</I></TD> </TR> <TR> ! <TD HEIGHT=17 ALIGN=RIGHT BGCOLOR="#0000FF"><B>Tests</B></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> *************** *** 58,65 **** <TD ALIGN=CENTER>UB</TD> <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> ! <TD ALIGN=CENTER>UB</TD> </TR> <TR> ! <TD HEIGHT=17 ALIGN=RIGHT BGCOLOR="#0000FF"><B>ObjectFoundry</B></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> --- 58,65 ---- <TD ALIGN=CENTER>UB</TD> <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> ! <TD ALIGN=CENTER><I>UB</I></TD> </TR> <TR> ! <TD HEIGHT=18 ALIGN=RIGHT BGCOLOR="#0000FF"><B>ObjectFoundry</B></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> *************** *** 67,71 **** <TD ALIGN=CENTER>RG</TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> </TR> <TR> --- 67,71 ---- <TD ALIGN=CENTER>RG</TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><I><BR></I></TD> </TR> <TR> *************** *** 73,80 **** <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER>CB</TD> ! <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> <TD ALIGN=CENTER>UB</TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> </TR> <TR> --- 73,80 ---- <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER>CB</TD> ! <TD ALIGN=CENTER BGCOLOR="#FFFFFF">ND</TD> <TD ALIGN=CENTER>UB</TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><I><BR></I></TD> </TR> <TR> *************** *** 85,89 **** <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> </TR> <TR> --- 85,89 ---- <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><I><BR></I></TD> </TR> <TR> *************** *** 94,98 **** <TD ALIGN=CENTER>CB</TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> </TR> <TR> --- 94,98 ---- <TD ALIGN=CENTER>CB</TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><I><BR></I></TD> </TR> <TR> *************** *** 103,107 **** <TD ALIGN=CENTER>RG</TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> </TR> <TR> --- 103,107 ---- <TD ALIGN=CENTER>RG</TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><I><BR></I></TD> </TR> <TR> *************** *** 112,119 **** <TD ALIGN=CENTER>CB</TD> <TD ALIGN=CENTER>CB</TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> </TR> <TR> ! <TD HEIGHT=17 ALIGN=RIGHT BGCOLOR="#0000FF"><B>FlashFiler Broker</B></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER>FF</TD> --- 112,119 ---- <TD ALIGN=CENTER>CB</TD> <TD ALIGN=CENTER>CB</TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><I><BR></I></TD> </TR> <TR> ! <TD HEIGHT=18 ALIGN=RIGHT BGCOLOR="#0000FF"><B>FlashFiler Broker</B></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER>FF</TD> *************** *** 121,125 **** <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> </TR> <TR> --- 121,125 ---- <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><I><BR></I></TD> </TR> <TR> *************** *** 130,134 **** --- 130,143 ---- <TD ALIGN=CENTER>ND</TD> <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> + <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><I><BR></I></TD> + </TR> + <TR> + <TD HEIGHT=18 ALIGN=RIGHT BGCOLOR="#0000FF"><B>NexusDB Broker(s)</B></TD> + <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> + <TD ALIGN=CENTER>CW</TD> + <TD ALIGN=CENTER>CW</TD> + <TD ALIGN=CENTER>CW</TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> + <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><I><BR></I></TD> </TR> <TR> *************** *** 139,152 **** <TD ALIGN=CENTER>AP</TD> <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> ! <TD ALIGN=CENTER>UB</TD> ! </TR> ! <TR> ! <TD HEIGHT=17 ALIGN=RIGHT BGCOLOR="#0000FF"><B>NexusDB Broker(s)</B></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER>CW</TD> ! <TD ALIGN=CENTER>CW</TD> ! <TD ALIGN=CENTER>CW</TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> </TR> <TR> --- 148,152 ---- <TD ALIGN=CENTER>AP</TD> <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> ! <TD ALIGN=CENTER><I>UB</I></TD> </TR> <TR> *************** *** 157,164 **** <TD ALIGN=CENTER>CB</TD> <TD ALIGN=CENTER>CB</TD> ! <TD ALIGN=CENTER>UB</TD> </TR> <TR> ! <TD HEIGHT=17 ALIGN=RIGHT BGCOLOR="#0000FF"><B>Demos</B></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER>CB</TD> --- 157,173 ---- <TD ALIGN=CENTER>CB</TD> <TD ALIGN=CENTER>CB</TD> ! <TD ALIGN=CENTER><I>UB</I></TD> </TR> <TR> ! <TD HEIGHT=18 ALIGN=RIGHT BGCOLOR="#0000FF"><B>Template (sample) Broker</B></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#FFFF00"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#FFFF00"><I><BR></I></TD> ! </TR> ! <TR> ! <TD HEIGHT=18 ALIGN=RIGHT BGCOLOR="#0000FF"><B>Demos</B></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER>CB</TD> *************** *** 166,170 **** <TD ALIGN=CENTER>CW</TD> <TD ALIGN=CENTER>CB</TD> ! <TD ALIGN=CENTER>UB</TD> </TR> <TR> --- 175,179 ---- <TD ALIGN=CENTER>CW</TD> <TD ALIGN=CENTER>CB</TD> ! <TD ALIGN=CENTER><I>UB</I></TD> </TR> <TR> *************** *** 175,182 **** <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> </TR> <TR> ! <TD HEIGHT=17 ALIGN=RIGHT BGCOLOR="#0000FF"><B>Developer Docs</B></TD> <TD ALIGN=CENTER>All</TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> --- 184,191 ---- <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><I><BR></I></TD> </TR> <TR> ! <TD HEIGHT=18 ALIGN=RIGHT BGCOLOR="#0000FF"><B>Developer Docs</B></TD> <TD ALIGN=CENTER>All</TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> *************** *** 184,188 **** <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> </TR> <TR> --- 193,197 ---- <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><BR></TD> ! <TD ALIGN=CENTER BGCOLOR="#C0C0C0"><I><BR></I></TD> </TR> <TR> *************** *** 196,203 **** </TR> <TR> ! <TD HEIGHT=17 ALIGN=CENTER BGCOLOR="#99CCFF"><B><I>Colour legend</I></B></TD> <TD ALIGN=CENTER><B><I><BR></I></B></TD> <TD ALIGN=LEFT><BR></TD> ! <TD ALIGN=LEFT BGCOLOR="#99CCFF"><B><I>Initials legend</I></B></TD> <TD ALIGN=LEFT><B><I><BR></I></B></TD> <TD ALIGN=LEFT><BR></TD> --- 205,212 ---- </TR> <TR> ! <TD HEIGHT=18 ALIGN=CENTER BGCOLOR="#99CCFF"><B><I>Colours</I></B></TD> <TD ALIGN=CENTER><B><I><BR></I></B></TD> <TD ALIGN=LEFT><BR></TD> ! <TD ALIGN=LEFT BGCOLOR="#99CCFF"><B><I>Initials</I></B></TD> <TD ALIGN=LEFT><B><I><BR></I></B></TD> <TD ALIGN=LEFT><BR></TD> *************** *** 214,218 **** </TR> <TR> ! <TD HEIGHT=18 ALIGN=CENTER BGCOLOR="#C0C0C0">Not applicable</TD> <TD ALIGN=LEFT><BR></TD> <TD ALIGN=LEFT><BR></TD> --- 223,227 ---- </TR> <TR> ! <TD HEIGHT=17 ALIGN=CENTER BGCOLOR="#C0C0C0">Not applicable</TD> <TD ALIGN=LEFT><BR></TD> <TD ALIGN=LEFT><BR></TD> *************** *** 223,227 **** </TR> <TR> ! <TD HEIGHT=18 ALIGN=CENTER BGCOLOR="#FFFF00">Vacant</TD> <TD ALIGN=LEFT><BR></TD> <TD ALIGN=LEFT><BR></TD> --- 232,236 ---- </TR> <TR> ! <TD HEIGHT=17 ALIGN=CENTER BGCOLOR="#FFFF00">Vacant</TD> <TD ALIGN=LEFT><BR></TD> <TD ALIGN=LEFT><BR></TD> *************** *** 232,236 **** </TR> <TR> ! <TD HEIGHT=18 ALIGN=LEFT><BR></TD> <TD ALIGN=LEFT><BR></TD> <TD ALIGN=LEFT><BR></TD> --- 241,245 ---- </TR> <TR> ! <TD HEIGHT=17 ALIGN=LEFT><BR></TD> <TD ALIGN=LEFT><BR></TD> <TD ALIGN=LEFT><BR></TD> *************** *** 241,245 **** </TR> <TR> ! <TD HEIGHT=18 ALIGN=LEFT BGCOLOR="#99CCFF"><B><I>Main roles</I></B></TD> <TD ALIGN=LEFT><B><I><BR></I></B></TD> <TD ALIGN=LEFT><BR></TD> --- 250,254 ---- </TR> <TR> ! <TD HEIGHT=17 ALIGN=LEFT BGCOLOR="#99CCFF"><B><I>Main roles</I></B></TD> <TD ALIGN=LEFT><B><I><BR></I></B></TD> <TD ALIGN=LEFT><BR></TD> *************** *** 259,263 **** </TR> <TR> ! <TD HEIGHT=18 ALIGN=LEFT BGCOLOR="#0000FF"><B>Release Manager</B></TD> <TD ALIGN=LEFT>CB</TD> <TD ALIGN=LEFT><BR></TD> --- 268,272 ---- </TR> <TR> ! <TD HEIGHT=17 ALIGN=LEFT BGCOLOR="#0000FF"><B>Release Manager</B></TD> <TD ALIGN=LEFT>CB</TD> <TD ALIGN=LEFT><BR></TD> *************** *** 268,272 **** </TR> <TR> ! <TD HEIGHT=18 ALIGN=LEFT><BR></TD> <TD ALIGN=LEFT><BR></TD> <TD ALIGN=LEFT><BR></TD> --- 277,281 ---- </TR> <TR> ! <TD HEIGHT=17 ALIGN=LEFT><BR></TD> <TD ALIGN=LEFT><BR></TD> <TD ALIGN=LEFT><BR></TD> |
From: Nando D. <na...@us...> - 2005-02-21 09:44:45
|
Update of /cvsroot/instantobjects/Source/Brokers/FlashFiler In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv19283/Brokers/FlashFiler Removed Files: ioff60.dof ioff60.dpk ioff70.dof ioff70.dpk Log Message: removed unsupported broker files --- ioff70.dof DELETED --- --- ioff60.dpk DELETED --- --- ioff70.dpk DELETED --- --- ioff60.dof DELETED --- |
From: Nando D. <na...@us...> - 2005-02-21 09:43:08
|
Update of /cvsroot/instantobjects/Source/Brokers/FlashFiler In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18920/Brokers/FlashFiler Removed Files: ioff50.cfg ioff50.dof ioff50.dpk ioff50.res Log Message: removed obsolete files --- ioff50.dof DELETED --- --- ioff50.dpk DELETED --- --- ioff50.res DELETED --- --- ioff50.cfg DELETED --- |
From: Nando D. <na...@us...> - 2005-02-21 09:38:09
|
Update of /cvsroot/instantobjects/Source/Brokers/DBISAM In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17816/Brokers/DBISAM Removed Files: iodbi50.dof iodbi50.dpk Log Message: removed unsupported broker files --- iodbi50.dof DELETED --- --- iodbi50.dpk DELETED --- |
From: Nando D. <na...@us...> - 2005-02-21 09:30:37
|
Update of /cvsroot/instantobjects/Source/Brokers/ADS In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16071/Brokers/ADS Removed Files: ioads60.dof ioads60.dpk ioads70.dof ioads70.dpk Log Message: removed unsupported broker files --- ioads70.dpk DELETED --- --- ioads60.dof DELETED --- --- ioads60.dpk DELETED --- --- ioads70.dof DELETED --- |
From: Nando D. <na...@us...> - 2005-02-21 09:29:47
|
Update of /cvsroot/instantobjects/Source/Brokers/ADS In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15867/Brokers/ADS Removed Files: ioads50.dof ioads50.dpk Log Message: removed obsolete files --- ioads50.dpk DELETED --- --- ioads50.dof DELETED --- |
From: Nando D. <na...@us...> - 2005-02-21 09:22:30
|
Update of /cvsroot/instantobjects/Docs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14327 Added Files: Source_Tree_Structure.txt Log Message: source tree documentation for IO developers --- NEW FILE: Source_Tree_Structure.txt --- Structure of the InstantObjects source tree =========================================== Nando Dessena, 02/2005 Abstract -------- The following notes document the structure of the InstantObjects tree as stored in CVS, explaining what each folder is for. Modules ------- Currently IO is made up of 4 (mostly independent) modules; future versions might be organized differently. Here is a list of the 4 modules: Demos: contains demo projects aimed at the IO newbie. There is a subfolder for each applciation: - Intro: the bare bones demo application, whose building process is shown in the famous IO introductory video. - PrimerCross: the cross-platform version of the more juicy Primer example. This folder also contains a PrimerExternal.dpr project that makes use of external storage. - Pump: a straightforward application that shows how to use the InstantPump component. - Test: in a subfolder called BuildPrimerDatabase you'll find a console application that demonstrates building and populating an InstantObjects database. The Demos folder must be a sibling of the Source folder (they're not completely independent). Docs: Here you'll find some developer and user docs, mostly in the form of txt files. User docs here are in their primal form, not intended for direct user consumption but rather as the basis for the help maintainers and docs for testers. This folder might use a restructure. Help: sources for the IO user docs/help. Source: here is where all the IO code is stored. The Source folder has a number of subfolders each containing a different part of the code base. I'll document the inner structure of the folders in later sections, but here is a summary: - Brokers: base folder for all the persistence brokers (one subfolder each). - Core: the core run time stuff, or the heart of IO. - Design: the design-time companion (Model Explorer, etc.). - ObjectFoundry: ModelMaker integration expert/add-in. - Tests: holds the IO automated unit test infrastructure and the actual test code. The Source\Brokers folder ------------------------- Here we have a subfolder for each supported broker. A broker is a means for IO to use as storage a particular database engine through a particular middleware. There are two main kinds of IO object brokers: dataset-based and SQL-based; the latter offer better performance and additional features (like external storage) when you use a SQL-enabled database engine. Here is a list of the currently supported brokers: ADO: for MS Access (table-based) and MS SQL Server (SQL-based) through ADO/OLEDB. Makes use of the Delphi support for ADO (ADOExpress/dbGo). ADS: a dataset-based broker for Advantage Database Server. Makes use of the ADS library for Delphi (commercial - not available out of the box). BDE: a dataset-based broker that uses the Borland Database Engine. Although it might work with SQL databases, its use is highly discouraged for other than the Paradox engine. DBISAM: a dataset-based broker for the DBISAM database and Delphi components (commercial - not available out of the box). DBX: a SQL-based broker to use Borland dbExpress (dbX). Available out of the box in Delphi 6 and Delphi 7. FlashFiler: a dataset-based broker to use the open source (formerly TurboPower) FlashFiler database components. Not available out of the box; still available (although AFAIK no longer actively maintained) through SourceForge. IBX: a SQL-based broker for the open source Delphi IBX components (for InterBase and, if you're daring, Firebird). Generally requires the latest IBX update. IBX is available out of the box, updates from Borland CodeCentral. NexusDb & NexusDbSQL: dataset-based and SQL-based version of the NexusDb (commercial, not available out of the box) broker. AFAIU the two might be merged into a single broker in the future. UIB: a SQL-based broker for the high-performance open source UIB (Unified InterBase) components, good for both InterBase and Firebird and part of the JVCL. Not available out of the box. XML: a lightweight XML-based broker which uses plain XML files as storage. Currently it does not support filtering. Template: an example do-nothing dataset-based broker to use as template to build your own. My own advice, if you want to develop a new broker, is to rather clone & modify a real (possibly similar) broker than starting from the template. Each broker's subfolder contains the common source files plus a subfolder for each supported platform (D5, D6, D7, K3...). This subfolder contains the package source files plus any additional platform specific files. Not all brokers are supported on all platforms. If a platform is missing, the reason might be one of these: - Not applicable (for example, the DBX broker does not exist in D5 because dbExpress itself is a D6+ thing). - Missing maintainer: we haven't found anyone to maintain and keep the broker up-to-date on that particular platform. This is where you can help! Have a look at the Docs\Maintainers.html list to see what holes we have currently. The Source\Core folder ---------------------- This is the core (IOCore.dpk) of InstantObjects; it is used by all the brokers and by the design time stuff. The subfolders here have the same meaning as those in the brokers folders. The Source\Design folder ------------------------ This is where the IO design time stuff (DclIOCore.dpk) lives. The subfolders here have the same meaning as those in the brokers folders. The Source\ObjectFoundry folder ------------------------------- ObjectFoundry is a tool that joins InstantObjects and ModelMaker. See the OF_readme.txt file to know more. The Source\Tests folder ----------------------- The IO test infrastructure makes use of the open source ubmock unit test framework (from our own Uberto Barbini). This folder contains the IO specific unit test stuff. Currently the unit testing effort has just started, so we have just a handful of tests. Additions (in the form of new tests) are very welcome. |
From: Steven M. <sr...@us...> - 2005-02-21 06:40:28
|
Update of /cvsroot/instantobjects/Source/ObjectFoundry In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8604 Modified Files: OFClasses.pas Log Message: Updates to integrate external storage unification changes. Index: OFClasses.pas =================================================================== RCS file: /cvsroot/instantobjects/Source/ObjectFoundry/OFClasses.pas,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** OFClasses.pas 17 Nov 2004 20:59:50 -0000 1.3 --- OFClasses.pas 21 Feb 2005 06:40:17 -0000 1.4 *************** *** 261,270 **** Prop.V9Visibility := TV9Visibility(Visibility); // SRM - 18 Sep 2004 TaggedStrings['StorageName'] := StorageName; - // begin SRM 30 Sep 2004 // External part(s) options ! TaggedStrings['ExternalStoredName'] := ExternalStoredName; ! TaggedStrings['ExternalLinkedName'] := ExternalLinkedName; ! TaggedIntegers['IsExternal'] := Ord(IsExternal); ! // end SRM 30 Sep 2004 TaggedIntegers['Size'] := Metadata.Size; TaggedBooleans['IsDefault'] := IsDefault; --- 261,268 ---- Prop.V9Visibility := TV9Visibility(Visibility); // SRM - 18 Sep 2004 TaggedStrings['StorageName'] := StorageName; // External part(s) options ! TaggedStrings['ExternalStorageName'] := ExternalStorageName; ! TaggedIntegers['StorageKind'] := Ord(StorageKind); ! TaggedIntegers['Size'] := Metadata.Size; TaggedBooleans['IsDefault'] := IsDefault; *************** *** 444,453 **** ReadOnly := Prop.WriteAccess = rwNone; StorageName := TaggedStrings['StorageName']; ! // begin SRM 30 Sep 2004 // External part(s) options ! ExternalStoredName := TaggedStrings['ExternalStoredName']; ! ExternalLinkedName := TaggedStrings['ExternalLinkedName']; ! IsExternal := TInstantContainerIsExternal(TaggedIntegers['IsExternal']); ! // end SRM 30 Sep 2004 IsDefault := TaggedBooleans['IsDefault']; IsIndexed := TaggedBooleans['IsIndexed']; --- 442,450 ---- ReadOnly := Prop.WriteAccess = rwNone; StorageName := TaggedStrings['StorageName']; ! // External part(s) options ! ExternalStorageName := TaggedStrings['ExternalStorageName']; ! StorageKind := TInstantStorageKind(TaggedIntegers['StorageKind']); ! IsDefault := TaggedBooleans['IsDefault']; IsIndexed := TaggedBooleans['IsIndexed']; |
From: Steven M. <sr...@us...> - 2005-02-21 06:37:41
|
Update of /cvsroot/instantobjects/Source/Design In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7935 Modified Files: InstantAttributeEditor.pas Log Message: Further updates since external storage unification changes. Still needs further minor update to improve user experience for ObjectFoundry. Index: InstantAttributeEditor.pas =================================================================== RCS file: /cvsroot/instantobjects/Source/Design/InstantAttributeEditor.pas,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** InstantAttributeEditor.pas 18 Feb 2005 14:49:38 -0000 1.11 --- InstantAttributeEditor.pas 21 Feb 2005 06:37:31 -0000 1.12 *************** *** 117,121 **** FModel: TInstantCodeModel; FOnLoadClasses: TInstantStringsEvent; ! FOnLoadClassAttributes: TInstantAttrStringsEvent; function GetSubject: TInstantCodeAttribute; procedure SetSubject(const Value: TInstantCodeAttribute); --- 117,121 ---- FModel: TInstantCodeModel; FOnLoadClasses: TInstantStringsEvent; ! FOnLoadClassAttributes: TInstantAttrStringsEvent; function GetSubject: TInstantCodeAttribute; procedure SetSubject(const Value: TInstantCodeAttribute); *************** *** 430,434 **** Delete(Name, 1, Length(Prefix)); Value := Name; ! end end; --- 430,434 ---- Delete(Name, 1, Length(Prefix)); Value := Name; ! end; end; *************** *** 517,523 **** EnableCtrl(StorageNameEdit, not IsExternal or (Subject.AttributeType = atPart)); ! EnableCtrl(ExternalStorageNameLabel, IsExternal and (Subject.StorageKind = skExternal) and not (Subject.AttributeType = atPart)); ! EnableCtrl(ExternalStorageNameEdit, IsExternal and (Subject.StorageKind = skExternal) and not (Subject.AttributeType = atPart)); --- 517,523 ---- EnableCtrl(StorageNameEdit, not IsExternal or (Subject.AttributeType = atPart)); ! EnableCtrl(ExternalStorageNameLabel, IsExternal and not (Subject.AttributeType = atPart)); ! EnableCtrl(ExternalStorageNameEdit, IsExternal and not (Subject.AttributeType = atPart)); *************** *** 534,543 **** begin with StorageKindEdit do ! SubjectExposer.AssignFieldValue(Field, Text); UpdateControls; end; procedure TInstantAttributeEditorForm.ExternalStorageNameEditChange(Sender: TObject); begin UpdateControls; end; --- 534,548 ---- begin with StorageKindEdit do ! if Text <> '' then ! SubjectExposer.AssignFieldValue(Field, Text); UpdateControls; + ComputeExternalStorageName; end; procedure TInstantAttributeEditorForm.ExternalStorageNameEditChange(Sender: TObject); begin + with ExternalStorageNameEdit do + if Text <> '' then + SubjectExposer.AssignFieldValue(Field, Text); UpdateControls; end; *************** *** 557,561 **** inherited; UpdateControls; - ComputeExternalStorageName; end; --- 562,565 ---- *************** *** 564,571 **** function GetClassStorageName: string; begin ! if Subject.Metadata.ClassMetadata.StorageName <> '' then ! Result := Subject.Metadata.ClassMetadata.StorageName ! else ! Result := Subject.Metadata.ClassMetadata.Name; end; --- 568,586 ---- function GetClassStorageName: string; begin ! if Assigned(FModel) then ! begin ! if Subject.Metadata.ClassMetadata.StorageName <> '' then ! Result := Subject.Metadata.ClassMetadata.StorageName ! else begin ! Result := Subject.Metadata.ClassMetadata.Name; ! // Remove the 'T' from classname ! if (Length(Result) > 1) and (Result[1] = 'T') then ! Delete(Result, 1, 1); ! end; ! end ! else begin ! // ToDo: Fix this up for ObjectFoundry. ! Result := ''; ! end; end; *************** *** 579,592 **** begin - { if ExternalStorageNameEdit.Enabled then - begin ExternalStorageNameEdit.Text := Format('%s_%s', ! [GetClassStorageName(), GetStorageName()]); ! end else ExternalStorageNameEdit.Text := ''; ! } end; end. --- 594,615 ---- begin if ExternalStorageNameEdit.Enabled then ExternalStorageNameEdit.Text := Format('%s_%s', ! [GetClassStorageName(), GetStorageName()]) else ExternalStorageNameEdit.Text := ''; ! end; end. + + + + + + + + + + + |
From: Steven M. <sr...@us...> - 2005-02-21 06:33:21
|
Update of /cvsroot/instantobjects/Source/Core In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7135 Modified Files: InstantCode.pas Log Message: Bug fix: The Count property item was being deleted twice in TInstantCodeAttributeTailor.Apply. Index: InstantCode.pas =================================================================== RCS file: /cvsroot/instantobjects/Source/Core/InstantCode.pas,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** InstantCode.pas 18 Feb 2005 14:27:04 -0000 1.10 --- InstantCode.pas 21 Feb 2005 06:33:12 -0000 1.11 *************** *** 3440,3444 **** procedure TInstantCodeAttributeTailor.DeleteMethods; begin - DeleteItem(FCountProp); DeleteItem(FAddMethod); DeleteItem(FClearMethod); --- 3440,3443 ---- *************** *** 8550,8551 **** --- 8549,8555 ---- end. + + + + + |
Update of /cvsroot/instantobjects/Source/Tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9495 Added Files: InstantMock.pas Model.pas TestIO.cfg TestIO.dpr TestIO.mdx TestIO.res TestMockBroker.pas TestMockConnector.pas Log Message: Added Test --- NEW FILE: TestMockBroker.pas --- unit TestMockBroker; interface uses Classes, SysUtils, InstantPersistence, fpcunit, testregistry, InstantMock, UbMockObject, Model; type TTestMockBroker = class(TTestCase) private protected FConn: TInstantMockConnector; procedure SetUp; override; procedure TearDown; override; published procedure TestModelMdx; procedure TestGetBroker; procedure TestBuildDatabase; procedure TestStoreAndRetrieveAddress; procedure TestStoreAndRetrieveContact; end; implementation { TTestMockBroker } procedure TTestMockBroker.TestModelMdx; begin InstantModel.LoadFromFile(ChangeFileExt(ParamStr(0),'.mdx')); AssertNotNull(InstantModel.ClassMetadatas.Find('TContact')); end; procedure TTestMockBroker.TestGetBroker; var brok: TInstantMockBroker; begin brok := (Fconn.Broker as TInstantMockBroker); AssertNotNull(brok); AssertEquals(brok.ClassType, TInstantMockBroker); brok.MockManager.StartSetUp; brok.MockManager.EndSetUp; Fconn.BuildDatabase(InstantModel); brok.MockManager.Verify; end; procedure TTestMockBroker.TestBuildDatabase; var brok: TInstantMockBroker; begin InstantModel.LoadFromFile(ChangeFileExt(ParamStr(0),'.mdx')); brok := Fconn.Broker as TInstantMockBroker; brok.MockManager.StartSetUp; brok.MockManager.EndSetUp; Fconn.BuildDatabase(InstantModel); brok.MockManager.Verify; end; procedure TTestMockBroker.TestStoreAndRetrieveAddress; var a: TAddress; old_id: string; brok: TInstantMockBroker; begin InstantModel.LoadFromFile(ChangeFileExt(ParamStr(0),'.mdx')); Fconn.IsDefault := True; Fconn.StartTransaction; brok := Fconn.Broker as TInstantMockBroker; brok.MockManager.StartSetUp; a := TAddress.Create; try a.City := 'Milan'; a.Store(); old_id := a.id; finally a.Free; end; brok.MockManager.EndSetUp; brok.MockManager.AddExpectation('InternalStoreObject ' + old_id); brok.MockManager.Verify; Fconn.CommitTransaction; brok.MockManager.StartSetUp; a := TAddress.Create; try a.Retrieve(old_id); finally a.Free; end; brok.MockManager.EndSetUp; brok.MockManager.AddExpectation('InternalRetrieveObject ' + old_id); brok.MockManager.Verify; end; procedure TTestMockBroker.TestStoreAndRetrieveContact; var c: TContact; old_id: string; brok: TInstantMockBroker; begin InstantModel.LoadFromFile(ChangeFileExt(ParamStr(0),'.mdx')); Fconn.IsDefault := True; brok := Fconn.Broker as TInstantMockBroker; brok.MockManager.StartSetUp; c := TContact.Create; try c.Name := 'Mike'; c.Address.City := 'Milan'; c.Store(); old_id := c.id; finally c.Free; end; brok.MockManager.EndSetUp; brok.MockManager.AddExpectation('InternalStoreObject ' + old_id); brok.MockManager.Verify; brok.MockManager.StartSetUp; c := TContact.Create; try c.Retrieve(old_id); finally c.Free; end; brok.MockManager.EndSetUp; brok.MockManager.AddExpectation('InternalRetrieveObject ' + old_id); brok.MockManager.Verify; end; procedure TTestMockBroker.SetUp; begin inherited; FConn := TInstantMockConnector.Create(nil); end; procedure TTestMockBroker.TearDown; begin FConn.Free; inherited; end; initialization RegisterTests([TTestMockBroker]); end. --- NEW FILE: TestIO.cfg --- -$A8 -$B- -$C+ -$D+ -$E- -$F- -$G+ -$H+ -$I+ -$J- -$K- -$L+ -$M- -$N+ -$O+ -$P+ -$Q- -$R- -$S- -$T- -$U- -$V+ -$W- -$X+ -$YD -$Z1 -cg -AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; -H+ -W+ -M -$M16384,1048576 -K$00400000 -LE"c:\programmi\borland\delphi7\Projects\Bpl" -LN"c:\programmi\borland\delphi7\Projects\Bpl" -w-UNSAFE_TYPE -w-UNSAFE_CODE -w-UNSAFE_CAST --- NEW FILE: Model.pas --- (* * PrimerCross demo: * Model.pas with "external storage" of Part and Parts * *) unit Model; interface uses InstantPersistence; type TAddress = class; TCategory = class; TCompany = class; TContact = class; TContactFilter = class; TCountry = class; TEmail = class; TPerson = class; TPhone = class; TAddress = class(TInstantObject) { IOMETADATA stored; City: String(30) index; Country: Reference(TCountry); State: String(4); Street: Memo; Zip: String(10); } _City: TInstantString; _Country: TInstantReference; _State: TInstantString; _Street: TInstantMemo; _Zip: TInstantString; private function GetCity: string; function GetCountry: TCountry; function GetState: string; function GetStreet: string; function GetZip: string; procedure SetCity(const Value: string); procedure SetCountry(Value: TCountry); procedure SetState(const Value: string); procedure SetStreet(const Value: string); procedure SetZip(const Value: string); published property City: string read GetCity write SetCity; property Country: TCountry read GetCountry write SetCountry; property State: string read GetState write SetState; property Street: string read GetStreet write SetStreet; property Zip: string read GetZip write SetZip; end; TCountry = class(TInstantObject) { IOMETADATA stored; Name: String(30); } _Name: TInstantString; private function GetName: string; procedure SetName(const Value: string); protected procedure BeforeStore; override; function GetCaption: string; override; published property Id; property Name: string read GetName write SetName; end; TPhone = class(TInstantObject) { IOMETADATA stored; Name: String(20); Number: String(20) mask '(000) 000-0000;0;_'; } _Name: TInstantString; _Number: TInstantString; private function GetName: string; function GetNumber: string; procedure SetName(const Value: string); procedure SetNumber(const Value: string); published property Name: string read GetName write SetName; property Number: string read GetNumber write SetNumber; end; TEmail = class(TInstantObject) { IOMETADATA stored; Address: String(100); } _Address: TInstantString; private function GetAddress: string; procedure SetAddress(const Value: string); published property Address: string read GetAddress write SetAddress; end; TCategory = class(TInstantObject) { IOMETADATA stored; Name: String(30); } _Name: TInstantString; private function GetName: string; procedure SetName(const Value: string); protected function GetCaption: string; override; published property Name: string read GetName write SetName; end; TContact = class(TInstantObject) { IOMETADATA stored; Address: Part(TAddress) externalstored 'Contact_Address'; Category: Reference(TCategory); City: String(30) index; Name: String(50) index; Phones: Parts(TPhone) externalstored 'Contact_Phone'; } _Address: TInstantPart; _Category: TInstantReference; _City: TInstantString; _Name: TInstantString; _Phones: TInstantParts; private function GetAddress: TAddress; function GetCategory: TCategory; function GetCity: string; function GetMainPhoneNumber: string; function GetName: string; function GetPhoneCount: Integer; function GetPhones(Index: Integer): TPhone; procedure SetAddress(Value: TAddress); procedure SetCategory(Value: TCategory); procedure SetCity(const Value: string); procedure SetMainPhoneNumber(const Value: string); procedure SetName(const Value: string); procedure SetPhones(Index: Integer; Value: TPhone); protected procedure AfterCreate; override; procedure BeforeStore; override; function GetCaption: string; override; public function AddPhone(Phone: TPhone): Integer; procedure ClearPhones; procedure DeletePhone(Index: Integer); function IndexOfPhone(Phone: TPhone): Integer; procedure InsertPhone(Index: Integer; Phone: TPhone); function RemovePhone(Phone: TPhone): Integer; property PhoneCount: Integer read GetPhoneCount; property Phones[Index: Integer]: TPhone read GetPhones write SetPhones; published property Address: TAddress read GetAddress write SetAddress; property Category: TCategory read GetCategory write SetCategory; property City: string read GetCity write SetCity; property MainPhoneNumber: string read GetMainPhoneNumber write SetMainPhoneNumber; property Name: string read GetName write SetName; end; TContactFilter = class(TContact) private FIsDynamic: Boolean; function GetIsEmpty: Boolean; public function Matches(Contact: TContact): Boolean; published property IsDynamic: Boolean read FIsDynamic write FIsDynamic; property IsEmpty: Boolean read GetIsEmpty; end; TPerson = class(TContact) { IOMETADATA stored; BirthDate: DateTime; Emails: Parts(TEmail) externalstored 'Person_Email'; Employer: Reference(TCompany); Picture: Blob; Salary: Currency; } _BirthDate: TInstantDateTime; _Emails: TInstantParts; _Employer: TInstantReference; _Picture: TInstantGraphic; _Salary: TInstantCurrency; private function GetBirthDate: TDateTime; function GetEmailCount: Integer; function GetEmails(Index: Integer): TEmail; function GetEmployer: TCompany; function GetMainEmailAddress: string; function GetPicture: string; function GetSalary: Currency; procedure SetBirthDate(Value: TDateTime); procedure SetEmails(Index: Integer; Value: TEmail); procedure SetMainEmailAddress(const Value: string); procedure SetPicture(const Value: string); procedure SetSalary(Value: Currency); protected procedure BeforeDispose; override; public function AddEmail(Email: TEmail): Integer; procedure ClearEmails; procedure DeleteEmail(Index: Integer); procedure EmployBy(NewEmployer: TCompany); function IndexOfEmail(Email: TEmail): Integer; procedure InsertEmail(Index: Integer; Email: TEmail); function RemoveEmail(Email: TEmail): Integer; property EmailCount: Integer read GetEmailCount; property Emails[Index: Integer]: TEmail read GetEmails write SetEmails; published property BirthDate: TDateTime read GetBirthDate write SetBirthDate; property Employer: TCompany read GetEmployer; property MainEmailAddress: string read GetMainEmailAddress write SetMainEmailAddress; property Picture: string read GetPicture write SetPicture; property Salary: Currency read GetSalary write SetSalary; end; TCompany = class(TContact) { IOMETADATA stored; Employees: References(TPerson) externalstored 'Company_Employee'; } _Employees: TInstantReferences; private function GetEmployeeCount: Integer; function GetEmployees(Index: Integer): TPerson; public function AddEmployee(Employee: TPerson): Integer; procedure ClearEmployees; procedure DeleteEmployee(Index: Integer); function IndexOfEmployee(Employee: TPerson): Integer; procedure InsertEmployee(Index: Integer; Employee: TPerson); function RemoveEmployee(Employee: TPerson): Integer; property EmployeeCount: Integer read GetEmployeeCount; property Employees[Index: Integer]: TPerson read GetEmployees; end; implementation uses SysUtils, InstantUtils; { TAddress } function TAddress.GetCity: string; begin Result := _City.Value; end; function TAddress.GetCountry: TCountry; begin Result := _Country.Value as TCountry; end; function TAddress.GetState: string; begin Result := _State.Value; end; function TAddress.GetStreet: string; begin Result := _Street.Value; end; function TAddress.GetZip: string; begin Result := _Zip.Value; end; procedure TAddress.SetCity(const Value: string); begin _City.Value := Value; end; procedure TAddress.SetCountry(Value: TCountry); begin _Country.Value := Value; end; procedure TAddress.SetState(const Value: string); begin _State.Value := Value; end; procedure TAddress.SetStreet(const Value: string); begin _Street.Value := Value; end; procedure TAddress.SetZip(const Value: string); begin _Zip.Value := Value; end; { TCountry } procedure TCountry.BeforeStore; begin if Id = '' then raise Exception.Create('Country ID missing'); inherited; end; function TCountry.GetCaption: string; begin Result := Name; end; function TCountry.GetName: string; begin Result := _Name.Value; end; procedure TCountry.SetName(const Value: string); begin _Name.Value := Value; end; { TPerson } function TPerson.AddEmail(Email: TEmail): Integer; begin Result := _Emails.Add(Email); end; procedure TPerson.BeforeDispose; begin inherited; EmployBy(nil); end; procedure TPerson.ClearEmails; begin _Emails.Clear; end; procedure TPerson.DeleteEmail(Index: Integer); begin _Emails.Delete(Index); end; procedure TPerson.EmployBy(NewEmployer: TCompany); procedure AddToEmployer(AEmployer: TCompany); begin if Assigned(AEmployer) then AEmployer.AddEmployee(Self); end; procedure RemoveFromEmployer(AEmployer: TCompany); begin if Assigned(AEmployer) then AEmployer.RemoveEmployee(Self); end; procedure StoreEmployer(AEmployer: TCompany); begin if Assigned(AEmployer) then AEmployer.Store; end; var OldEmployer: TCompany; begin OldEmployer := Employer; AddRef; try Connector.StartTransaction; try AddToEmployer(NewEmployer); try StoreEmployer(NewEmployer); RemoveFromEmployer(OldEmployer); try StoreEmployer(OldEmployer); _Employer.Value := NewEmployer; try Store; Connector.CommitTransaction; except _Employer.Value := OldEmployer; raise; end; except AddToEmployer(OldEmployer); raise; end; except RemoveFromEmployer(NewEmployer); raise; end; except Connector.RollbackTransaction; raise; end; finally Free; end; end; function TPerson.GetBirthDate: TDateTime; begin Result := _BirthDate.Value; end; function TPerson.GetEmailCount: Integer; begin Result := _Emails.Count end; function TPerson.GetEmails(Index: Integer): TEmail; begin Result := _Emails[Index] as TEmail; end; function TPerson.GetEmployer: TCompany; begin Result := _Employer.Value as TCompany; end; function TPerson.GetMainEmailAddress: string; begin if EmailCount > 0 then Result := Emails[0].Address else Result := ''; end; function TPerson.GetPicture: string; begin Result := _Picture.Value; end; function TPerson.GetSalary: Currency; begin Result := _Salary.Value; end; function TPerson.IndexOfEmail(Email: TEmail): Integer; begin Result := _Emails.IndexOf(Email); end; procedure TPerson.InsertEmail(Index: Integer; Email: TEmail); begin _Emails.Insert(Index, Email); end; function TPerson.RemoveEmail(Email: TEmail): Integer; begin Result := _Emails.Remove(Email); end; procedure TPerson.SetBirthDate(Value: TDateTime); begin _BirthDate.Value := Value; end; procedure TPerson.SetEmails(Index: Integer; Value: TEmail); begin _Emails[Index] := Value; end; procedure TPerson.SetMainEmailAddress(const Value: string); var Email: TEmail; begin if Value <> MainEmailAddress then begin if EmailCount = 0 then begin Email := TEmail.Create; AddEmail(Email); end else Email := Emails[0]; Email.Address := Value; end; end; procedure TPerson.SetPicture(const Value: string); begin _Picture.Value := Value; end; { TPhone } procedure TPerson.SetSalary(Value: Currency); begin _Salary.Value := Value; end; function TPhone.GetName: string; begin Result := _Name.Value; end; function TPhone.GetNumber: string; begin Result := _Number.Value; end; procedure TPhone.SetName(const Value: string); begin _Name.Value := Value; end; procedure TPhone.SetNumber(const Value: string); begin _Number.Value := Value; end; { TEmail } function TEmail.GetAddress: string; begin Result := _Address.Value; end; procedure TEmail.SetAddress(const Value: string); begin _Address.Value := Value; end; { TCategory } function TCategory.GetCaption: string; begin Result := Name; end; function TCategory.GetName: string; begin Result := _Name.Value; end; procedure TCategory.SetName(const Value: string); begin _Name.Value := Value; end; { TContact } function TContact.AddPhone(Phone: TPhone): Integer; begin Result := _Phones.Add(Phone); end; procedure TContact.AfterCreate; begin inherited; Id := InstantGenerateId; _Category.ReferenceObject(TCategory, 'CAT000'); end; procedure TContact.BeforeStore; begin if Name = '' then raise Exception.Create('Contact name required'); inherited; City := Address.City; end; procedure TContact.ClearPhones; begin _Phones.Clear; end; procedure TContact.DeletePhone(Index: Integer); begin _Phones.Delete(Index); end; function TContact.GetAddress: TAddress; begin Result := _Address.Value as TAddress; end; function TContact.GetCaption: string; begin Result := Name; end; function TContact.GetCategory: TCategory; begin Result := _Category.Value as TCategory; end; function TContact.GetCity: string; begin Result := _City.Value; end; function TContact.GetMainPhoneNumber: string; begin if PhoneCount > 0 then Result := Phones[0].Number else Result := ''; end; function TContact.GetName: string; begin Result := _Name.Value; end; function TContact.GetPhoneCount: Integer; begin Result := _Phones.Count end; function TContact.GetPhones(Index: Integer): TPhone; begin Result := _Phones[Index] as TPhone; end; function TContact.IndexOfPhone(Phone: TPhone): Integer; begin Result := _Phones.IndexOf(Phone); end; procedure TContact.InsertPhone(Index: Integer; Phone: TPhone); begin _Phones.Insert(Index, Phone); end; function TContact.RemovePhone(Phone: TPhone): Integer; begin Result := _Phones.Remove(Phone); end; procedure TContact.SetAddress(Value: TAddress); begin _Address.Value := Value; end; procedure TContact.SetCategory(Value: TCategory); begin _Category.Value := Value; end; procedure TContact.SetCity(const Value: string); begin _City.Value := Value; end; procedure TContact.SetMainPhoneNumber(const Value: string); var Phone: TPhone; begin if Value <> MainPhoneNumber then begin if PhoneCount = 0 then begin Phone := TPhone.Create; AddPhone(Phone); Phone.Name := 'Main'; end else Phone := Phones[0]; Phone.Number := Value; end; end; procedure TContact.SetName(const Value: string); begin _Name.Value := Value; end; procedure TContact.SetPhones(Index: Integer; Value: TPhone); begin _Phones[Index] := Value; end; { TContactFilter } function TContactFilter.GetIsEmpty: Boolean; begin Result := (Name = '') and (Address.Street = '') and (Address.City = '') and (Address.Zip = '') and (Address.State = '') and (Address.Country = nil) and (Category = nil); end; function TContactFilter.Matches(Contact: TContact): Boolean; function MatchStr(const Str1, Str2: string): Boolean; begin Result := (Str1 = '') or (Pos(UpperCase(Str1), UpperCase(Str2)) > 0); end; function MatchObj(Obj1, Obj2: TObject): Boolean; begin Result := not Assigned(Obj1) or (Obj1 = Obj2); end; begin Result := Assigned(Contact) and MatchStr(Name, Contact.Name) and MatchStr(Address.Street, Contact.Address.Street) and MatchStr(Address.City, Contact.Address.City) and MatchStr(Address.Zip, Contact.Address.Zip) and MatchStr(Address.State, Contact.Address.State) and MatchObj(Address.Country, Contact.Address.Country) and MatchObj(Category, Contact.Category); end; { TCompany } function TCompany.AddEmployee(Employee: TPerson): Integer; begin Result := _Employees.Add(Employee) end; procedure TCompany.ClearEmployees; begin _Employees.Clear; end; procedure TCompany.DeleteEmployee(Index: Integer); begin _Employees.Delete(Index); end; function TCompany.GetEmployeeCount: Integer; begin Result := _Employees.Count end; function TCompany.GetEmployees(Index: Integer): TPerson; begin Result := _Employees[Index] as TPerson; end; function TCompany.IndexOfEmployee(Employee: TPerson): Integer; begin Result := _Employees.IndexOf(Employee); end; procedure TCompany.InsertEmployee(Index: Integer; Employee: TPerson); begin _Employees.Insert(Index, Employee); end; function TCompany.RemoveEmployee(Employee: TPerson): Integer; begin Result := _Employees.Remove(Employee); end; initialization InstantRegisterClasses([ TAddress, TCategory, TCompany, TContact, TContactFilter, TCountry, TEmail, TPerson, TPhone ]); end. --- NEW FILE: TestIO.res --- (This appears to be a binary file; contents omitted.) --- NEW FILE: TestMockConnector.pas --- unit TestMockConnector; interface uses Classes, SysUtils, InstantPersistence, fpcunit, testregistry, InstantMock, UbMockObject; type TTestMockConnector = class(TTestCase) published procedure TestBuildDatabase; procedure TestConnectDisconnect; procedure TestTransaction; procedure TestDefault; end; implementation { TTestMockConnector } procedure TTestMockConnector.TestBuildDatabase; var conn: TInstantMockConnector; begin InstantModel.LoadFromFile(ChangeFileExt(ParamStr(0),'.mdx')); conn := TInstantMockConnector.Create(nil); try AssertNotNull(conn); conn.MockManager.AddExpectation('InternalConnect'); conn.MockManager.AddExpectation('InternalCreateScheme'); conn.MockManager.AddExpectation('CreateBroker'); conn.MockManager.AddExpectation('InternalDisconnect'); conn.MockManager.EndSetUp; AssertEquals(4, conn.MockManager.UncoveredExpectations); conn.BuildDatabase(InstantModel); conn.MockManager.Verify; finally conn.Free; end; end; procedure TTestMockConnector.TestConnectDisconnect; var conn: TInstantMockConnector; begin conn := TInstantMockConnector.Create(nil); try conn.BuildDatabase(InstantModel); conn.MockManager.StartSetUp; conn.MockManager.AddExpectation('InternalConnect'); conn.MockManager.AddExpectation('InternalDisconnect'); conn.MockManager.EndSetUp; conn.Connect; conn.Disconnect; conn.MockManager.Verify; finally conn.Free; end; end; procedure TTestMockConnector.TestTransaction; var conn: TInstantMockConnector; begin InstantModel.LoadFromFile(ChangeFileExt(ParamStr(0),'.mdx')); conn := TInstantMockConnector.Create(nil); try conn.BuildDatabase(InstantModel); conn.Connect; conn.MockManager.StartSetUp; //reset expectations conn.MockManager.AddExpectation('InternalStartTransaction'); conn.MockManager.AddExpectation('InternalCommitTransaction'); conn.MockManager.EndSetUp; conn.StartTransaction; AssertTrue(conn.InTransaction); conn.CommitTransaction; AssertFalse(conn.InTransaction); conn.MockManager.Verify; conn.Disconnect; finally conn.Free; end; end; procedure TTestMockConnector.TestDefault; var conn: TInstantMockConnector; begin conn := TInstantMockConnector.Create(nil); try conn.IsDefault := True; AssertSame(InstantDefaultConnector, conn); finally conn.Free; end; end; initialization RegisterTests([TTestMockConnector]); end. --- NEW FILE: TestIO.mdx --- <TInstantClassMetadatas><TInstantClassMetadata><Name>TAddress</Name><Persistence>peStored</Persistence><AttributeMetadatas><TInstantAttributeMetadatas><TInstantAttributeMetadata><Name>City</Name><AttributeType>atString</AttributeType><IsIndexed>TRUE</IsIndexed><IsRequired>FALSE</IsRequired><Size>30</Size></TInstantAttributeMetadata><TInstantAttributeMetadata><Name>Country</Name><AttributeType>atReference</AttributeType><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired><ObjectClassName>TCountry</ObjectClassName></TInstantAttributeMetadata><TInstantAttributeMetadata><Name>State</Name><AttributeType>atString</AttributeType><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired><Size>4</Size></TInstantAttributeMetadata><TInstantAttributeMetadata><Name>Street</Name><AttributeType>atMemo</AttributeType><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired></TInstantAttributeMetadata><TInstantAttributeMetadata><Name>Zip</Name><AttributeType>atString</AttributeType><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired><Size>10</Size></TInstantAttributeMetadata></TInstantAttributeMetadatas></AttributeMetadatas></TInstantClassMetadata><TInstantClassMetadata><Name>TCountry</Name><Persistence>peStored</Persistence><AttributeMetadatas><TInstantAttributeMetadatas><TInstantAttributeMetadata><Name>Name</Name><AttributeType>atString</AttributeType><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired><Size>30</Size></TInstantAttributeMetadata></TInstantAttributeMetadatas></AttributeMetadatas></TInstantClassMetadata><TInstantClassMetadata><Name>TPhone</Name><Persistence>peStored</Persistence><AttributeMetadatas><TInstantAttributeMetadatas><TInstantAttributeMetadata><Name>Name</Name><AttributeType>atString</AttributeType><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired><Size>20</Size></TInstantAttributeMetadata><TInstantAttributeMetadata><Name>Number</Name><AttributeType>atString</AttributeType><EditMask>(000) 000-0000;0;_</EditMask><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired><Size>20</Size></TInstantAttributeMetadata></TInstantAttributeMetadatas></AttributeMetadatas></TInstantClassMetadata><TInstantClassMetadata><Name>TEmail</Name><Persistence>peStored</Persistence><AttributeMetadatas><TInstantAttributeMetadatas><TInstantAttributeMetadata><Name>Address</Name><AttributeType>atString</AttributeType><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired><Size>100</Size></TInstantAttributeMetadata></TInstantAttributeMetadatas></AttributeMetadatas></TInstantClassMetadata><TInstantClassMetadata><Name>TCategory</Name><Persistence>peStored</Persistence><AttributeMetadatas><TInstantAttributeMetadatas><TInstantAttributeMetadata><Name>Name</Name><AttributeType>atString</AttributeType><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired><Size>30</Size></TInstantAttributeMetadata></TInstantAttributeMetadatas></AttributeMetadatas></TInstantClassMetadata><TInstantClassMetadata><Name>TContact</Name><Persistence>peStored</Persistence><AttributeMetadatas><TInstantAttributeMetadatas><TInstantAttributeMetadata><Name>Address</Name><AttributeType>atPart</AttributeType><ExternalStoredName>Contact_Address</ExternalStoredName><IsExternal>ceStored</IsExternal><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired><ObjectClassName>TAddress</ObjectClassName></TInstantAttributeMetadata><TInstantAttributeMetadata><Name>Category</Name><AttributeType>atReference</AttributeType><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired><ObjectClassName>TCategory</ObjectClassName></TInstantAttributeMetadata><TInstantAttributeMetadata><Name>City</Name><AttributeType>atString</AttributeType><IsIndexed>TRUE</IsIndexed><IsRequired>FALSE</IsRequired><Size>30</Size></TInstantAttributeMetadata><TInstantAttributeMetadata><Name>Name</Name><AttributeType>atString</AttributeType><IsIndexed>TRUE</IsIndexed><IsRequired>FALSE</IsRequired><Size>50</Size></TInstantAttributeMetadata><TInstantAttributeMetadata><Name>Phones</Name><AttributeType>atParts</AttributeType><ExternalStoredName>Contact_Phone</ExternalStoredName><IsExternal>ceStored</IsExternal><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired><ObjectClassName>TPhone</ObjectClassName></TInstantAttributeMetadata></TInstantAttributeMetadatas></AttributeMetadatas></TInstantClassMetadata><TInstantClassMetadata><Name>TContactFilter</Name><ParentName>TContact</ParentName><Persistence>peEmbedded</Persistence><AttributeMetadatas></AttributeMetadatas></TInstantClassMetadata><TInstantClassMetadata><Name>TPerson</Name><ParentName>TContact</ParentName><Persistence>peStored</Persistence><AttributeMetadatas><TInstantAttributeMetadatas><TInstantAttributeMetadata><Name>BirthDate</Name><AttributeType>atDateTime</AttributeType><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired></TInstantAttributeMetadata><TInstantAttributeMetadata><Name>Emails</Name><AttributeType>atParts</AttributeType><ExternalStoredName>Person_Email</ExternalStoredName><IsExternal>ceStored</IsExternal><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired><ObjectClassName>TEmail</ObjectClassName></TInstantAttributeMetadata><TInstantAttributeMetadata><Name>Employer</Name><AttributeType>atReference</AttributeType><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired><ObjectClassName>TCompany</ObjectClassName></TInstantAttributeMetadata><TInstantAttributeMetadata><Name>Picture</Name><AttributeType>atBlob</AttributeType><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired></TInstantAttributeMetadata><TInstantAttributeMetadata><Name>Salary</Name><AttributeType>atCurrency</AttributeType><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired></TInstantAttributeMetadata></TInstantAttributeMetadatas></AttributeMetadatas></TInstantClassMetadata><TInstantClassMetadata><Name>TCompany</Name><ParentName>TContact</ParentName><Persistence>peStored</Persistence><AttributeMetadatas><TInstantAttributeMetadatas><TInstantAttributeMetadata><Name>Employees</Name><AttributeType>atReferences</AttributeType><ExternalStoredName>Company_Employee</ExternalStoredName><IsExternal>ceStored</IsExternal><IsIndexed>FALSE</IsIndexed><IsRequired>FALSE</IsRequired><ObjectClassName>TPerson</ObjectClassName></TInstantAttributeMetadata></TInstantAttributeMetadatas></AttributeMetadatas></TInstantClassMetadata></TInstantClassMetadatas> --- NEW FILE: InstantMock.pas --- unit InstantMock; interface uses InstantPersistence, Classes, UbMockObject; type TInstantMockConnector = class(TInstantConnector, IUbMockObject) private FMock: TUbMockObject; protected procedure SetMock(const Value: TUbMockObject); function CreateBroker: TInstantBroker; override; procedure InternalConnect; override; function InternalCreateScheme(Model: TInstantModel): TInstantScheme; override; procedure InternalDisconnect; override; procedure InternalStartTransaction; override; procedure InternalCommitTransaction; override; procedure InternalRollbackTransaction; override; public property MockManager: TUbMockObject read FMock write SetMock implements IUbMockObject; class function ConnectionDefClass: TInstantConnectionDefClass; override; constructor Create(AOwner: TComponent); override; destructor Destroy; override; end; TInstantMockConnectionDef = class(TInstantConnectionDef) class function ConnectionTypeName: String; override; class function ConnectorClass: TInstantConnectorClass; override; function Edit: Boolean; override; end; TInstantMockBroker = class(TInstantBroker, IUbMockObject) private FMock: TUbMockObject; procedure SetMock(const Value: TUbMockObject); protected function InternalDisposeObject(AObject: TInstantObject; ConflictAction: TInstantConflictAction): Boolean; override; function InternalRetrieveObject(AObject: TInstantObject; const AObjectId: String; ConflictAction: TInstantConflictAction): Boolean; override; function InternalStoreObject(AObject: TInstantObject; ConflictAction: TInstantConflictAction): Boolean; override; public property MockManager: TUbMockObject read FMock write SetMock implements IUbMockObject; constructor Create(AConnector: TInstantConnector); override; destructor Destroy; override; end; implementation { TMockIConnector } class function TInstantMockConnector.ConnectionDefClass: TInstantConnectionDefClass; begin result := TInstantMockConnectionDef; end; constructor TInstantMockConnector.Create(AOwner: TComponent); begin inherited; FMock := TUbMockObject.Create; end; function TInstantMockConnector.CreateBroker: TInstantBroker; begin FMock.AddExpectation('CreateBroker'); Result := TInstantMockBroker.Create(Self); end; { TInstantMockConnectionDef } class function TInstantMockConnectionDef.ConnectionTypeName: String; begin result := 'Mock'; end; class function TInstantMockConnectionDef.ConnectorClass: TInstantConnectorClass; begin result := TInstantMockConnector; end; function TInstantMockConnectionDef.Edit: Boolean; begin result := True; //boh?? end; { TInstantMockBroker } destructor TInstantMockConnector.Destroy; begin FMock.Free; inherited; end; procedure TInstantMockConnector.InternalCommitTransaction; begin inherited; FMock.AddExpectation('InternalCommitTransaction'); end; procedure TInstantMockConnector.InternalConnect; begin FMock.AddExpectation('InternalConnect'); end; function TInstantMockConnector.InternalCreateScheme( Model: TInstantModel): TInstantScheme; begin FMock.AddExpectation('InternalCreateScheme'); result := TInstantScheme.Create(Model); end; procedure TInstantMockConnector.InternalDisconnect; begin FMock.AddExpectation('InternalDisconnect'); end; procedure TInstantMockBroker.SetMock(const Value: TUbMockObject); begin FMock := Value; end; constructor TInstantMockBroker.Create(AConnector: TInstantConnector); begin inherited; FMock := TUbMockObject.Create; end; destructor TInstantMockBroker.Destroy; begin FMock.Free; inherited; end; { TInstantMockBroker } function TInstantMockBroker.InternalDisposeObject(AObject: TInstantObject; ConflictAction: TInstantConflictAction): Boolean; begin Result := True; FMock.AddExpectation('InternalDisposeObject ' + AObject.Id); end; function TInstantMockBroker.InternalRetrieveObject(AObject: TInstantObject; const AObjectId: String; ConflictAction: TInstantConflictAction): Boolean; begin Result := True; FMock.AddExpectation('InternalRetrieveObject ' + AObjectId); end; function TInstantMockBroker.InternalStoreObject(AObject: TInstantObject; ConflictAction: TInstantConflictAction): Boolean; begin Result := True; FMock.AddExpectation('InternalStoreObject ' + AObject.Id); end; procedure TInstantMockConnector.InternalRollbackTransaction; begin inherited; FMock.AddExpectation('InternalRollbackTransaction'); end; procedure TInstantMockConnector.InternalStartTransaction; begin inherited; FMock.AddExpectation('InternalStartTransaction'); end; procedure TInstantMockConnector.SetMock(const Value: TUbMockObject); begin FMock := Value; end; initialization RegisterClass(TInstantMockConnectionDef); TInstantMockConnector.RegisterClass; finalization TInstantMockConnector.UnregisterClass; end. --- NEW FILE: TestIO.dpr --- program TestIO; uses Forms, TestMockConnector in 'TestMockConnector.pas', guitestrunner {TestRunner}, fpcunit, testregistry, testutils, testreport, InstantMock in 'InstantMock.pas', TestMockBroker in 'TestMockBroker.pas'; {$R *.res} begin Application.Initialize; Application.CreateForm(TTestRunner, TestRunner); Application.Run; end. |
From: uberto b. <ub...@us...> - 2005-02-20 19:26:18
|
Update of /cvsroot/instantobjects/Source/Tests In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9325/Tests Log Message: Directory /cvsroot/instantobjects/Source/Tests added to the repository |
Update of /cvsroot/instantobjects/Source/Brokers/FlashFiler/D5 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24666/Brokers/FlashFiler/D5 Added Files: DclIOff50.cfg DclIOff50.dof DclIOff50.dpk DclIOff50.res ioff50.cfg ioff50.dof ioff50.dpk ioff50.res Log Message: Package Restructure --- NEW FILE: DclIOff50.dpk --- package DclIOff50; {$R *.RES} {$R 'InstantFlashFiler.dcr'} {$ALIGN ON} {$ASSERTIONS ON} {$BOOLEVAL OFF} {$DEBUGINFO ON} {$EXTENDEDSYNTAX ON} {$IMPORTEDDATA ON} {$IOCHECKS ON} {$LOCALSYMBOLS ON} {$LONGSTRINGS ON} {$OPENSTRINGS ON} {$OPTIMIZATION ON} {$OVERFLOWCHECKS OFF} {$RANGECHECKS OFF} {$REFERENCEINFO ON} {$SAFEDIVIDE OFF} {$STACKFRAMES OFF} {$TYPEDADDRESS OFF} {$VARSTRINGCHECKS ON} {$WRITEABLECONST ON} {$MINENUMSIZE 1} {$IMAGEBASE $400000} {$DESCRIPTION 'InstantObjects Flash Filer Design-Time Support (Delphi 5)'} {$DESIGNONLY} {$IMPLICITBUILD ON} requires IOCore, ioff50; contains InstantFFReg in '..\InstantFFReg.pas'; end. --- NEW FILE: DclIOff50.cfg --- -$A+ -$B- -$C+ -$D+ -$E- -$F- -$G+ -$H+ -$I+ -$J+ -$K- -$L+ -$M- -$N+ -$O+ -$P+ -$Q- -$R- -$S- -$T- -$U- -$V+ -$W- -$X+ -$YD -$Z1 -cg -AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; -H- -W- -M -$M16384,1048576 -K$00400000 -LE"c:\borland\delphi5\Projects\Bpl" -LN"c:\borland\delphi5\Projects\Bpl" --- NEW FILE: DclIOff50.res --- (This appears to be a binary file; contents omitted.) --- NEW FILE: ioff50.dpk --- package ioff50; {$R *.RES} {$R '..\InstantFlashFiler.dcr'} {$ALIGN ON} {$ASSERTIONS ON} {$BOOLEVAL OFF} {$DEBUGINFO ON} {$EXTENDEDSYNTAX ON} {$IMPORTEDDATA ON} {$IOCHECKS ON} {$LOCALSYMBOLS ON} {$LONGSTRINGS ON} {$OPENSTRINGS ON} {$OPTIMIZATION ON} {$OVERFLOWCHECKS OFF} {$RANGECHECKS OFF} {$REFERENCEINFO ON} {$SAFEDIVIDE OFF} {$STACKFRAMES OFF} {$TYPEDADDRESS OFF} {$VARSTRINGCHECKS ON} {$WRITEABLECONST ON} {$MINENUMSIZE 1} {$IMAGEBASE $400000} {$DESCRIPTION 'InstantObjects FlashFiler Support'} {$IMPLICITBUILD OFF} requires Vcl50, Vcldb50, Vclx50, ff2_r50, IOCore; contains InstantFlashFilerConnectionDefEdit in '..\InstantFlashFilerConnectionDefEdit.pas' {InstantFlashFilerConnectionDefEditForm}, ffdb_enh in '..\ffdb_enh.pas', InstantFlashFiler in '..\InstantFlashFiler.pas'; end. --- NEW FILE: DclIOff50.dof --- [Compiler] A=1 B=0 C=1 D=1 E=0 F=0 G=1 H=1 I=1 J=1 K=0 L=1 M=0 N=1 O=1 P=1 Q=0 R=0 S=0 T=0 U=0 V=1 W=0 X=1 Y=1 Z=1 ShowHints=0 ShowWarnings=0 UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; [Linker] MapFile=0 OutputObjs=0 ConsoleApp=1 DebugInfo=0 RemoteSymbols=0 MinStackSize=16384 MaxStackSize=1048576 ImageBase=4194304 ExeDescription=InstantObjects Flash Filer Design-Time Support (Delphi 5) [Directories] OutputDir= UnitOutputDir= PackageDLLOutputDir= PackageDCPOutputDir= SearchPath= Packages=atsJCL1220rp50;atsJCL1220rp50;DsnIDE50;Vcl50;Vclx50;VclSmp50;Vcldb50;Vclbde50;ibevnt50;vcldbx50;VCLIB50;vclie50;ADSD50;dxEdtrD5;dxcomnD5;EQTLD5;ECQDBCD5;EQDBTLD5;EQGridD5;dxGrEdD5;dxExELD5;dxELibD5;Indy50;SqlDir50;atsSPI2100rp50;PivotCube;Qrpt50;ats3RD100;ABC50;ABCDB50;ABCDBD50;JzNavPanePckD5;JzDesktopAlertPckD5;dcctd5 Conditionals= DebugSourceDirs= UsePackages=0 [Parameters] RunParams= HostApplication= [Version Info] IncludeVerInfo=1 AutoIncBuild=0 MajorVer=1 MinorVer=0 Release=0 Build=0 Debug=0 PreRelease=0 Special=0 Private=0 DLL=0 Locale=1046 CodePage=1252 [Version Info Keys] CompanyName= FileDescription= FileVersion=1.0.0.0 InternalName= LegalCopyright= LegalTrademarks= OriginalFilename= ProductName= ProductVersion=1.0.0.0 Comments= [Excluded Packages] $(DELPHI)\Projects\Bpl\dcoutbar_d5.bpl=Dream Outbar $(DELPHI)\Bin\dclite50.bpl=Borland Integrated Translation Environment $(DELPHI)\Projects\Bpl\dclOQBkbmMW50.bpl=Open QBuilder IBX Engine $(DELPHI)\Projects\Bpl\kbmMWBOQuery.bpl=Business Query for kbmMW $(DELPHI)\Projects\Bpl\dclIndy50.bpl=Internet Direct (Indy) for D5 Property and Component Editors $(DELPHI)\3rdparty\FastReport\fr\Source\frado5.bpl=FastReport 2.5 ADO Components --- NEW FILE: ioff50.dof --- [Compiler] A=1 B=0 C=1 D=1 E=0 F=0 G=1 H=1 I=1 J=1 K=0 L=1 M=0 N=1 O=1 P=1 Q=0 R=0 S=0 T=0 U=0 V=1 W=0 X=1 Y=1 Z=1 ShowHints=1 ShowWarnings=1 UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; [Linker] MapFile=0 OutputObjs=0 ConsoleApp=1 DebugInfo=0 RemoteSymbols=0 MinStackSize=16384 MaxStackSize=1048576 ImageBase=4194304 ExeDescription=InstantObjects FlashFiler Support [Directories] OutputDir= UnitOutputDir= PackageDLLOutputDir= PackageDCPOutputDir= SearchPath=$(DELPHI)\3rdparty\TurboPower\Flashfiler\source Packages= Conditionals= DebugSourceDirs= UsePackages=0 [Parameters] RunParams= HostApplication= [Version Info] IncludeVerInfo=1 AutoIncBuild=0 MajorVer=1 MinorVer=0 Release=0 Build=0 Debug=0 PreRelease=0 Special=0 Private=0 DLL=0 Locale=1033 CodePage=1252 [Excluded Packages] $(DELPHI)\Projects\Bpl\dcoutbar_d5.bpl=Dream Outbar $(DELPHI)\Bin\dclite50.bpl=Borland Integrated Translation Environment $(DELPHI)\Projects\Bpl\dclOQBkbmMW50.bpl=Open QBuilder IBX Engine $(DELPHI)\Projects\Bpl\kbmMWBOQuery.bpl=Business Query for kbmMW $(DELPHI)\Projects\Bpl\dclIndy50.bpl=Internet Direct (Indy) for D5 Property and Component Editors $(DELPHI)\3rdparty\FastReport\fr\Source\frado5.bpl=FastReport 2.5 ADO Components [HistoryLists\hlUnitAliases] Count=1 Item0=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; [HistoryLists\hlSearchPath] Count=1 Item0=C:\Borland\Delphi5\3rdparty\TurboPower\Flashfiler\source --- NEW FILE: ioff50.res --- (This appears to be a binary file; contents omitted.) --- NEW FILE: ioff50.cfg --- -$A+ -$B- -$C+ -$D+ -$E- -$F- -$G+ -$H+ -$I+ -$J+ -$K- -$L+ -$M- -$N+ -$O+ -$P+ -$Q- -$R- -$S- -$T- -$U- -$V+ -$W- -$X+ -$YD -$Z1 -cg -AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; -H+ -W+ -M -$M16384,1048576 -K$00400000 -LE"c:\borland\delphi5\Projects\Bpl" -LN"c:\borland\delphi5\Projects\Bpl" -U"c:\borland\delphi5\3rdparty\TurboPower\Flashfiler\source" -O"c:\borland\delphi5\3rdparty\TurboPower\Flashfiler\source" -I"c:\borland\delphi5\3rdparty\TurboPower\Flashfiler\source" -R"c:\borland\delphi5\3rdparty\TurboPower\Flashfiler\source" -Z |
From: Femi F. <fad...@us...> - 2005-02-20 01:44:38
|
Update of /cvsroot/instantobjects/Source/Brokers/FlashFiler/D5 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24393/D5 Log Message: Directory /cvsroot/instantobjects/Source/Brokers/FlashFiler/D5 added to the repository |
From: Femi F. <fad...@us...> - 2005-02-20 01:44:37
|
Update of /cvsroot/instantobjects/Source/Brokers/FlashFiler/D7 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24393/D7 Log Message: Directory /cvsroot/instantobjects/Source/Brokers/FlashFiler/D7 added to the repository |
From: Femi F. <fad...@us...> - 2005-02-20 01:44:37
|
Update of /cvsroot/instantobjects/Source/Brokers/FlashFiler/D6 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24393/D6 Log Message: Directory /cvsroot/instantobjects/Source/Brokers/FlashFiler/D6 added to the repository |
From: Nando D. <na...@us...> - 2005-02-19 10:48:06
|
Update of /cvsroot/instantobjects/Source/Design/D7 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14486/Design/D7 Modified Files: DclIOCore.cfg DclIOCore.dof Log Message: disabled unsafe warnings Index: DclIOCore.dof =================================================================== RCS file: /cvsroot/instantobjects/Source/Design/D7/DclIOCore.dof,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** DclIOCore.dof 18 Feb 2005 14:44:30 -0000 1.6 --- DclIOCore.dof 19 Feb 2005 10:47:56 -0000 1.7 *************** *** 77,83 **** SuspiciousTypecast=1 PrivatePropAccessor=1 ! UnsafeType=1 ! UnsafeCode=1 ! UnsafeCast=1 [Linker] MapFile=0 --- 77,83 ---- SuspiciousTypecast=1 PrivatePropAccessor=1 ! UnsafeType=0 ! UnsafeCode=0 ! UnsafeCast=0 [Linker] MapFile=0 Index: DclIOCore.cfg =================================================================== RCS file: /cvsroot/instantobjects/Source/Design/D7/DclIOCore.cfg,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** DclIOCore.cfg 18 Feb 2005 14:44:30 -0000 1.2 --- DclIOCore.cfg 19 Feb 2005 10:47:56 -0000 1.3 *************** *** 35,36 **** --- 35,39 ---- -LN"c:\programmi\borland\delphi7\Projects\Bpl" -Z + -w-UNSAFE_TYPE + -w-UNSAFE_CODE + -w-UNSAFE_CAST |
From: Nando D. <na...@us...> - 2005-02-19 10:47:30
|
Update of /cvsroot/instantobjects/Source/Design/D7 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14364/Design/D7 Modified Files: DclIOCore.dpk Log Message: fixed build error in D7 - requires changes to D6 and D5 as well Index: DclIOCore.dpk =================================================================== RCS file: /cvsroot/instantobjects/Source/Design/D7/DclIOCore.dpk,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** DclIOCore.dpk 3 Feb 2005 17:04:52 -0000 1.4 --- DclIOCore.dpk 19 Feb 2005 10:47:20 -0000 1.5 *************** *** 2,6 **** {$R *.res} - {$R '..\iodesimages.res'} {$R '..\..\Core\InstantPresentation.dcr'} {$R '..\..\Core\InstantExplorer.dcr'} --- 2,5 ---- |
From: Nando D. <na...@us...> - 2005-02-19 10:43:36
|
Update of /cvsroot/instantobjects/Source/Design/D6 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13694/Design/D6 Added Files: .cvsignore Log Message: improved .cvsignore --- NEW FILE: .cvsignore --- *.dcu *.~* *.ddp |
From: Nando D. <na...@us...> - 2005-02-19 10:41:52
|
Update of /cvsroot/instantobjects/Source/Design/D6 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13320/Design/D6 Modified Files: DclIOCore.dpk Log Message: fixed build error in D7 - requires changes to D6 and D5 as well Index: DclIOCore.dpk =================================================================== RCS file: /cvsroot/instantobjects/Source/Design/D6/DclIOCore.dpk,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** DclIOCore.dpk 20 Jul 2004 16:39:09 -0000 1.1 --- DclIOCore.dpk 19 Feb 2005 10:41:37 -0000 1.2 *************** *** 6,10 **** {$R '..\..\Core\InstantPersistence.dcr'} {$R '..\..\Core\InstantConnectionManager.dcr'} - {$R '..\iodesimages.res'} {$ALIGN 8} {$ASSERTIONS ON} --- 6,9 ---- |
From: Nando D. <na...@us...> - 2005-02-19 10:41:34
|
Update of /cvsroot/instantobjects/Source/Design/D5 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13283/Design/D5 Modified Files: DclIOCore.dpk Log Message: fixed build error in D7 - requires changes to D6 and D5 as well Index: DclIOCore.dpk =================================================================== RCS file: /cvsroot/instantobjects/Source/Design/D5/DclIOCore.dpk,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** DclIOCore.dpk 10 Feb 2005 22:59:36 -0000 1.1 --- DclIOCore.dpk 19 Feb 2005 10:41:24 -0000 1.2 *************** *** 6,10 **** {$R '..\..\Core\InstantPersistence.dcr'} {$R '..\..\Core\InstantConnectionManager.dcr'} - {$R '..\iodesimages.res'} {$ALIGN ON} {$ASSERTIONS ON} --- 6,9 ---- |
From: Nando D. <na...@us...> - 2005-02-19 10:41:17
|
Update of /cvsroot/instantobjects/Source/Design In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13246/Design Modified Files: InstantReg.pas Log Message: fixed build error in D7 - requires changes to D6 and D5 as well Index: InstantReg.pas =================================================================== RCS file: /cvsroot/instantobjects/Source/Design/InstantReg.pas,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** InstantReg.pas 3 Feb 2005 17:05:14 -0000 1.4 --- InstantReg.pas 19 Feb 2005 10:41:05 -0000 1.5 *************** *** 25,29 **** * the Initial Developer. All Rights Reserved. * ! * Contributor(s): * * ***** END LICENSE BLOCK ***** *) --- 25,29 ---- * the Initial Developer. All Rights Reserved. * ! * Contributor(s): Nando Dessena * * ***** END LICENSE BLOCK ***** *) *************** *** 37,40 **** --- 37,42 ---- implementation + {$R ..\iodesimages.res} + uses Classes, InstantConsts, InstantPersistence, InstantPresentation, |
Update of /cvsroot/instantobjects/Source/Brokers/ADS/D5 In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6754/Brokers/ADS/D5 Added Files: DclIOADS.cfg DclIOADS.dof DclIOADS.dpk DclIOADS.res ioads50.cfg ioads50.dof ioads50.dpk ioads50.res Log Message: Package Restructure --- NEW FILE: ioads50.cfg --- -$A+ -$B- -$C+ -$D+ -$E- -$F- -$G+ -$H+ -$I+ -$J+ -$K- -$L+ -$M- -$N+ -$O+ -$P+ -$Q- -$R- -$S- -$T- -$U- -$V+ -$W- -$X+ -$YD -$Z1 -cg -AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; -H- -W- -M -$M16384,1048576 -K$00400000 -LE"c:\borland\delphi5\Projects\Bpl" -LN"c:\borland\delphi5\Projects\Bpl" --- NEW FILE: DclIOADS.dof --- [Compiler] A=1 B=0 C=1 D=1 E=0 F=0 G=1 H=1 I=1 J=1 K=0 L=1 M=0 N=1 O=1 P=1 Q=0 R=0 S=0 T=0 U=0 V=1 W=0 X=1 Y=1 Z=1 ShowHints=0 ShowWarnings=0 UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; [Linker] MapFile=0 OutputObjs=0 ConsoleApp=1 DebugInfo=0 RemoteSymbols=0 MinStackSize=16384 MaxStackSize=1048576 ImageBase=4194304 ExeDescription=InstantObjects BDE Design-Time Support (Delphi 5) [Directories] OutputDir= UnitOutputDir= PackageDLLOutputDir= PackageDCPOutputDir= SearchPath= Packages=atsJCL1220rp50;atsJCL1220rp50;DsnIDE50;Vcl50;Vclx50;VclSmp50;Vcldb50;Vclbde50;ibevnt50;vcldbx50;VCLIB50;vclie50;ADSD50;dxEdtrD5;dxcomnD5;EQTLD5;ECQDBCD5;EQDBTLD5;EQGridD5;dxGrEdD5;dxExELD5;dxELibD5;Indy50;SqlDir50;atsSPI2100rp50;PivotCube;Qrpt50;ats3RD100;ABC50;ABCDB50;ABCDBD50;JzNavPanePckD5;JzDesktopAlertPckD5;dcctd5 Conditionals= DebugSourceDirs= UsePackages=0 [Parameters] RunParams= HostApplication= [Version Info] IncludeVerInfo=1 AutoIncBuild=0 MajorVer=1 MinorVer=0 Release=0 Build=0 Debug=0 PreRelease=0 Special=0 Private=0 DLL=0 Locale=1046 CodePage=1252 [Version Info Keys] CompanyName= FileDescription= FileVersion=1.0.0.0 InternalName= LegalCopyright= LegalTrademarks= OriginalFilename= ProductName= ProductVersion=1.0.0.0 Comments= [Excluded Packages] $(DELPHI)\Projects\Bpl\dcoutbar_d5.bpl=Dream Outbar $(DELPHI)\Bin\dclite50.bpl=Borland Integrated Translation Environment $(DELPHI)\Projects\Bpl\dclOQBkbmMW50.bpl=Open QBuilder IBX Engine $(DELPHI)\Projects\Bpl\kbmMWBOQuery.bpl=Business Query for kbmMW $(DELPHI)\Projects\Bpl\dclIndy50.bpl=Internet Direct (Indy) for D5 Property and Component Editors $(DELPHI)\3rdparty\FastReport\fr\Source\frado5.bpl=FastReport 2.5 ADO Components --- NEW FILE: ioads50.res --- (This appears to be a binary file; contents omitted.) --- NEW FILE: DclIOADS.dpk --- package DclIOADS; {$R *.RES} {$R '..\InstantADS.dcr'} {$ALIGN ON} {$ASSERTIONS ON} {$BOOLEVAL OFF} {$DEBUGINFO ON} {$EXTENDEDSYNTAX ON} {$IMPORTEDDATA ON} {$IOCHECKS ON} {$LOCALSYMBOLS ON} {$LONGSTRINGS ON} {$OPENSTRINGS ON} {$OPTIMIZATION ON} {$OVERFLOWCHECKS OFF} {$RANGECHECKS OFF} {$REFERENCEINFO ON} {$SAFEDIVIDE OFF} {$STACKFRAMES OFF} {$TYPEDADDRESS OFF} {$VARSTRINGCHECKS ON} {$WRITEABLECONST ON} {$MINENUMSIZE 1} {$IMAGEBASE $400000} {$DESCRIPTION 'InstantObjects ADS Design-Time Support (Delphi 5)'} {$DESIGNONLY} {$IMPLICITBUILD ON} requires IOCore, ioads50; contains InstantADSReg in '..\InstantADSReg.pas'; end. --- NEW FILE: DclIOADS.cfg --- -$A+ -$B- -$C+ -$D+ -$E- -$F- -$G+ -$H+ -$I+ -$J+ -$K- -$L+ -$M- -$N+ -$O+ -$P+ -$Q- -$R- -$S- -$T- -$U- -$V+ -$W- -$X+ -$YD -$Z1 -cg -AWinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; -H- -W- -M -$M16384,1048576 -K$00400000 -LE"c:\borland\delphi5\Projects\Bpl" -LN"c:\borland\delphi5\Projects\Bpl" --- NEW FILE: ioads50.dpk --- package ioads50; {$R *.RES} {$ALIGN ON} {$ASSERTIONS ON} {$BOOLEVAL OFF} {$DEBUGINFO ON} {$EXTENDEDSYNTAX ON} {$IMPORTEDDATA ON} {$IOCHECKS ON} {$LOCALSYMBOLS ON} {$LONGSTRINGS ON} {$OPENSTRINGS ON} {$OPTIMIZATION ON} {$OVERFLOWCHECKS OFF} {$RANGECHECKS OFF} {$REFERENCEINFO ON} {$SAFEDIVIDE OFF} {$STACKFRAMES OFF} {$TYPEDADDRESS OFF} {$VARSTRINGCHECKS ON} {$WRITEABLECONST ON} {$MINENUMSIZE 1} {$IMAGEBASE $400000} {$DESCRIPTION 'InstantObjects ADS Support'} {$IMPLICITBUILD ON} requires Vcl50, Vclx50, Vcldb50, ADSD50, IOCore; contains InstantADS in '..\InstantADS.pas', InstantADSConnectionDefEdit in '..\InstantADSConnectionDefEdit.pas' {InstantADSConnectionDefEditForm}; end. --- NEW FILE: DclIOADS.res --- (This appears to be a binary file; contents omitted.) --- NEW FILE: ioads50.dof --- [Compiler] A=1 B=0 C=1 D=1 E=0 F=0 G=1 H=1 I=1 J=1 K=0 L=1 M=0 N=1 O=1 P=1 Q=0 R=0 S=0 T=0 U=0 V=1 W=0 X=1 Y=1 Z=1 ShowHints=0 ShowWarnings=0 UnitAliases=WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; [Linker] MapFile=0 OutputObjs=0 ConsoleApp=1 DebugInfo=0 RemoteSymbols=0 MinStackSize=16384 MaxStackSize=1048576 ImageBase=4194304 ExeDescription=InstantObjects ADS Support [Directories] OutputDir= UnitOutputDir= PackageDLLOutputDir= PackageDCPOutputDir= SearchPath= Packages=atsJCL1220rp50;atsJCL1220rp50;DsnIDE50;Vcl50;Vclx50;VclSmp50;Vcldb50;Vclbde50;ibevnt50;vcldbx50;VCLIB50;vclie50;ADSD50;dxEdtrD5;dxcomnD5;EQTLD5;ECQDBCD5;EQDBTLD5;EQGridD5;dxGrEdD5;dxExELD5;dxELibD5;Indy50;SqlDir50;atsSPI2100rp50;PivotCube;Qrpt50;ats3RD100;ABC50;ABCDB50;ABCDBD50;JzNavPanePckD5;JzDesktopAlertPckD5;dcctd5 Conditionals= DebugSourceDirs= UsePackages=0 [Parameters] RunParams= HostApplication= [Version Info] IncludeVerInfo=0 AutoIncBuild=0 MajorVer=1 MinorVer=0 Release=0 Build=0 Debug=0 PreRelease=0 Special=0 Private=0 DLL=0 Locale=1046 CodePage=1252 [Version Info Keys] CompanyName= FileDescription= FileVersion=1.0.0.0 InternalName= LegalCopyright= LegalTrademarks= OriginalFilename= ProductName= ProductVersion=1.0.0.0 Comments= [Excluded Packages] $(DELPHI)\Projects\Bpl\dcoutbar_d5.bpl=Dream Outbar $(DELPHI)\Bin\dclite50.bpl=Borland Integrated Translation Environment $(DELPHI)\Projects\Bpl\dclOQBkbmMW50.bpl=Open QBuilder IBX Engine $(DELPHI)\Projects\Bpl\kbmMWBOQuery.bpl=Business Query for kbmMW $(DELPHI)\Projects\Bpl\dclIndy50.bpl=Internet Direct (Indy) for D5 Property and Component Editors $(DELPHI)\3rdparty\FastReport\fr\Source\frado5.bpl=FastReport 2.5 ADO Components |
From: Femi F. <fad...@us...> - 2005-02-19 04:15:39
|
Update of /cvsroot/instantobjects/Source/Brokers/ADS In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv6046/Brokers/ADS Modified Files: InstantADS.pas Log Message: Package Restructure Index: InstantADS.pas =================================================================== RCS file: /cvsroot/instantobjects/Source/Brokers/ADS/InstantADS.pas,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** InstantADS.pas 17 Feb 2005 04:19:48 -0000 1.4 --- InstantADS.pas 19 Feb 2005 04:15:28 -0000 1.5 *************** *** 27,30 **** --- 27,31 ---- * Carlo Barazzetta: blob streaming in XML format (Part, Parts, References) * + * * ***** END LICENSE BLOCK ***** *) |