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

00001 #ifndef CACHETRANSACTIONMANAGER_H_
00002 #define CACHETRANSACTIONMANAGER_H_
00003 
00004 /*=========================================================================
00005  * Copyright (c) 2002-2014 Pivotal Software, Inc. All Rights Reserved.
00006  * This product is protected by U.S. and international copyright
00007  * and intellectual property laws. Pivotal products are covered by
00008  * more patents listed at http://www.pivotal.io/patents.
00009  *
00010  * The specification of function behaviors is found in the corresponding .cpp file.
00011  *
00012  *========================================================================
00013  */
00014 
00015 //#### Warning: DO NOT directly include Region.hpp, include Cache.hpp instead.
00016 
00017 #include "gfcpp_globals.hpp"
00018 #include "gf_types.hpp"
00019 
00020 
00021 namespace gemfire {
00022 
00023 class CPPCACHE_EXPORT CacheTransactionManager: public gemfire::SharedBase {
00024 public:
00031         virtual void begin() = 0;
00032 
00059         virtual void commit() = 0;
00060 
00069         virtual void rollback() = 0;
00070 
00080     virtual TransactionIdPtr suspend() = 0;
00081  
00094     virtual void resume(TransactionIdPtr transactionId) = 0;
00095 
00106     virtual bool isSuspended(TransactionIdPtr transactionId) = 0;
00107 
00125      virtual bool tryResume(TransactionIdPtr transactionId) = 0;
00126 
00147      virtual bool tryResume(TransactionIdPtr transactionId, int32_t waitTimeInMilliSec) = 0;
00148      
00160     virtual bool exists(TransactionIdPtr transactionId) = 0;
00161 
00168     virtual TransactionIdPtr getTransactionId() = 0;
00169 
00176           virtual bool exists() = 0;
00177 
00178 protected:
00179         CacheTransactionManager();
00180         virtual ~CacheTransactionManager();
00181 };
00182 
00183 }
00184 
00185 #endif /* CACHETRANSACTIONMANAGER_H_ */

GemFire C++ Cache API Documentation