comparison OrthancServer/DatabaseWrapper.cpp @ 198:663cc6c46d0a

before refactoring of ServerIndex::GetXXX
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 27 Nov 2012 15:49:42 +0100
parents 530a25320461
children dfa2899d9960
comparison
equal deleted inserted replaced
197:530a25320461 198:663cc6c46d0a
229 229
230 return true; 230 return true;
231 } 231 }
232 } 232 }
233 233
234 bool DatabaseWrapper::LookupParent(int64_t& parentId,
235 int64_t resourceId)
236 {
237 SQLite::Statement s(db_, SQLITE_FROM_HERE,
238 "SELECT parentId FROM Resources WHERE internalId=?");
239 s.BindInt(0, resourceId);
240
241 if (!s.Step())
242 {
243 throw OrthancException(ErrorCode_UnknownResource);
244 }
245
246 if (s.ColumnIsNull(0))
247 {
248 return false;
249 }
250 else
251 {
252 parentId = s.ColumnInt(0);
253 return true;
254 }
255 }
256
257 std::string DatabaseWrapper::GetPublicId(int64_t resourceId)
258 {
259 SQLite::Statement s(db_, SQLITE_FROM_HERE,
260 "SELECT publicId FROM Resources WHERE internalId=?");
261 s.BindInt(0, resourceId);
262
263 if (!s.Step())
264 {
265 throw OrthancException(ErrorCode_UnknownResource);
266 }
267
268 return s.ColumnString(0);
269 }
270
234 void DatabaseWrapper::AttachChild(int64_t parent, 271 void DatabaseWrapper::AttachChild(int64_t parent,
235 int64_t child) 272 int64_t child)
236 { 273 {
237 SQLite::Statement s(db_, SQLITE_FROM_HERE, "UPDATE Resources SET parentId = ? WHERE internalId = ?"); 274 SQLite::Statement s(db_, SQLITE_FROM_HERE, "UPDATE Resources SET parentId = ? WHERE internalId = ?");
238 s.BindInt(0, parent); 275 s.BindInt(0, parent);