Component to be refactored
All DAOs in this project.
Purpose of refactoring
To avoid duplicating code and make it easier to handle additional implementations or even simple schema changes over time.
Proposed method
OpenDCS 7.0.13 had migrated several DAOs to use bind variables for all but a few operations, this makes them suitable for use within an web API.
Additional context
This Issue should stay open with issues for specific DAOs getting put in the above list.
AlgorithmDAO, ComputationDAO, and LoadingAppDAO are bind variables for operations of concern; there's a few select in cases that could cause issues but I don't think they're used from what I've reviewed.
We will be migrating the old "...io" interactions to standard DAO over time. Routing Spec, Sources, and Schedules will be the first to transition after 7.0.13 is formally released.
The rest_api will need to be able to create a database using a standard javax.sql.DataSource. This effort is underway in the main code.
Component to be refactored All DAOs in this project.
Purpose of refactoring To avoid duplicating code and make it easier to handle additional implementations or even simple schema changes over time.
Proposed method OpenDCS 7.0.13 had migrated several DAOs to use bind variables for all but a few operations, this makes them suitable for use within an web API.
Related tasks:
Additional context This Issue should stay open with issues for specific DAOs getting put in the above list.
AlgorithmDAO, ComputationDAO, and LoadingAppDAO are bind variables for operations of concern; there's a few select in cases that could cause issues but I don't think they're used from what I've reviewed.
We will be migrating the old "...io" interactions to standard DAO over time. Routing Spec, Sources, and Schedules will be the first to transition after 7.0.13 is formally released.
The rest_api will need to be able to create a database using a standard javax.sql.DataSource. This effort is underway in the main code.