...
Expand |
---|
title | Connect it the component we want to test with - done! |
---|
|
See Linking components if you need a refresher. |
Now for a little extra flourish:
Expand |
---|
title | Add some custom logging |
---|
|
Let’s add some Custom Logging Just added lines 7 and 11 to the script: Code Block |
---|
| function main(Data)
local F = component.fields().InputFile
trace(F)
local Content = FILread(F)
local List = Content:split("\n")
trace(#List)
iguana.logInfo("#start About to queue "..#List.." messages");
for i=1, #List do
queue.push{data=List[i]}
end
iguana.logInfo("#end Finished queueing "..#List.." messages");
end |
See Concatenating strings for more on the “..“ notation to bring join strings together. |
Expand |
---|
title | And some custom status |
---|
|
See Custom Status Code Block |
---|
| require "FIL.FILreadWrite"
function Status(N, Total)
component.setStatus{data="Sending "..N.." of "..Total}
end
function StatusDone(Total)
component.setStatus{data="Completed sending "..Total.." messages."}
end
function main(Data)
local F = component.fields().InputFile
trace(F)
local Content = FILread(F)
local List = Content:split("\n")
trace(#List)
iguana.logInfo("#start About to queue "..#List.." messages");
for i=1, #List do
Status(i, #List)
queue.push{data=List[i]}
end
StatusDone(#List)
iguana.logInfo("#end Finished queueing "..#List.." messages");
end |
|
Expand |
---|
title | Couple of videos showing the component in action |
---|
|
This shows using the component and the internals: internals.mp4And this one shows using the logs from the component: logs.mp4 |
And now we have a simple tool that makes it easy to test our HL7 interfaces. But more importantly this exercise puts together a set of little concepts that once you grasp you can solve not only simple problems, but you can build up the skills to be able solve complex ones as well. There are no bottlenecks you cannot remove.