MIRTH-3031: Fixed issue where "Message queued successfully" was being stored as the response content rather than the status message.
Added a HashMapConverter to be used by the XStreamSerializer in order to ensure that when the same HashMap is serialized multiple times, the order of the items in the map remains consistent in the serialized output.
Issue: MIRTH-3030
Show a simpler warning dialog when trying to save an alert with a name that already exists (Similar to the one for channel)

Fixed typo in DefaultAlertController

Fixed text that should have said "Alert" instead of "Channel" in Frame and CommandLineInterface
Issue: MIRTH-2908
MIRTH-2945

Reverted the previous commit related to this JIRA issue that made the LoadedExtensions.dashboardPanelPlugins field a LinkedHashMap, since that had an unintended side-effect with the ordering of the dashboard plugin tabs.

Instead, a setInitialDashboardTabComponent() method has been added to Frame, that will allow a dashboard plugin to set itself as the initially displayed tab.

This feature in the code is temporary and will be superceded by MIRTH-3034, in which the plugin with the greatest priority/weight will be the first one displayed.
MIRTH-3037

Added the ability for attachment handlers to override the re-attachment logic that is run immediately before a message is sent out from a destination connector.

Removed the MessageAttachmentUtil class and moved it's methods into a new MirthAttachmentHandler class, which is now the super class of the built-in attachment handlers. This way, attachment handlers can now override and extend the re-attachment logic.

Updated destination connectors and other places that previously called MessageAttachmentUtil to instead retrieve the attachment handler from the deployed channel and call the appropriate reAttach method.

Converted the AttachmentHandler abstract class into an interface since all of it's methods were abstract.

Added a PassthruAttachmentHandler so that destination connectors don't have to do null checks if an attachment handler isn't defined.
MIRTH-3037

Added the ability for attachment handlers to override the re-attachment logic that is run immediately before a message is sent out from a destination connector.

Removed the MessageAttachmentUtil class and moved it's methods into a new MirthAttachmentHandler class, which is now the super class of the built-in attachment handlers. This way, attachment handlers can now override and extend the re-attachment logic.

Updated destination connectors and other places that previously called MessageAttachmentUtil to instead retrieve the attachment handler from the deployed channel and call the appropriate reAttach method.

Converted the AttachmentHandler abstract class into an interface since all of it's methods were abstract.

Added a PassthruAttachmentHandler so that destination connectors don't have to do null checks if an attachment handler isn't defined.
MIRTH-3037

Added the ability for attachment handlers to override the re-attachment logic that is run immediately before a message is sent out from a destination connector.

Removed the MessageAttachmentUtil class and moved it's methods into a new MirthAttachmentHandler class, which is now the super class of the built-in attachment handlers. This way, attachment handlers can now override and extend the re-attachment logic.

Updated destination connectors and other places that previously called MessageAttachmentUtil to instead retrieve the attachment handler from the deployed channel and call the appropriate reAttach method.

Converted the AttachmentHandler abstract class into an interface since all of it's methods were abstract.

Added a PassthruAttachmentHandler so that destination connectors don't have to do null checks if an attachment handler isn't defined.
Updated the build to automatically add the following to all client-lib and extension jars:
Permissions: all-permissions
Codebase: *
Application-Name: Mirth Connect

Also unsigned bcprov-jdk16-144.jar and not-yet-commons-ssl-0.3.11.jar since we modify the manifest and the signatures are no longer valid.  We re-sign the jar after modifying the manifest during the build process.
Issue: MIRTH-2963
Unsigned ws jars since we modify the manifest and the signatures are no longer valid.  We re-sign the jars after modifying the manifest during the build process.
Issue: MIRTH-2963
Committed an already signed bcprov with a modified manfiest.  Exclude bcprov from being signed and having its manifest modified during the build process.  bcprov 1.5 will not need to be modified, and could be used instead when it is released.
Issue: MIRTH-2963
Updated bcprov to the latest 1.5 beta that already has the manifest changes necessary and is signed by BC.
Issue: MIRTH-2963
Moved getDefaults method in AttachmentHandlerFactory into AttachmentHandlerType

Removed getAttachmentHandler method in AttachmentHandlerFactory and moved the logic into DonkeyEngineController directly since it was only being called from one place.

Removed the static modifier on AttachmentHandlerType.getDefaultClassName and updated references accordingly

There shouldn't be anymore server classes being referenced by the client after this.
Issue: MIRTH-3037
Removed unused change to AbstractSortableTreeTableNode, which retrieved text from CellData as the Comparable.  Replaced it with checking if the key is a String, which it always is on the Dashboard, and changing it to lower case for comparison.
Issue: MIRTH-3040
MIRTH-3039: Fixed issue causing the "Send response to" migration to not work when persistent queuing was enabled on the 2.x destination. Instead of creating a new Channel Writer destination, migration now adds a response transformer with a single JavaScript step that does the routing with VMRouter. It also changes the response transformer data types to Raw, except when HL7 v2.x response validation is required.
MIRTH-3033: Added a local declaration to the "i" variable used in the validate function so it doesn't cause any conflicts.
MIRTH-3014: Deprecated ImmutableMessage.getReceivedDate().
MIRTH-2543

Fixed problem with how the WebAdmin connects to the server when authenticating users. Previously, it extracted the server address from the request URL, which could be incorrect if the client's network has routed the server's address/port to a different address or port that is not accessible by the WebAdmin. In that case, the user would be unable to log in via the WebAdmin.

It now determines the server's address from reading mirth.properties, which should resolve the above problem.
Fixed the filter pane so that moving a non-rule builder rule over a rule builder rule will not rename the former to the latter.

Fixed the transformer pane so that moving an external script or XSLT step over a mapper step will not rename the former to the latter.
Issue: MIRTH-2538
MIRTH-3044: The TCP Sender no longer automatically sets the status to QUEUED/ERROR when a TCP response was received but has an empty payload. Instead the status is set to SENT, to preserve the same behaviour as 2.x.
Updated the TCP, JMS, and Database dispatchers so they will only log a warning instead of error when the queue is on. This way users don't receive an error in the log for each send attempt.
Issue: MIRTH-2995