From: James Ahlborn Date: Tue, 24 Sep 2013 03:30:57 +0000 (+0000) Subject: cleanup todo list post 2.0 release X-Git-Tag: jackcess-2.0.1~14 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=e7f259b60f550b031cf772318f1e6675b6d6986d;p=jackcess.git cleanup todo list post 2.0 release git-svn-id: https://svn.code.sf.net/p/jackcess/code/jackcess/trunk@808 f203690c-595d-4dc9-a70b-905162fa7fd2 --- diff --git a/TODO.txt b/TODO.txt index 03966b0..56d0eb1 100644 --- a/TODO.txt +++ b/TODO.txt @@ -22,60 +22,19 @@ Missing pieces: * MEDIUM Refactor goals: -- simplify public API (separate "internal" and "external" api) -* separate table creation objects from existing metadata objects -* remove "simple" index support? -* remove "table traversal methods" from Table? -* enable integrity by default? -* remove import/export methods from Database? -* move database open/create options to DBBuilder -* tweak how import filters work to make them more flexible? - tweak lookup apis (specify column vs column name) -* separate classes into more packages (api,builder,util,impl) -* remove debug log blocks -* add Row interface -* change savepoint to use table number instead of name? -* don't use columnimpl for creating tables - * clean up columnimpl/tableimpl constructors -* add updateCurrentRow(Map), add updateRow(Row) -* sort out query types - clean up javadocs - enhance public api classes - add @usage tags to util classes -* add unit tests for Row update/delete methods, add/update *FromMap methods -* add reason to unsupop throws for indexes -* remove static methods in CursorImpl/IndexCursorImpl -* create ComplexValue.Id and keep RowId -* remove DatabaseImpl from util classes -- remove unnecessary iterator class from impl classes? (what does this mean?) * change CodecHandler usage to handle not-inline decoding - pass filename to CodecHandler, enable pwd callbacks CallbackHandler - pass custom context to CodecHandler? - rework CryptCodecProvider to have custom javax.security.auth.callback.CallbackHandler which is only invoked if password is definitely required. -* rework attachment data handling - implement page buffering in PageChannel * need to implement logical flushing in update code (startUpdate/finishUpdate) -* limit size of IndexPageCache? -* make non-thread-safeness more explicit - refactor free-space handlers Table/Column? -* update index/cookbook for new api -* add basic walk-through in class javadocs to guide users to correct classes - and basic getting started stuff. - implement "lazy" usage maps (load on first usage)? - implement some OLE support - -* public api final cleanup: - * Database - -- changes - - simple index support gone - - foreign key constraints enforced by default - - "main" classes became interfaces - - advanced API functionality still remains in impl classes - - all new instance construction via builders - - iterable methods went away, iterable builder - - util classes moved to util package - - Row is now an interface - +- add typed getter methods to Row