Skip to content

Commit 844d685

Browse files
committed
OrcLib: CommandMessage: add method MakeAbortMessage
1 parent d70088b commit 844d685

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

src/OrcLib/CommandMessage.cpp

+8
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ CommandMessage::CommandMessage(CommandMessage::CmdRequest request)
3030
: m_Request(request)
3131
, m_dwPid(0L)
3232
, m_QueueAction(Enqueue)
33+
, m_hProcess(NULL)
3334
{
3435
}
3536

@@ -46,6 +47,13 @@ CommandMessage::Message CommandMessage::MakeTerminateMessage(DWORD dwProcessID)
4647
return retval;
4748
}
4849

50+
CommandMessage::Message CommandMessage::MakeAbortMessage(HANDLE hProcess)
51+
{
52+
auto retval = std::make_shared<::CommandMessageT>(CommandMessage::Abort);
53+
retval->m_hProcess = hProcess;
54+
return retval;
55+
}
56+
4957
CommandMessage::Message CommandMessage::MakeTerminateAllMessage()
5058
{
5159
auto retval = std::make_shared<::CommandMessageT>(CommandMessage::TerminateAll);

src/OrcLib/CommandMessage.h

+4
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ class CommandMessage
7575
typedef enum _Request
7676
{
7777
Execute = 0,
78+
Abort,
7879
Terminate,
7980
QueryRunningList,
8081
RefreshRunningList,
@@ -110,6 +111,7 @@ class CommandMessage
110111
};
111112

112113
static Message MakeCancelMessage();
114+
static Message MakeAbortMessage(HANDLE hProcess);
113115
static Message MakeTerminateMessage(DWORD dwProcessID);
114116
static Message MakeCancelAnyPendingAndStopMessage();
115117
static Message MakeTerminateAllMessage();
@@ -202,6 +204,7 @@ class CommandMessage
202204
const std::wstring& Keyword() const { return m_Keyword; };
203205

204206
DWORD ProcessID() { return m_dwPid; };
207+
HANDLE ProcessHandle() const { return m_hProcess; }
205208

206209
bool operator<(const CommandMessage& message) { return m_Request < message.m_Request; }
207210

@@ -225,6 +228,7 @@ class CommandMessage
225228
std::optional<std::wstring> m_orcTool;
226229

227230
DWORD m_dwPid;
231+
HANDLE m_hProcess;
228232
std::optional<std::chrono::milliseconds> m_timeout;
229233
};
230234

0 commit comments

Comments
 (0)