Mercurial > hg > orthanc-databases
comparison Framework/Common/DatabaseManager.h @ 157:275e14f57f1e
replacing deprecated std::auto_ptr by std::unique_ptr
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Mon, 06 Jul 2020 12:45:58 +0200 |
parents | 063aa53b5917 |
children | 3236894320d6 |
comparison
equal
deleted
inserted
replaced
156:710537acb488 | 157:275e14f57f1e |
---|---|
22 #pragma once | 22 #pragma once |
23 | 23 |
24 #include "IDatabaseFactory.h" | 24 #include "IDatabaseFactory.h" |
25 #include "StatementLocation.h" | 25 #include "StatementLocation.h" |
26 | 26 |
27 #include <Compatibility.h> // For std::unique_ptr<> | |
27 #include <Enumerations.h> | 28 #include <Enumerations.h> |
28 | 29 |
29 #include <boost/thread/recursive_mutex.hpp> | 30 #include <boost/thread/recursive_mutex.hpp> |
30 #include <memory> | 31 #include <memory> |
31 | 32 |
35 { | 36 { |
36 private: | 37 private: |
37 typedef std::map<StatementLocation, IPrecompiledStatement*> CachedStatements; | 38 typedef std::map<StatementLocation, IPrecompiledStatement*> CachedStatements; |
38 | 39 |
39 boost::recursive_mutex mutex_; | 40 boost::recursive_mutex mutex_; |
40 std::auto_ptr<IDatabaseFactory> factory_; | 41 std::unique_ptr<IDatabaseFactory> factory_; |
41 std::auto_ptr<IDatabase> database_; | 42 std::unique_ptr<IDatabase> database_; |
42 std::auto_ptr<ITransaction> transaction_; | 43 std::unique_ptr<ITransaction> transaction_; |
43 CachedStatements cachedStatements_; | 44 CachedStatements cachedStatements_; |
44 Dialect dialect_; | 45 Dialect dialect_; |
45 | 46 |
46 IDatabase& GetDatabase(); | 47 IDatabase& GetDatabase(); |
47 | 48 |
115 { | 116 { |
116 private: | 117 private: |
117 DatabaseManager& manager_; | 118 DatabaseManager& manager_; |
118 boost::recursive_mutex::scoped_lock lock_; | 119 boost::recursive_mutex::scoped_lock lock_; |
119 ITransaction& transaction_; | 120 ITransaction& transaction_; |
120 std::auto_ptr<Query> query_; | 121 std::unique_ptr<Query> query_; |
121 std::auto_ptr<IResult> result_; | 122 std::unique_ptr<IResult> result_; |
122 | 123 |
123 IResult& GetResult() const; | 124 IResult& GetResult() const; |
124 | 125 |
125 protected: | 126 protected: |
126 DatabaseManager& GetManager() const | 127 DatabaseManager& GetManager() const |
198 | 199 |
199 | 200 |
200 class StandaloneStatement : public StatementBase | 201 class StandaloneStatement : public StatementBase |
201 { | 202 { |
202 private: | 203 private: |
203 std::auto_ptr<IPrecompiledStatement> statement_; | 204 std::unique_ptr<IPrecompiledStatement> statement_; |
204 | 205 |
205 public: | 206 public: |
206 StandaloneStatement(DatabaseManager& manager, | 207 StandaloneStatement(DatabaseManager& manager, |
207 const std::string& sql); | 208 const std::string& sql); |
208 | 209 |