Mercurial > hg > orthanc
comparison OrthancServer/LuaScripting.cpp @ 3187:4bbadcd03966
refactoring retrieval of metadata from database
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Mon, 04 Feb 2019 12:06:19 +0100 |
parents | 4e43e67f8ecf |
children | dd1e68f2d0c0 |
comparison
equal
deleted
inserted
replaced
3184:5d1f5984dc41 | 3187:4bbadcd03966 |
---|---|
162 { | 162 { |
163 return; | 163 return; |
164 } | 164 } |
165 } | 165 } |
166 | 166 |
167 Json::Value tags, metadata; | 167 Json::Value tags; |
168 if (that.context_.GetIndex().LookupResource(tags, change_.GetPublicId(), change_.GetResourceType()) && | 168 |
169 that.context_.GetIndex().GetMetadata(metadata, change_.GetPublicId())) | 169 if (that.context_.GetIndex().LookupResource(tags, change_.GetPublicId(), change_.GetResourceType())) |
170 { | 170 { |
171 LuaScripting::Lock lock(that); | 171 std::map<MetadataType, std::string> metadata; |
172 | 172 that.context_.GetIndex().GetAllMetadata(metadata, change_.GetPublicId()); |
173 if (lock.GetLua().IsExistingFunction(name)) | 173 |
174 Json::Value formattedMetadata = Json::objectValue; | |
175 | |
176 for (std::map<MetadataType, std::string>::const_iterator | |
177 it = metadata.begin(); it != metadata.end(); ++it) | |
174 { | 178 { |
175 that.InitializeJob(); | 179 std::string key = EnumerationToString(it->first); |
176 | 180 formattedMetadata[key] = it->second; |
177 LuaFunctionCall call(lock.GetLua(), name); | 181 } |
178 call.PushString(change_.GetPublicId()); | 182 |
179 call.PushJson(tags["MainDicomTags"]); | 183 { |
180 call.PushJson(metadata); | 184 LuaScripting::Lock lock(that); |
181 call.Execute(); | 185 |
182 | 186 if (lock.GetLua().IsExistingFunction(name)) |
183 that.SubmitJob(); | 187 { |
188 that.InitializeJob(); | |
189 | |
190 LuaFunctionCall call(lock.GetLua(), name); | |
191 call.PushString(change_.GetPublicId()); | |
192 call.PushJson(tags["MainDicomTags"]); | |
193 call.PushJson(formattedMetadata); | |
194 call.Execute(); | |
195 | |
196 that.SubmitJob(); | |
197 } | |
184 } | 198 } |
185 } | 199 } |
186 } | 200 } |
187 }; | 201 }; |
188 | 202 |