build-artifacts/win/product/include/gfcpp/UserFunctionExecutionException.hpp

00001 /*=========================================================================
00002  * Copyright (c) 2010-2014 Pivotal Software, Inc. All Rights Reserved.
00003  * This product is protected by U.S. and international copyright
00004  * and intellectual property laws. Pivotal products are covered by
00005  * one or more patents listed at http://www.pivotal.io/patents.
00006  *=========================================================================
00007  */
00008 #ifndef USER_FUNCTION_EXECUTION_EXCEPTION
00009 #define USER_FUNCTION_EXECUTION_EXCEPTION
00010 
00011 #include "Serializable.hpp"
00012 #include "CacheableString.hpp"
00013 
00014 namespace gemfire
00015 {
00016   class UserFunctionExecutionException;
00017   typedef SharedPtr<UserFunctionExecutionException> UserFunctionExecutionExceptionPtr;
00018 
00022   class UserFunctionExecutionException : public Serializable {
00023 
00028   public:
00032     virtual ~UserFunctionExecutionException() { }
00033 
00037     UserFunctionExecutionException(CacheableStringPtr msg);
00038 
00043     virtual void toData( DataOutput& output ) const;
00044 
00050     virtual Serializable* fromData( DataInput& input );
00051 
00061     virtual int32_t classId( ) const ;
00062 
00072     virtual uint32_t objectSize() const;
00073 
00082     virtual int8_t typeId( ) const;
00083 
00087     CacheableStringPtr getMessage() {
00088       return m_message;
00089     }
00090 
00094     CacheableStringPtr getName() {
00095       const char* msg = "UserFunctionExecutionException";
00096       CacheableStringPtr str = CacheableString::create(msg);
00097       return str;
00098     }
00099 
00100   private:
00101     // never implemented.
00102     UserFunctionExecutionException(const UserFunctionExecutionException& other);
00103     void operator =(const UserFunctionExecutionException& other);
00104 
00105     CacheableStringPtr m_message; //error message
00106 
00107   };
00108 
00109 
00110 }
00111 #endif

GemFire C++ Cache API Documentation