#include "SingleReplyRequestHandler.h"
#include "Compatibility.h"
#include "Debug.h"
#include "Request.h"
SingleReplyRequestHandler::SingleReplyRequestHandler()
: RequestHandler(),
fAcceptAnyRequest(true),
fExpectedReply(0)
{
}
SingleReplyRequestHandler::SingleReplyRequestHandler(uint32 expectedReply)
: RequestHandler(),
fAcceptAnyRequest(false),
fExpectedReply(expectedReply)
{
}
status_t
SingleReplyRequestHandler::HandleRequest(Request* request)
{
if (!fAcceptAnyRequest && request->GetType() != fExpectedReply) {
PRINT(("SingleReplyRequestHandler::HandleRequest(): unexpected "
"request: %" B_PRIu32 " expected was: %" B_PRIu32 "\n",
request->GetType(), fExpectedReply));
#if USER
debugger("SingleReplyRequestHandler::HandleRequest(): unexpected "
"request!");
#endif
return B_BAD_DATA;
}
fDone = true;
return B_OK;
}