Basic Translator Concepts

The Importance of queue.push{}

The queue.push{} function is pivotal to your use of Iguana.

You will be using queue.push{} in most of your channels, it allows you to push text data to Iguana queue/log. This function is the the primary mechanism used to transfer data from a Source component to a Filter component, and from a Filter to a Destination component.

The usage is deceptively simple:

queue.push{data=Out}

Out is a string argument (for example, an HL7 message, an XML document, or simply a database row ID). Out will be pushed into Iguana’s queue, to be processed by the channel’s destination(s). The queue.push{} function can be called multiple times, so you can queue multiple output messages for each input message. If queue.push{} is never called, the input message will be “ignored”.

Note: Before Iguana 5.6 the behaviour of  queue.push{} was inconsistent. It could only be called once in a Filter component, though multiple calls were allowed in Source components. This limitation was removed in version 5.6, which now allows multiple call of queue.push{} in Source and Filter components.