# HG changeset patch # User Sebastien Jodogne # Date 1418039790 -3600 # Node ID 54bf0f0245f4eb2f23e9b94fcb0503a82e11d1a9 # Parent aea9277dee75d6baf82b763afc0e3119ac16a475 refactoring diff -r aea9277dee75 -r 54bf0f0245f4 OrthancServer/DatabaseWrapper.cpp --- a/OrthancServer/DatabaseWrapper.cpp Mon Dec 08 12:42:50 2014 +0100 +++ b/OrthancServer/DatabaseWrapper.cpp Mon Dec 08 12:56:30 2014 +0100 @@ -657,27 +657,19 @@ } - void DatabaseWrapper::LogExportedResource(ResourceType resourceType, - const std::string& publicId, - const std::string& remoteModality, - const std::string& patientId, - const std::string& studyInstanceUid, - const std::string& seriesInstanceUid, - const std::string& sopInstanceUid, - const boost::posix_time::ptime& date) + void DatabaseWrapper::LogExportedResource(const ExportedResource& resource) { SQLite::Statement s(db_, SQLITE_FROM_HERE, "INSERT INTO ExportedResources VALUES(NULL, ?, ?, ?, ?, ?, ?, ?, ?)"); - s.BindInt(0, resourceType); - s.BindString(1, publicId); - s.BindString(2, remoteModality); - s.BindString(3, patientId); - s.BindString(4, studyInstanceUid); - s.BindString(5, seriesInstanceUid); - s.BindString(6, sopInstanceUid); - s.BindString(7, boost::posix_time::to_iso_string(date)); - + s.BindInt(0, resource.GetResourceType()); + s.BindString(1, resource.GetPublicId()); + s.BindString(2, resource.GetModality()); + s.BindString(3, resource.GetPatientId()); + s.BindString(4, resource.GetStudyInstanceUid()); + s.BindString(5, resource.GetSeriesInstanceUid()); + s.BindString(6, resource.GetSopInstanceUid()); + s.BindString(7, resource.GetDate()); s.Run(); } diff -r aea9277dee75 -r 54bf0f0245f4 OrthancServer/DatabaseWrapper.h --- a/OrthancServer/DatabaseWrapper.h Mon Dec 08 12:42:50 2014 +0100 +++ b/OrthancServer/DatabaseWrapper.h Mon Dec 08 12:56:30 2014 +0100 @@ -142,28 +142,21 @@ void LogChange(int64_t internalId, const ServerIndexChange& change); - void GetChanges(std::list& target /* out */, - bool& done /* out */, + void GetChanges(std::list& target /*out*/, + bool& done /*out*/, int64_t since, unsigned int maxResults); - void GetLastChange(std::list& target /* out */); + void GetLastChange(std::list& target /*out*/); - void LogExportedResource(ResourceType resourceType, - const std::string& publicId, - const std::string& remoteModality, - const std::string& patientId, - const std::string& studyInstanceUid, - const std::string& seriesInstanceUid, - const std::string& sopInstanceUid, - const boost::posix_time::ptime& date); + void LogExportedResource(const ExportedResource& resource); - void GetExportedResources(std::list& target /* out */, - bool& done /* out */, + void GetExportedResources(std::list& target /*out*/, + bool& done /*out*/, int64_t since, unsigned int maxResults); - void GetLastExportedResource(std::list& target /* out */); + void GetLastExportedResource(std::list& target /*out*/); uint64_t GetTotalCompressedSize(); diff -r aea9277dee75 -r 54bf0f0245f4 OrthancServer/ExportedResource.h --- a/OrthancServer/ExportedResource.h Mon Dec 08 12:42:50 2014 +0100 +++ b/OrthancServer/ExportedResource.h Mon Dec 08 12:56:30 2014 +0100 @@ -100,6 +100,26 @@ return date_; } + const std::string& GetPatientId() const + { + return patientId_; + } + + const std::string& GetStudyInstanceUid() const + { + return studyInstanceUid_; + } + + const std::string& GetSeriesInstanceUid() const + { + return seriesInstanceUid_; + } + + const std::string& GetSopInstanceUid() const + { + return sopInstanceUid_; + } + void Format(Json::Value& item) const { item = Json::objectValue; diff -r aea9277dee75 -r 54bf0f0245f4 OrthancServer/ServerIndex.cpp --- a/OrthancServer/ServerIndex.cpp Mon Dec 08 12:42:50 2014 +0100 +++ b/OrthancServer/ServerIndex.cpp Mon Dec 08 12:56:30 2014 +0100 @@ -1157,14 +1157,16 @@ } // No need for a SQLite::ITransaction here, as we only insert 1 record - db_->LogExportedResource(type, - publicId, - remoteModality, - patientId, - studyInstanceUid, - seriesInstanceUid, - sopInstanceUid, - boost::posix_time::second_clock::local_time()); + ExportedResource resource(-1, + type, + publicId, + remoteModality, + Toolbox::GetNowIsoString(), + patientId, + studyInstanceUid, + seriesInstanceUid, + sopInstanceUid); + db_->LogExportedResource(resource); }