Verifies the integrety of the projects, as builds are executed immediately after a code change was detected. This plan provides no artifiacts (use a nightly build instead).

Build: #2152 was successful Changes by Guus der Kinderen and Dave Cridland <dave@forwardhealth.co>

Build result summary

Details

Completed
Queue duration
< 1 second
Duration
1 minute
Labels
None
Agent
Default Agent
Revision
308cbfdcd30156999e1aca80ee79fc39da35f085
Total tests
456
Successful since
#2137 ()

Tests

Code commits

Author Commit Message Commit date
Guus der Kinderen Guus der Kinderen b1ae978bdc0d75391bd967e139762decb6aa9c7c OF-2269: Rewire SAXReader creation
This commit replaces individual snippets that create/use a SAXReader instance with one that's provided by the new utility implementation.

I'm aware that this undoes a bit of the change that was implemented as part of OF-2259. As part of those changes, the same SAXReader instance was used to parse all data for a collection of items (instead of recreating a new parser for each item). In the changes I'm making here, this is replaced by scheduling a task in an ExecutorService for each item, blocking for it to be processed by a reusable parser, before moving to the next item. Although more involved, this should still perform a lot better than recreating a parser for each item.
Dave Cridland <dave@forwardhealth.co> Dave Cridland <dave@forwardhealth.co> 4bfdaf6cd689ed542e7fe91c24f138a59e559b56 Store and retrieve subscription request stanzas
This change means that subscription requests are stored and
resent verbatim on login.
Guus der Kinderen Guus der Kinderen 308cbfdcd30156999e1aca80ee79fc39da35f085 OF-2244: Store stanza in database
This commit ensures that the stanza of a presence subscribe request is actually stored in the database (as opposed to only be added in memory, without that change being pushed to the database.

Additionally, the stanza should:
- only be present in the roster item for the receiving entity
- be removed from the database after the request has been rejected or accepted (to not fill up the database with stale data)
Guus der Kinderen Guus der Kinderen 1cd0d3a8fd9737fb4798c31d4b9b051c9d7ee5af OF-2269: Have uniform API to create a suitable SAXReader instance
SAXReader instances, used to parse XML, are created all over the place. They need a bit of specific configuration to circumvent vulnerabilities. Often, their lifecycle needs to be maintained, as their creation is resource intensive. All of this should be put in one central utility, instead of live as re-invented wheel fragments all over the place.
Guus der Kinderen Guus der Kinderen 5ee847b1434521c4f699b47c734b46ef54d7384f OF-2269: Caught InterruptExceptions shouldn't be hidden
The rewrite of SAXReader utilization introduces a new source of potential InterruptExceptions. This occurs when 'someone' wants to the thread to stop execution. By catching this as a regular exception, the code at hand will handle that scenario as appropriate, but will also hide the fact that 'someone' wants to stop the thread from its own invocator. To let the caller know that someone wants to stop the thread from execution, the interrupt flag should be set. See https://programming.guide/java/handling-interrupted-exceptions.html for more rationale.

Jira issues

IssueDescriptionStatus
Unknown Issue TypeOF-2244Could not obtain issue details from Jira
Unknown Issue TypeOF-2259Could not obtain issue details from Jira
Unknown Issue TypeOF-2269Could not obtain issue details from Jira