What do we need a GUI for?
* to configure the connection to the database and its generated key strategy
- driver class
- generated key retrieval time (auto|before|after|none)
- generated key retrieval statement (if not auto)
- connection URL
- username
- password
- catalog
- schema
[Nota: could be nice to have some ready configurations to select from]
* to configure the generator
- generator class
- destination path
- root package
- prefix for generated classes
[Nota: could be nice to have a list of available generators to select from]
* to browse the catalogs and schemas for tables, views and procedures
- filtering by patterns list or explicit names list at any level
* to group the selected tables (or views) into domain areas
- optionally defining a subpackage for the domain area
- including/excluding tables (or views) by patterns list or explicit names list
- supporting tables (or views) from different schemas
- associating templates packages to each domain area
* to additionally configure each table
- optionally defining an alternate name (for nicer converted name)
- documenting a description (if not retrieved from the database remarks)
- including/excluding columns by patterns list or explicit names list
- associating stored procedures by patterns list or explicit names list
* to additionally configure each column
- optionally defining an alternate name (for nicer converted name)
- documenting a description (if not retrieved from the database remarks)
- defining a default value (if different from the database default)