ATLAS Offline Software
Loading...
Searching...
No Matches
ITransaction.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef INCLUDE_PERSISTENCYSVC_ITRANSACTION_H
6#define INCLUDE_PERSISTENCYSVC_ITRANSACTION_H
7
8/*
9 * POOL namespace declaration
10 */
11namespace pool {
12
20
22 protected:
24 virtual ~ITransaction() {}
25
26 public:
28 typedef enum { UNDEFINED,
31
33 virtual bool start( Type type = READ ) = 0;
34
36 virtual bool commit() = 0;
37
39 virtual bool commitAndHold() = 0;
40
42 virtual void rollback() = 0;
43
45 virtual bool isActive() const = 0;
46
48 virtual void update() = 0;
49
51 virtual Type type() const = 0;
52 };
53
54}
55
56#endif
57
ITransaction is the interface class for user (macroscopic transactions) Every operation with the pool...
virtual void rollback()=0
Rolls back the transaction.
virtual bool commitAndHold()=0
Commits the holds transaction.
Type
Transaction type enumeration.
virtual bool commit()=0
Commits the transaction.
virtual Type type() const =0
Returns the transaction type.
virtual void update()=0
Reverts to update mode.
virtual bool start(Type type=READ)=0
Starts a new transaction. Returns the success of the operation.
virtual ~ITransaction()
Default destructor.
virtual bool isActive() const =0
Checks if the transaction is active.
pool namespace
Definition libname.h:15