The "Airline" library we're currently using is deprecated according the
GitHub project - https://github.com/airlift/airline. It recommends using
either Airline 2 or Picocli. The former offers the simplest migration
path as it's almost completely compatible with the current code. This
commit implements that migration.
When resource audit logging is enabled STOMP is completely inoperable
due to an NPE during the protocol handshake. Unfortunately the failure
is completely silent. There are no logs to indicate a problem.
This commit fixes this problem via the following changes:
- Mitigate the original NPE via a check for null
- Move the logic necessary to set the "protocol connection" on the
"transport connection" to a class shared by all implementations.
- Add exception handling to log failures like this in the future.
- Add tests to ensure the audit logging is correct.
Currently JavaDoc is generated for many classes that don't need it.
JavaDoc should be reserved for user-facing classes (e.g. those used by
client application developers and developers embedding a broker into
their application). This commit narrows down the configuration to just
the classes that are needed. This will save time during release builds,
and save disk space wherever these files are stored (e.g. Apache
website).
`org.apache.activemq.artemis.core.server.embedded.MainTest` expects the
broker to throw a `java.io.IOException` when it is started due to its
inability to find the file app/data/server.lock. However, if that files
just happens to exist then the test will simply hang indefinitely. This
commit adds a timeout to avoid hanging.
When installing artemis on windows as a service, if your chosen
installation path contained a space, then an extra escape
character (%) was being inserted in the generated
artemis-service.xml, causing the service to fail to start.
This fix changes the value of ARTEMIS_INSTANCE_ETC_URI in that file
from "artemis.instance.etc.uri.windows" to "artemis.instance.etc.uri"
to get rid of that unnecessary escape character.