validate/sanitize xml config params
A cross platform NINJAM client with linear chain-streaming mode
Status: Beta
Brought to you by:
bill-auger
Originally created by: bill-auger
currently no actual constraints are imposed on any parsed stored (XML) data
one option would be to swicth to the JUCE encrypted store but user-editable config is actually a nice feature to retain
for example
* ensure the values of audio config params are among/within the constraints as represented in the GUI options (those acceptable to NJClient)
Anonymous
View and moderate all "tickets Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Tickets"
Originally posted by: bill-auger
datatypes for default nodes are restored in LinJamConfig::restoreVarTypeInfo() and then vaildated only for debug build in TraceLinjamConfig.h (DEBUG_TRACE_VALIDATE_CONFIG, DEBUG_TRACE_VALIDATE_USER, DEBUG_TRACE_VALIDATE_CHANNEL)
currently only ConfigAudio (a GUI class) sanitizes any of its initial config data (which should o/c be done in the model class LinJamConfig)
Constants.h has enumerated constraints for ConfigAudio but for many (such as ConfigClient) options are still hard-coded into the GUI classes per LinJam.jucer
the following methods currently exist for this
it should be decided whether to separate concerns for each such as LinJamConfig::validateConfig() vs LinJamConfig::sanitizeConfig() and DEBUG_TRACE_SANITIZE_ vs DEBUG_VALIDATE_CONFIG_ in TraceLinJamConfig.h
this issue may as well cover datatype info which is currently not restored for
<servers>, <master-channels>, <local-channels>, <remote-channels>
- (though it is still unclear if restoring datatype info is beneficial)