MIRTH-3046: Fixed issue that caused "Missed Context.javaToJS() conversion" Rhino warnings for certain Java objects that are passed into the $ map functions.
MIRTH-3050: Fixed issue that caused exports to be incorrect under certain circumstances. When any destination in the table is selected, the queue settings panel does a callback to ChannelSetup.saveDestinationPanel(), which updates the destination connector properties by grabbing them from the form. However the properties grabbed from the form are that of the *previously* selected destination, not the current one. So after loadConnector() runs, we need to call saveDestinationPanel() again to ensure that the current destination connector has the correct properties in all cases.
MIRTH-3042

With certain channel configurations, SQL Server will encounter a deadlock scenario unless we always update the channel stats row and update it before the connector stats. We determined that this is because SQL Server creates a page lock when the statistics update statement references the existing row values in order to increment them (RECEIVED = RECEIVED + ?). Other databases such as Postgres use only row locks in this situation so they were not deadlocking. The deadlock scenario was only confirmed to happen with a channel with multiple asynchronous destinations and destination queues enabled.

The JdbcDao.addChannelStatistics() method has been rewritten to ensure that the channel stats row is updated first before the connector rows and is always updated even if the numbers didn't change, thus preventing the SQL Server deadlock scenario.