Generates the latest/greatest Maven-based artifacts for the Openfire project, every night.

Build: #726 was successful Scheduled with changes by 4 people

Stages & jobs

  1. Build and Package

  2. Deploy

  3. copy nightlies to website

Build result summary


Queue duration
56 seconds
3 minutes
Total tests
Successful since
#497 ()


Code commits

Author Commit Message Commit date
Greg Thomas <> Greg Thomas <> d6d902d247e6826db3a3788e00ec015d343cd456 OF-1682: Don't double escape XML entities
Guus der Kinderen Guus der Kinderen 1976c9385515a4e1e9181d7867b666931bdc07d3 OF-1700: When stopping the manager, cleanly shut down its components.
When a manager of components is stopped, its managed components should also be gracefully stopped.

My assumption is that this didn't occur, as ordinarily, stopping a manager indicates a shutdown of Openfire, in which all components are stopped anyways.

In a clustered setup, it is desirable to have components shut down gracefully. An important effect of this is that other cluster nodes are notified of the shutdown.
Guus der Kinderen Guus der Kinderen 054f99881b6d37ebff1702c9db6eb33e08c5425a OF-1707: Should not send disco#info to already available components.
Openfire allows more than one instance of a component to operate behind a JID. This is mainly used for load-distribution.

When a new Component connects, a service discovery request is sent to it. Its response is used to trigger event listeners.

If the subdomain of the component is already active (if another than the first component connects for a domain), then doing service discovery is not needed. The response triggers unwanted events in registered ComponentEventListener instances.
Guus der Kinderen Guus der Kinderen c867511fd144058f8c3dc3c54e91b38cd6326144 OF-1700: Clean Component caches when cluster nodes go down.
Cluster nodes retain state related to external components that were connected to cluster nodes after those nodes have gone offline. This is undesirable, as it does not reflect the runtime environment.

This commit:
- Introduces a utility class that hides the complexity of working with various Cache implementations.
- Removes local component data from clustered caches when the local node is shut down (controlled shutdown).
- Removes remote component data from clustered caches when a remote node is shut down (uncontrolled network issues).

Notable omissions not fixed by this commit:
- ComponentEventListener instances are not invoked.
- Other caches (unrelated to components) in the same classes likely benefit from these changes.

My intention is to first complete work on the issue of clustered Component state, after which the same principles can be applied to other caches.
Guus der Kinderen Guus der Kinderen 12344f236bf8801b7092863cc99edb48b94894da Refactoring: add values to multi-valued cache.
OF-1700 and OF-1701 introduced new utility methods to remove elements from a multi-valued cache. To reduce boilerplate code, a similar construct should be used for adding elements to such a cache.

Jira issues

13 more issues…
Unknown Issue TypeOF-874Could not obtain issue details from Jira
Unknown Issue TypeOF-1682Could not obtain issue details from Jira
Unknown Issue TypeOF-1686Could not obtain issue details from Jira
Unknown Issue TypeOF-1695Could not obtain issue details from Jira
Unknown Issue TypeOF-1698Could not obtain issue details from Jira