aboutsummaryrefslogtreecommitdiffstats
path: root/TODO.txt
diff options
context:
space:
mode:
authorJames Ahlborn <jtahlborn@yahoo.com>2013-07-30 02:17:15 +0000
committerJames Ahlborn <jtahlborn@yahoo.com>2013-07-30 02:17:15 +0000
commitd1a79d0064632cca220409abb799ab1757c6caa7 (patch)
tree5cea8606b34a37ff241f9b24f0d5e6b2178a10b5 /TODO.txt
parent50a356790e619903269a2aa52db7f4a72d1d802d (diff)
downloadjackcess-d1a79d0064632cca220409abb799ab1757c6caa7.tar.gz
jackcess-d1a79d0064632cca220409abb799ab1757c6caa7.zip
merge branch jackcess-2 changes through r759
git-svn-id: https://svn.code.sf.net/p/jackcess/code/jackcess/trunk@760 f203690c-595d-4dc9-a70b-905162fa7fd2
Diffstat (limited to 'TODO.txt')
-rw-r--r--TODO.txt54
1 files changed, 54 insertions, 0 deletions
diff --git a/TODO.txt b/TODO.txt
index d8472b8..04a0aea 100644
--- a/TODO.txt
+++ b/TODO.txt
@@ -20,3 +20,57 @@ Missing pieces:
* EASY
- figure out how msaccess manages page/row locks
* 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?
+
+* 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
+