comparison OrthancServer/ServerContext.cpp @ 1001:f3929718ea7e lua-scripting

autorouting primitives
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 04 Jul 2014 15:31:42 +0200
parents 4136fab6a639
children b067017a8a5b
comparison
equal deleted inserted replaced
1000:13e230bbd882 1001:f3929718ea7e
41 41
42 #include <glog/logging.h> 42 #include <glog/logging.h>
43 #include <EmbeddedResources.h> 43 #include <EmbeddedResources.h>
44 #include <dcmtk/dcmdata/dcfilefo.h> 44 #include <dcmtk/dcmdata/dcfilefo.h>
45 45
46
47 #include "Scheduler/DeleteInstanceCommand.h"
48 #include "Scheduler/StoreScuCommand.h"
49
50
51
46 #define ENABLE_DICOM_CACHE 1 52 #define ENABLE_DICOM_CACHE 1
47 53
48 static const char* RECEIVED_INSTANCE_FILTER = "ReceivedInstanceFilter"; 54 static const char* RECEIVED_INSTANCE_FILTER = "ReceivedInstanceFilter";
49 static const char* ON_STORED_INSTANCE = "OnStoredInstance"; 55 static const char* ON_STORED_INSTANCE = "OnStoredInstance";
50 56
129 call.ExecuteToJson(result); 135 call.ExecuteToJson(result);
130 136
131 printf("TODO\n"); 137 printf("TODO\n");
132 std::cout << result; 138 std::cout << result;
133 } 139 }
140
141 {
142 // Autorouting test
143 RemoteModalityParameters p = Configuration::GetModalityUsingSymbolicName("sample");
144
145 ServerJob job;
146 ServerCommandInstance& a = job.AddCommand(new StoreScuCommand(*this, p));
147 ServerCommandInstance& b = job.AddCommand(new DeleteInstanceCommand(*this));
148 a.AddInput(instanceId);
149 a.ConnectNext(b);
150
151 job.SetDescription("Autorouting test");
152 scheduler_.Submit(job);
153 }
134 } 154 }
135 155
136 156
137 StoreStatus ServerContext::Store(const char* dicomInstance, 157 StoreStatus ServerContext::Store(const char* dicomInstance,
138 size_t dicomSize, 158 size_t dicomSize,
194 } 214 }
195 215
196 if (status == StoreStatus_Success || 216 if (status == StoreStatus_Success ||
197 status == StoreStatus_AlreadyStored) 217 status == StoreStatus_AlreadyStored)
198 { 218 {
199 DicomInstanceHasher hasher(dicomSummary); 219 try
200 ApplyOnStoredInstance(simplified, hasher.HashInstance()); 220 {
221 DicomInstanceHasher hasher(dicomSummary);
222 ApplyOnStoredInstance(simplified, hasher.HashInstance());
223 }
224 catch (OrthancException&)
225 {
226 LOG(ERROR) << "Error when dealing with OnStoredInstance";
227 }
201 } 228 }
202 229
203 return status; 230 return status;
204 } 231 }
205 232