Improved debug logging in TC CommandManager
This commit is contained in:
@@ -28,9 +28,11 @@ namespace Bloom::TargetController
|
|||||||
) {
|
) {
|
||||||
using SuccessResponseType = typename CommandType::SuccessResponseType;
|
using SuccessResponseType = typename CommandType::SuccessResponseType;
|
||||||
|
|
||||||
Logger::debug("Issuing " + CommandType::name + " command to TargetController");
|
|
||||||
|
|
||||||
const auto commandId = command->id;
|
const auto commandId = command->id;
|
||||||
|
Logger::debug(
|
||||||
|
"Issuing " + CommandType::name + " command (ID: " + std::to_string(commandId) + ") to TargetController"
|
||||||
|
);
|
||||||
|
|
||||||
TargetControllerComponent::registerCommand(std::move(command));
|
TargetControllerComponent::registerCommand(std::move(command));
|
||||||
|
|
||||||
auto optionalResponse = TargetControllerComponent::waitForResponse(commandId, timeout);
|
auto optionalResponse = TargetControllerComponent::waitForResponse(commandId, timeout);
|
||||||
@@ -48,12 +50,16 @@ namespace Bloom::TargetController
|
|||||||
const auto errorResponse = dynamic_cast<Responses::Error*>(response.get());
|
const auto errorResponse = dynamic_cast<Responses::Error*>(response.get());
|
||||||
|
|
||||||
Logger::debug(
|
Logger::debug(
|
||||||
"TargetController returned error in response to " + CommandType::name + " command. Error: "
|
"TargetController returned error in response to " + CommandType::name + " command (ID: "
|
||||||
+ errorResponse->errorMessage
|
+ std::to_string(commandId) + "). Error: " + errorResponse->errorMessage
|
||||||
);
|
);
|
||||||
throw Exceptions::Exception(errorResponse->errorMessage);
|
throw Exceptions::Exception(errorResponse->errorMessage);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Logger::debug(
|
||||||
|
"Delivering response for " + CommandType::name + " command (ID: " + std::to_string(commandId) + ")"
|
||||||
|
);
|
||||||
|
|
||||||
// Only downcast if the command's SuccessResponseType is not the generic Response type.
|
// Only downcast if the command's SuccessResponseType is not the generic Response type.
|
||||||
if constexpr (!std::is_same_v<SuccessResponseType, Responses::Response>) {
|
if constexpr (!std::is_same_v<SuccessResponseType, Responses::Response>) {
|
||||||
assert(response->getType() == SuccessResponseType::type);
|
assert(response->getType() == SuccessResponseType::type);
|
||||||
@@ -64,7 +70,6 @@ namespace Bloom::TargetController
|
|||||||
} else {
|
} else {
|
||||||
return std::move(response);
|
return std::move(response);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user