bareos: master bbf4d099

Author Committer Branch Timestamp Parent
mvwieringen mvwieringen master 2016-09-01 20:59 master dcfec264 Pending
Changeset cats: Retire sql glueing layer.

When I refactored the catalog backends in 2010 I was talked in to use
some glueing layer so the calling functions didn't need to much
changing. That has served it purpose but now after 6 years its time to
take the next step and move B_DB functions into proper class methods.
This patch removes the old glue layer and extends the B_DB class with
all methods needed to be a proper abstraction of the different database
functions needed. Also all old database functions are now promoted to
class methods. As part of the rewrite we also refactored quite a bit of
code and dropped the db_ prefix where it made sense as its now kind of
obvious its a method doing something with the database when its part of
a B_DB class that handles database abstraction.

I also made all the B_DB members now protected which is a lot easier now
most methods handle the inner content of the class and we don't have to
many external functions poking into our internal structures.

All low level methods previously protected via the bdb_priv.h header
are now proper private methods in the B_DB class and are only visible
to methods in source files that set _BDB_PRIV_INTERFACE_. As such we
control the access to these low level methods to either the methods in
the catalog shared libs or to the actual database backend drivers.

Lets call this catalog refactoring phase 3 after phase 1 and 2 which was
done in 2010.
mod - src/cats/Makefile.in Diff File
mod - src/cats/bdb_dbi.h Diff File
mod - src/cats/bdb_ingres.h Diff File
mod - src/cats/bdb_mysql.h Diff File
mod - src/cats/bdb_postgresql.h Diff File
mod - src/cats/bdb_priv.h Diff File
mod - src/cats/bdb_sqlite.h Diff File
mod - src/cats/bvfs.c Diff File
mod - src/cats/bvfs.h Diff File
mod - src/cats/cats.c Diff File
mod - src/cats/cats.h Diff File
mod - src/cats/cats_backends.c Diff File
mod - src/cats/cats_backends.h Diff File
mod - src/cats/dbi.c Diff File
mod - src/cats/ingres.c Diff File
mod - src/cats/lock_check Diff File
mod - src/cats/mysql.c Diff File
mod - src/cats/postgresql.c Diff File
mod - src/cats/protos.h Diff File
mod - src/cats/sql.c Diff File
mod - src/cats/sql_cmds.c Diff File
mod - src/cats/sql_cmds.h Diff File
mod - src/cats/sql_create.c Diff File
mod - src/cats/sql_delete.c Diff File
mod - src/cats/sql_find.c Diff File
mod - src/cats/sql_get.c Diff File
rm - src/cats/sql_glue.c Diff File
rm - src/cats/sql_glue.h Diff File
mod - src/cats/sql_list.c Diff File
mod - src/cats/sql_pooling.c Diff File
mod - src/cats/sql_update.c Diff File
mod - src/cats/sqlite.c Diff File
mod - src/dird/admin.c Diff File
mod - src/dird/archive.c Diff File
mod - src/dird/autoprune.c Diff File
mod - src/dird/backup.c Diff File
mod - src/dird/bsr.c Diff File
mod - src/dird/catreq.c Diff File
mod - src/dird/consolidate.c Diff File
mod - src/dird/dbcheck.c Diff File
mod - src/dird/dir_plugins.c Diff File
mod - src/dird/dird.c Diff File
mod - src/dird/dird.h Diff File
mod - src/dird/expand.c Diff File
mod - src/dird/fd_cmds.c Diff File
mod - src/dird/job.c Diff File
mod - src/dird/migrate.c Diff File
mod - src/dird/msgchan.c Diff File
mod - src/dird/ndmp_dma_backup.c Diff File
mod - src/dird/ndmp_dma_restore.c Diff File
mod - src/dird/ndmp_fhdb_helpers.c Diff File
mod - src/dird/newvol.c Diff File
mod - src/dird/next_vol.c Diff File
mod - src/dird/quota.c Diff File
mod - src/dird/recycle.c Diff File
mod - src/dird/restore.c Diff File
mod - src/dird/stats.c Diff File
mod - src/dird/ua_cmds.c Diff File
mod - src/dird/ua_db.c Diff File
mod - src/dird/ua_dotcmds.c Diff File
mod - src/dird/ua_label.c Diff File
mod - src/dird/ua_output.c Diff File
mod - src/dird/ua_prune.c Diff File
mod - src/dird/ua_purge.c Diff File
mod - src/dird/ua_query.c Diff File
mod - src/dird/ua_restore.c Diff File
mod - src/dird/ua_run.c Diff File
mod - src/dird/ua_select.c Diff File
mod - src/dird/ua_status.c Diff File
mod - src/dird/ua_tree.c Diff File
mod - src/dird/ua_update.c Diff File
mod - src/dird/vbackup.c Diff File
mod - src/dird/verify.c Diff File
mod - src/stored/bscan.c Diff File
mod - src/tests/bbatch.c Diff File
mod - src/tests/bvfs_test.c Diff File
mod - src/win32/cats/Makefile Diff File