Due to a legacy database system all my clients are using (Advantage Database, using SQL and/or an ISAM interface): is it possible with DO4 to write my own custom storage provider? That would make DO a viable possibility for me.

This thread was imported from our support forum. The original discussion may contain more detailed answer. Original topic by Thaylor.

asked Jun 21 '10 at 17:11

Editor's gravatar image


One Answer:

Yes, this is possible. Writing SQL provider might be simpler, because API here is more or less stable (there are already 4 SQL providers).

In general, you should implement two parts:

First part is the most complex one: full-featured provider implementation requires deep knowledge of underlying database. On the other hand, there are 4 working providers and tests for them, as well as huge test suite for DO4 itself.

Benefit: if you're talking about Sybase Advantage Database Server, we're ready to provide free Ultimate license with subscription to all future upgrades for this product for even partially working version of provider for it. And certainly, we're ready to help you to develop it (Q/A).

You can check out v4.2 codebase to study everything deeper. Last chapter of Manual explains how to build DO4 from source code. I'd also prefer if this branch would be updated by you:

  • It's quite easy now to grant anyone write access to this repository. But the same isn't true for v4.3 repository - until final release it will be closed at all
  • SQL DOM stays almost unchanged during last year or even two
  • We integrate all the changes made to this branch into v4.3 on daily basis.

Any further questions are welcome.

answered Jun 21 '10 at 19:24

Alex%20Yakunin's gravatar image

Alex Yakunin

Your answer
Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
toggle preview

powered by OSQA