Update schema for new Resource Manager:
Add DBTechnology attribute to the Partition class to allow user define which technology to be used by the configuration databases.
Make Segment::get_timeouts() algorithm const to avoid unnecessary const cast when use in the user's code.
Restore Application::StartIn attribute.
There are several changes to make Java DAL more usable and similar to existing C++ DAL.
To get partition object in the way similar to C++ use dal.Algorithms.get_partition(config.Configuration db, String pname) algorithm, where the pname argument is the name of the partition object.
Add dal.SubstituteVariables class allowing to substitute parameters in values of string attributes using format ${FOO} (like it was already done in C++). To create parameter substitution object use dal.SubstituteVariables(config.Configuration db, dal.Partition p) constructor. For example:
config.Configuration db = new config.Configuration("oksconfig:daq/partitions/be_test.data.xml"); dal.Partition p = dal.Algorithms.get_partition(db, "be_test"); if(p != null) { db.register_converter(new dal.SubstituteVariables(db, p)); }
After such code any parameters of string attributes will be substituted, if accessed via DAL.
The dal/jexamples/Dump.java shown how to use above algorithm and converter to dump any generated DAL object from java. See in the check target result of be_test partition applications' dump:
java ... Dump -d "rdbconfig:RDB" -c Application -p be_test
All dal utilities and examples are using new ::Configuration constructor working with implementations. There is no anymore support for --oks and --rdb command line options. Instead --data "plugin:parameters" option has to be used.
The dal_create_sw_repository utility allows to work with empty repositories without defined sw objects. This is used to generate tdaq common sw repository object used by the tdaq sw repository description.