- const auto typeValue = params["type"];
- BT_ASSERT(typeValue);
- BT_ASSERT(typeValue->isString());
- const auto type = typeValue->asString().value();
+ gchar *validateError = NULL;
+ const auto validationStatus = bt_param_validation_validate(
+ params.libObjPtr(), supportInfoQueryParamsDesc, &validateError);
+
+ if (validationStatus == BT_PARAM_VALIDATION_STATUS_MEMORY_ERROR) {
+ throw bt2::MemoryError {};
+ } else if (validationStatus == BT_PARAM_VALIDATION_STATUS_VALIDATION_ERROR) {
+ const bt2c::GCharUP deleter {validateError};
+
+ BT_CPPLOGE_APPEND_CAUSE_AND_THROW_SPEC(logger, bt2::Error, "{}", validateError);
+ }
+
+ const auto type = params["type"]->asString().value();