Thrift-1334: Add more info to IllegalStateException
Client cpp
Patch: Dave Watson

Add support for the message field in IllegalStateException



git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1166992 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/lib/cpp/src/concurrency/ThreadManager.cpp b/lib/cpp/src/concurrency/ThreadManager.cpp
index f7b2690..e56a9b5 100644
--- a/lib/cpp/src/concurrency/ThreadManager.cpp
+++ b/lib/cpp/src/concurrency/ThreadManager.cpp
@@ -467,7 +467,8 @@
     }
 
     if (state_ != ThreadManager::STARTED) {
-      throw IllegalStateException();
+      throw IllegalStateException("ThreadManager::Impl::add ThreadManager "
+                                  "not started");
     }
 
     removeExpiredTasks();
@@ -495,14 +496,16 @@
   (void) task;
   Synchronized s(monitor_);
   if (state_ != ThreadManager::STARTED) {
-    throw IllegalStateException();
+    throw IllegalStateException("ThreadManager::Impl::remove ThreadManager not "
+                                "started");
   }
 }
 
 boost::shared_ptr<Runnable> ThreadManager::Impl::removeNextPending() {
   Guard g(mutex_);
   if (state_ != ThreadManager::STARTED) {
-    throw IllegalStateException();
+    throw IllegalStateException("ThreadManager::Impl::removeNextPending "
+                                "ThreadManager not started");
   }
 
   if (tasks_.empty()) {