summaryrefslogtreecommitdiff
path: root/src/XmlRpcRequestParserStateMachine.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2012-07-13 00:53:56 +0900
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2012-07-13 00:53:56 +0900
commit5352d76d4f24a8ad7096979f8f826a1dd0d8e5d7 (patch)
tree8e264bd34b3ab4052fe44a15c13cb6b2e31364b6 /src/XmlRpcRequestParserStateMachine.cc
parent70685bd233d5c32b9f762a5fc0e4d7fa42a013ee (diff)
Added reset() API to ParserStateMachine
Not unittested
Diffstat (limited to 'src/XmlRpcRequestParserStateMachine.cc')
-rw-r--r--src/XmlRpcRequestParserStateMachine.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/XmlRpcRequestParserStateMachine.cc b/src/XmlRpcRequestParserStateMachine.cc
index db3013f8..78fbf028 100644
--- a/src/XmlRpcRequestParserStateMachine.cc
+++ b/src/XmlRpcRequestParserStateMachine.cc
@@ -101,6 +101,15 @@ XmlRpcRequestParserStateMachine::~XmlRpcRequestParserStateMachine()
delete controller_;
}
+void XmlRpcRequestParserStateMachine::reset()
+{
+ controller_->reset();
+ while(!stateStack_.empty()) {
+ stateStack_.pop();
+ }
+ stateStack_.push(initialState);
+}
+
bool XmlRpcRequestParserStateMachine::needsCharactersBuffering() const
{
return stateStack_.top()->needsCharactersBuffering();