Remove GdaServerOperation from public API and add interface for DDL operations
I started removing GdaServerOperation
from the public API and I found that all DB objects share the same behavior with regard to DDL operation. I put together a matrix that allows visualizing object and operation relationship.
CREATE | ADD | DROP | RENAME | |
---|---|---|---|---|
CATALOG | + | + | ||
TABLE | + | + | + | |
VIEW | + | + | ||
INDEX | + | + | ||
COLUMN | + | + | ||
ROLE | + | + |
I think it would be wise to have a generic interface for the mentioned DDL operations and call this interface something like GdaDDLOperation
. For other operations, e.g. ADD
for TABLE we can return a value that will allow identifying if the implementation is not needed. It is not an error, but user can check if the implementation is not required. I opened this issue to discuss this and make sure I didn't miss something.