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

Build: #1105 was successful Scheduled with changes by 3 people

Stages & jobs

  1. Build and Package

  2. Deploy

  3. copy nightlies to website

Code commits

Openfire (master)

  • Guus der Kinderen

    Guus der Kinderen 5c1e833621f72c69a8311838463fee5530bed45c

    Merge pull request #1606 from Neustradamus/bouncycastle
    OF-1997: Bouncy Castle 1.65 instead of 1.64

  • Neustradamus <104737+Neustradamus@users.noreply.github.com>

    Neustradamus <104737+Neustradamus@users.noreply.github.com> 14a953fc34fb01c3fc4fb5d51f1afdb99e626598

    Bouncy Castle 1.65 instead of 1.64
    Bouncy Castle 1.65 instead of 1.64: https://www.bouncycastle.org/releasenotes.html
    - http://www.bouncycastle.org/latest_releases.html

    • pom.xml (version 14a953fc34fb01c3fc4fb5d51f1afdb99e626598)
  • Guus der Kinderen

    Guus der Kinderen 18594e198288cf0b2258d195a081d77c1f0fb29b

    OF-1992: Interpret a 'to' value that matches the XMPP domain as 'addressed to service'

    • xmppserver/src/main/java/org/jivesoftware/openfire/pep/IQPEPHandler.java (version 18594e198288cf0b2258d195a081d77c1f0fb29b)
  • Guus der Kinderen

    Guus der Kinderen b0046ee1d4ee4c6189569ec808793060ee068f6d

    OF-1989: Improve serializability of pubsub entities.

    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/Node.java (version b0046ee1d4ee4c6189569ec808793060ee068f6d)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/models/AccessModel.java (version b0046ee1d4ee4c6189569ec808793060ee068f6d)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/models/PublisherModel.java (version b0046ee1d4ee4c6189569ec808793060ee068f6d)
  • Guus der Kinderen

    Guus der Kinderen 6b06e597a8dfb845d4ba4074ca9c1f635ab30e55

    OF-1985: Split complex method in distinct parts

    • xmppserver/src/main/java/org/jivesoftware/openfire/pep/IQPEPHandler.java (version 6b06e597a8dfb845d4ba4074ca9c1f635ab30e55)
  • Guus der Kinderen

    Guus der Kinderen 69ca758aced91a790bbe04f5cb5178766c6c78a5

    Do not use Cached provider when running in cluster.
    The cache implementation is not compatible with clustering. This commit defaults to the cached provider only when not running in a cluster.

    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubPersistenceProviderManager.java (version 69ca758aced91a790bbe04f5cb5178766c6c78a5)
  • Guus der Kinderen

    Guus der Kinderen 2df54784e66935e998ab2a4886a7dfea6443af47

    OF-1989: Add in-memory pubsub persistence provider.
    A new persistence provider for pubsub data that operates in-memory only. This is intended to be a high-performance provider, but data won't survive JVM restarts.

    Note that this implementation needs additional work to make it function properly in a cluster.

    • src/java/org/jivesoftware/openfire/pubsub/InMemoryPubSubPersistenceProvider.java (version 2df54784e66935e998ab2a4886a7dfea6443af47)
  • Guus der Kinderen

    Guus der Kinderen 0bc6f52bbe850a31842c738518dce8bede7ce39a

    Use more of the type-safe UniqueIdentifier types where practical.

    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/CachingPubsubPersistenceProvider.java (version 0bc6f52bbe850a31842c738518dce8bede7ce39a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/DefaultPubSubPersistenceProvider.java (version 0bc6f52bbe850a31842c738518dce8bede7ce39a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/InMemoryPubSubPersistenceProvider.java (version 0bc6f52bbe850a31842c738518dce8bede7ce39a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/LeafNode.java (version 0bc6f52bbe850a31842c738518dce8bede7ce39a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/Node.java (version 0bc6f52bbe850a31842c738518dce8bede7ce39a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubPersistenceProvider.java (version 0bc6f52bbe850a31842c738518dce8bede7ce39a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PublishedItem.java (version 0bc6f52bbe850a31842c738518dce8bede7ce39a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/cluster/RefreshNodeTask.java (version 0bc6f52bbe850a31842c738518dce8bede7ce39a)
  • Guus der Kinderen

    Guus der Kinderen 12bc4f66c9be8f36703771562facaebd6a79a2e0

    OF-1985: Pubsub Node decoupling
    Instead of doing Service-based lookups in the constructor of Node, do these lookups before calling the constructor. This aims to decouple Node from Service. There should not be any functional change, although API changes are introduced by this commit.

    • xmppserver/src/main/java/org/jivesoftware/openfire/pep/IQPEPHandler.java (version 12bc4f66c9be8f36703771562facaebd6a79a2e0)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pep/PEPService.java (version 12bc4f66c9be8f36703771562facaebd6a79a2e0)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/CollectionNode.java (version 12bc4f66c9be8f36703771562facaebd6a79a2e0)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/DefaultPubSubPersistenceProvider.java (version 12bc4f66c9be8f36703771562facaebd6a79a2e0)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/LeafNode.java (version 12bc4f66c9be8f36703771562facaebd6a79a2e0)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/Node.java (version 12bc4f66c9be8f36703771562facaebd6a79a2e0)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubEngine.java (version 12bc4f66c9be8f36703771562facaebd6a79a2e0)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubModule.java (version 12bc4f66c9be8f36703771562facaebd6a79a2e0)
  • Guus der Kinderen

    Guus der Kinderen 1edb3b9906cd50154ba440000e7fde6c7d7229d6

    OF-1989: Make in-memory pubsub implementation compatible with clustering.
    This commit primarily adds Serialization to various pubsub implementations, and utilizes that to make state of the new in-memory pubsub provider shareable in a cluster.

    To facilite this, a 'unique identifier' class was added to each of the three primary pubsub entities: service, node and item.

    The in-memory implementation makes use of multi-valued caches. To properly process thier modification, the CacheUtil class that was originally implemented as part of OF-1700 is added to this commit.

    • xmppserver/src/main/java/org/jivesoftware/openfire/pep/IQPEPHandler.java (version 1edb3b9906cd50154ba440000e7fde6c7d7229d6)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pep/PEPServiceManager.java (version 1edb3b9906cd50154ba440000e7fde6c7d7229d6)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/CollectionNode.java (version 1edb3b9906cd50154ba440000e7fde6c7d7229d6)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/DefaultPubSubPersistenceProvider.java (version 1edb3b9906cd50154ba440000e7fde6c7d7229d6)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/InMemoryPubSubPersistenceProvider.java (version 1edb3b9906cd50154ba440000e7fde6c7d7229d6)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/LeafNode.java (version 1edb3b9906cd50154ba440000e7fde6c7d7229d6)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/Node.java (version 1edb3b9906cd50154ba440000e7fde6c7d7229d6)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/NodeAffiliate.java (version 1edb3b9906cd50154ba440000e7fde6c7d7229d6)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubPersistenceProvider.java (version 1edb3b9906cd50154ba440000e7fde6c7d7229d6)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubService.java (version 1edb3b9906cd50154ba440000e7fde6c7d7229d6)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PublishedItem.java (version 1edb3b9906cd50154ba440000e7fde6c7d7229d6)
  • Guus der Kinderen

    Guus der Kinderen 9db3b2abed7c0dc970e662f01db74e650783802e

    OF-1869: Announce PEP features via Service Discovery

    • xmppserver/src/main/java/org/jivesoftware/openfire/pep/IQPEPHandler.java (version 9db3b2abed7c0dc970e662f01db74e650783802e)
  • Guus der Kinderen

    Guus der Kinderen f7a870b05824ce2335a76736e9ecb4b69b42d321

    OF-1988: Introduce pluggable 'provider' mechanism for PubSub perisistency.
    This commit replaces the static methods that store PubSub data in the database with a provider for such data-peristency functionality. This is not unlike the provider mechanism that is available for things like Users, Groups and Admins.

    Additionally, bug fixes / improvements have been applied to earlier work. Notably, the identification of Node instances now no longer is based solely on the Node ID field (which is only unique in context of one service). Instead, an "unique identifier" is used, that combines server ID and node ID.

    • xmppserver/src/main/java/org/jivesoftware/openfire/pep/PEPService.java (version f7a870b05824ce2335a76736e9ecb4b69b42d321)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/DefaultNodeConfiguration.java (version f7a870b05824ce2335a76736e9ecb4b69b42d321)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/LeafNode.java (version f7a870b05824ce2335a76736e9ecb4b69b42d321)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/Node.java (version f7a870b05824ce2335a76736e9ecb4b69b42d321)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/NodeSubscription.java (version f7a870b05824ce2335a76736e9ecb4b69b42d321)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubEngine.java (version f7a870b05824ce2335a76736e9ecb4b69b42d321)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubModule.java (version f7a870b05824ce2335a76736e9ecb4b69b42d321)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubPersistenceManager.java (version f7a870b05824ce2335a76736e9ecb4b69b42d321)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubPersistenceProvider.java (version f7a870b05824ce2335a76736e9ecb4b69b42d321)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubPersistenceProviderManager.java (version f7a870b05824ce2335a76736e9ecb4b69b42d321)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/cluster/FlushTask.java (version f7a870b05824ce2335a76736e9ecb4b69b42d321)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/cluster/ModifySubscriptionTask.java (version f7a870b05824ce2335a76736e9ecb4b69b42d321)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/cluster/RefreshNodeTask.java (version f7a870b05824ce2335a76736e9ecb4b69b42d321)
  • Guus der Kinderen

    Guus der Kinderen f60dc60f576df5e07855f14bd6ce74c17031e9df

    Renamed PubSubPersistenceManager -> DefaultPubSubPersistenceProvider
    With the introduction of a 'pluggable' provider mechanism for PubSub persistence, the only implementation that was available up until now will get siblings.

    To prepare for this, the original implementation has been renamed according to the convention used by similar mechanisms.

    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/DefaultPubSubPersistenceProvider.java (version f60dc60f576df5e07855f14bd6ce74c17031e9df)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubPersistenceProviderManager.java (version f60dc60f576df5e07855f14bd6ce74c17031e9df)
  • Guus der Kinderen

    Guus der Kinderen 9c7f4693887814c911d357a59ca179c941efea56

    fix typo

    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubService.java (version 9c7f4693887814c911d357a59ca179c941efea56)
  • Guus der Kinderen

    Guus der Kinderen 8d2326c905b7c908b95f99d56e9dc2a25dd0a96d

    Prevent NPE when auto-creating PEP service

    • xmppserver/src/main/java/org/jivesoftware/openfire/pep/PEPServiceManager.java (version 8d2326c905b7c908b95f99d56e9dc2a25dd0a96d)
  • Guus der Kinderen

    Guus der Kinderen cc16c6f2538b7928a81bd026f791dcf49cecaae7

    OF-1985: Refactoring: split 'save' operations in distinct 'create' and 'update'
    The PubSubPersistenceManager had two 'upsert'-style methods. This commit replaces those with distinct 'insert' and 'update' alternatives, which helps to separate concerns.

    The existing methods are retained, now marked as deprecated.

    This commit should not have introduced a functional change.

    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/Node.java (version cc16c6f2538b7928a81bd026f791dcf49cecaae7)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/NodeSubscription.java (version cc16c6f2538b7928a81bd026f791dcf49cecaae7)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubPersistenceManager.java (version cc16c6f2538b7928a81bd026f791dcf49cecaae7)
  • Guus der Kinderen

    Guus der Kinderen dc59d70439554666dedfe067250dd956152ba2ee

    OF-1990: pubsub: split cache from persistence
    Historically, the database-based Pubsub persistence provider relies on heavy caching. This mechanism is complex and therefor error prone. It's also not needed for light usage.

    This commit splits off the caching implementation from the database-based pubsub persistence provider, into a provider that can be used as a proxy to other providers (to add a layer of caching to the delegated provider). This reduces the code complexity of the database-based implementation, and, by isolating caching code in a dedicated class, allows for easier maintenance of that code too.

    This brings these additional changes:
    - the 'retry' functionality (where failed database writes are retried a configurable amount of time) has been removed.
    - 'flush' functionality, that only exists to the state of persistent storage in line with caches, has been moved out of the interface definition (it now lives solely in the CachingPubsubPersistenceProvider)

    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/CachingPubsubPersistenceProvider.java (version dc59d70439554666dedfe067250dd956152ba2ee)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/DefaultPubSubPersistenceProvider.java (version dc59d70439554666dedfe067250dd956152ba2ee)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/InMemoryPubSubPersistenceProvider.java (version dc59d70439554666dedfe067250dd956152ba2ee)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubPersistenceProvider.java (version dc59d70439554666dedfe067250dd956152ba2ee)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubPersistenceProviderManager.java (version dc59d70439554666dedfe067250dd956152ba2ee)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/cluster/FlushTask.java (version dc59d70439554666dedfe067250dd956152ba2ee)
  • Guus der Kinderen

    Guus der Kinderen 8c27e0d6cb2a3b343cca04a4dbab3659fd7219df

    Add unit test that verify Node serialization.

    • xmppserver/src/test/java/org/jivesoftware/openfire/pubsub/CollectionNodeTest.java (version 8c27e0d6cb2a3b343cca04a4dbab3659fd7219df)
    • xmppserver/src/test/java/org/jivesoftware/openfire/pubsub/LeafNodeTest.java (version 8c27e0d6cb2a3b343cca04a4dbab3659fd7219df)
  • Guus der Kinderen

    Guus der Kinderen 26c6af35d9ae3d9f97cceb2681abc923bedf1cd2

    OF-1988: Use SystemProperty instead of JiveGlobals

    • i18n/src/main/resources/openfire_i18n.properties (version 26c6af35d9ae3d9f97cceb2681abc923bedf1cd2)
    • i18n/src/main/resources/openfire_i18n_nl.properties (version 26c6af35d9ae3d9f97cceb2681abc923bedf1cd2)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubPersistenceProviderManager.java (version 26c6af35d9ae3d9f97cceb2681abc923bedf1cd2)
  • Guus der Kinderen

    Guus der Kinderen e07dffc7a8007c36b7f591ed639052d94cb33087

    OF-1990: Use SystemProperty instead of JiveGlobals

    • i18n/src/main/resources/openfire_i18n.properties (version e07dffc7a8007c36b7f591ed639052d94cb33087)
    • i18n/src/main/resources/openfire_i18n_nl.properties (version e07dffc7a8007c36b7f591ed639052d94cb33087)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/CachingPubsubPersistenceProvider.java (version e07dffc7a8007c36b7f591ed639052d94cb33087)
  • Guus der Kinderen

    Guus der Kinderen 0ae3a1a7518cf6efb06cc48ceee12c27bf2b2d8c

    OF-1987: Pubsub: add database caching mechanism.
    This commit is the foundation of work that adds (more) database caching to Pubsub. The objective is to depend less on database IO before an IQ result on a pubsub request can be made.

    The existing implementation already included some of this, but this was applied only to items being published/removed.

    This commit adds a similar concept to the acts of:
    - creation, update and removal of a node;
    - creation, update and removal of a node affiliation;
    - creation, update and removal of a node subscription;
    - creation, update and removal of (default) service configuration.

    Flushing of pending work is tied into the pre-existing flush mechanism for pending items. This mechanism was extended to allow for flushes of items of a certain node only (the original code always required everyting to be flushed to the database).

    An API change was introduced: deletion of a node returned a success indication (a boolean). As the implementation now is asynchronous, that indication is no longer available.

    TODOs:
    - Functional testing. None has been done at the time of writing this commit message.
    - The additions made in this commit are not thread safe, but should be. In particular with regards to the 'nodesToProcess' work list.
    - Flushing of a single node might not have the desired effect. What if that node was part of a hierarchy? Shouldn't that entire tree be flushed? Maybe a sensible middle-ground between 'flush everything' and 'flush only one node' is: 'flush all nodes from a particular service'.
    - When doing a cluster-wide flush, determine if it's sensible to first ensure that all cluster nodes have processed all (pubsub) nodes, before allowing every node to start process pending items.
    - database actions that create or update node affiliations are combined in one method. That should be split into two. Same for node subscriptions.
    - split off the 'caching' code from the persistent manager, to reduce the complexity of this class. One way of doing this would be to create a PubSubPersistentManager interface, and a provider that makes it pluggable (just like what's done for other data providers in Openfire). The cache-based one could be one that delegates to the default one, or maybe even be configured to use any other provider. An added bonus of this approach is that the functionality added in this commit need not be mandatory - being able to _not_ use it, in case of bugs, is good.
    - Not related to changes in this commit (OF-1870): Code that's flushing data to the database makes items to be added available to the clustered cache, before the database write is done. This does not seem to take into account that these items might also be present in the delete work-queue. There appears to be room for error here.
    - Not related to changes in this commit (OF-1871): itemsToAdd and itemsToDelete are two distinct lists. When one node is added to both, the existing code will always result in the node being added. That might not reflect the order in which these events were added to the queue, originally.
    - Not related to changes in this commit (OF-1872): if a database transaction fails, the item 'add' list is rolled back, but the 'delete' list is not. This is suspicious.

    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/Node.java (version 0ae3a1a7518cf6efb06cc48ceee12c27bf2b2d8c)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubEngine.java (version 0ae3a1a7518cf6efb06cc48ceee12c27bf2b2d8c)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubPersistenceManager.java (version 0ae3a1a7518cf6efb06cc48ceee12c27bf2b2d8c)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/cluster/FlushTask.java (version 0ae3a1a7518cf6efb06cc48ceee12c27bf2b2d8c)
  • Guus der Kinderen

    Guus der Kinderen 8052928a78d3088f2595587563ebc2d91a73a0a9

    OF-1696: Prevent Exceptions on first show of 'Personal Eventing'
    When auto-creating a PEP service, ensure that the service is persisted, before being modified. Also ensure that the handler that manages them is started.

    • xmppserver/src/main/java/org/jivesoftware/openfire/pep/PEPService.java (version 8052928a78d3088f2595587563ebc2d91a73a0a9)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/InMemoryPubSubPersistenceProvider.java (version 8052928a78d3088f2595587563ebc2d91a73a0a9)
    • xmppserver/src/main/webapp/pubsub-node-summary.jsp (version 8052928a78d3088f2595587563ebc2d91a73a0a9)
  • Guus der Kinderen

    Guus der Kinderen 12344718d177171065814e3858f7748c11f3be3f

    OF-1986: Do not auto-create a PEPService if it's not needed.

    • xmppserver/src/main/java/org/jivesoftware/openfire/pep/IQPEPHandler.java (version 12344718d177171065814e3858f7748c11f3be3f)
    • xmppserver/src/main/webapp/pubsub-node-summary.jsp (version 12344718d177171065814e3858f7748c11f3be3f)
  • Guus der Kinderen

    Guus der Kinderen b4c5478d6511f7950f21057bf12835a6a1121f9c

    OF-1993: Ensure that databae resource is closed

    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/DefaultPubSubPersistenceProvider.java (version b4c5478d6511f7950f21057bf12835a6a1121f9c)
  • Guus der Kinderen

    Guus der Kinderen caa83a7020cd67afb0cff485b336d905187c035a

    OF-1985: PubSubService should not be a member of Node
    By having a (non-transient) PubSubService field, Node instances are tightly tied, making serialization (clustering) hard to realize.

    • xmppserver/src/main/java/org/jivesoftware/openfire/pep/IQPEPHandler.java (version caa83a7020cd67afb0cff485b336d905187c035a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pep/PEPService.java (version caa83a7020cd67afb0cff485b336d905187c035a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pep/PEPServiceManager.java (version caa83a7020cd67afb0cff485b336d905187c035a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/CollectionNode.java (version caa83a7020cd67afb0cff485b336d905187c035a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/DefaultPubSubPersistenceProvider.java (version caa83a7020cd67afb0cff485b336d905187c035a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/LeafNode.java (version caa83a7020cd67afb0cff485b336d905187c035a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/Node.java (version caa83a7020cd67afb0cff485b336d905187c035a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubEngine.java (version caa83a7020cd67afb0cff485b336d905187c035a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubModule.java (version caa83a7020cd67afb0cff485b336d905187c035a)
  • Guus der Kinderen

    Guus der Kinderen 41a43bf0fa0dd43abbf1cf2d742d09f6f1a71f4a

    UniqueIdentifiers of PubSubService, Node and Item should not inherit
    Inheritance implies that the instances are comparable, while they are not (an identifier of a Node never equals one of an Item).

    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/CachingPubsubPersistenceProvider.java (version 41a43bf0fa0dd43abbf1cf2d742d09f6f1a71f4a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/Node.java (version 41a43bf0fa0dd43abbf1cf2d742d09f6f1a71f4a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PubSubService.java (version 41a43bf0fa0dd43abbf1cf2d742d09f6f1a71f4a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/PublishedItem.java (version 41a43bf0fa0dd43abbf1cf2d742d09f6f1a71f4a)
    • xmppserver/src/main/java/org/jivesoftware/openfire/pubsub/cluster/FlushTask.java (version 41a43bf0fa0dd43abbf1cf2d742d09f6f1a71f4a)
  • Guus der Kinderen

    Guus der Kinderen 62c3677b5938232e42781e976b709b7961e8a3cb

    OF-1968: Add vCard (avatar) support for MUC rooms.
    This largely follows the specification as defined by ProcessOne: https://docs.ejabberd.im/tutorials/muc-vcard, with an addition to make things work with Converse.

    The change herein stores a room vCard into the same database table that's used for regular users (but using the JID for the room, as opposed to the username that's used for users).

    A downside of this approach is that setting avatars for MUC rooms likely does not work in AD/LDAP setups (or other setups where the vCardProvider is read-only).

    This commit lacks an admin console change (it would be nice to also be able to specify a vCard or avatar for a room through the admin console).

    • xmppserver/src/main/java/org/jivesoftware/openfire/muc/MultiUserChatService.java (version 62c3677b5938232e42781e976b709b7961e8a3cb)
    • xmppserver/src/main/java/org/jivesoftware/openfire/muc/cluster/BroadcastPresenceRequest.java (version 62c3677b5938232e42781e976b709b7961e8a3cb)
    • xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/IQMUCvCardHandler.java (version 62c3677b5938232e42781e976b709b7961e8a3cb)
    • xmppserver/src/main/java/org/jivesoftware/openfire/muc/spi/MultiUserChatServiceImpl.java (version 62c3677b5938232e42781e976b709b7961e8a3cb)
  • Guus der Kinderen

    Guus der Kinderen 4d0ed706795ebea79b794bb5810cdb3a6f977dbe

    Apply generics as defined in interface

    • xmppserver/src/main/java/org/jivesoftware/openfire/OfflineMessageStore.java (version 4d0ed706795ebea79b794bb5810cdb3a6f977dbe)
  • Guus der Kinderen

    Guus der Kinderen c0d7c1abba7898922f6b4f9e37eb4521bc964c68

    Fix javadoc

    • xmppserver/src/main/java/org/jivesoftware/openfire/OfflineMessageStore.java (version c0d7c1abba7898922f6b4f9e37eb4521bc964c68)
  • Guus der Kinderen

    Guus der Kinderen ca9bc342331648c12a5c419c3f7fbbbb50ab7353

    Remove unnecessary 'containsKey' check

    • xmppserver/src/main/java/org/jivesoftware/openfire/OfflineMessageStore.java (version ca9bc342331648c12a5c419c3f7fbbbb50ab7353)
  • Guus der Kinderen

    Guus der Kinderen 62b637ef1a4b2b7893f2c5d0f5ece7b73d3a1b88

    Simplify empty iterator construction

    • xmppserver/src/main/java/org/jivesoftware/openfire/OfflineMessageStrategy.java (version 62b637ef1a4b2b7893f2c5d0f5ece7b73d3a1b88)
  • Guus der Kinderen

    Guus der Kinderen e9571e4f26cb06e258369e1aaea3fbf0f8758c54

    OF-1975: Don't generate events in case of SQL problem

    • xmppserver/src/main/java/org/jivesoftware/openfire/OfflineMessageStore.java (version e9571e4f26cb06e258369e1aaea3fbf0f8758c54)
  • Guus der Kinderen

    Guus der Kinderen 1e24b06ebb2ed802fdd002ea0ff26b6598c28f04

    Remove redundant escape

    • xmppserver/src/main/java/org/jivesoftware/openfire/OfflineMessageStore.java (version 1e24b06ebb2ed802fdd002ea0ff26b6598c28f04)
  • Guus der Kinderen

    Guus der Kinderen 604260d05ead574ac2f5e1dc8bc85c6601dd507b

    OF-1975: Do not trigger offline message store event listeners when no data is stored.

    • xmppserver/src/main/java/org/jivesoftware/openfire/OfflineMessageStore.java (version 604260d05ead574ac2f5e1dc8bc85c6601dd507b)
    • xmppserver/src/main/java/org/jivesoftware/openfire/OfflineMessageStrategy.java (version 604260d05ead574ac2f5e1dc8bc85c6601dd507b)
  • Guus der Kinderen

    Guus der Kinderen 9652fedf46deb950b2eae86246ec151dc7aeac3b

    OF-1994: Do not offer private storage to anonymous users.

    • xmppserver/src/main/java/org/jivesoftware/openfire/disco/IQDiscoInfoHandler.java (version 9652fedf46deb950b2eae86246ec151dc7aeac3b)
    • xmppserver/src/main/java/org/jivesoftware/openfire/handler/IQPrivateHandler.java (version 9652fedf46deb950b2eae86246ec151dc7aeac3b)
  • Guus der Kinderen

    Guus der Kinderen 815deced238a4c6a0ce25aa0228c9d648ba81a56

    OF-1995: Allow disco#info requests on anon user sessions.

    • xmppserver/src/main/java/org/jivesoftware/openfire/disco/IQDiscoInfoHandler.java (version 815deced238a4c6a0ce25aa0228c9d648ba81a56)
  • Guus der Kinderen

    Guus der Kinderen 91aa69c3486dacd1df344bbdd5b7b6b5aa960f6a

    Update continuous-integration-workflow.yml
    Tell aioxmpp that Openfire does not have an ad-hoc command that says 'pong'.

    • .github/workflows/continuous-integration-workflow.yml (version 91aa69c3486dacd1df344bbdd5b7b6b5aa960f6a)
  • Guus der Kinderen

    Guus der Kinderen 278ea0b8032f7abc3ae81ec8d1691b12817d5e6e

    Add 'autosetup' functionality to documentation.

    • documentation/install-guide.html (version 278ea0b8032f7abc3ae81ec8d1691b12817d5e6e)
  • Guus der Kinderen

    Guus der Kinderen 241ed7bdf2e8f7a22a9a1cdc533b797b16bc4b7d

    Fixed typo

    • documentation/install-guide.html (version 241ed7bdf2e8f7a22a9a1cdc533b797b16bc4b7d)
  • Guus der Kinderen

    Guus der Kinderen fd2b97b68992b7b18016618e86d50f250e385721

    Update continuous-integration-workflow.yml
    Set environment variable CI to 'true'

    • .github/workflows/continuous-integration-workflow.yml (version fd2b97b68992b7b18016618e86d50f250e385721)
  • Guus der Kinderen

    Guus der Kinderen 47f31671fc93e5a1087409a14a090197a8aebfb2

    Update README.md

    • README.md (version 47f31671fc93e5a1087409a14a090197a8aebfb2)
  • Guus der Kinderen

    Guus der Kinderen b689917f2094b5c887590282cd75d316a7b71447

    Update README.md
    Adds a Github-actions based badge to the readme file.

    • README.md (version b689917f2094b5c887590282cd75d316a7b71447)
  • Guus der Kinderen

    Guus der Kinderen 1dc8b7bbc1f908326e62ab3c893f56b58e13ff54

    Github Actions: add aioxmpp to CI flow

    • .github/workflows/continuous-integration-workflow.yml (version 1dc8b7bbc1f908326e62ab3c893f56b58e13ff54)
  • Guus der Kinderen

    Guus der Kinderen 54d7b7c0e2c52b963cebf7fed164b6850c500ff3

    Github Actins: add smack to CI flow

    • .github/workflows/continuous-integration-workflow.yml (version 54d7b7c0e2c52b963cebf7fed164b6850c500ff3)
  • Guus der Kinderen

    Guus der Kinderen 94dac90a2518df5707a4cd7949b201ac160f807b

    Github Actions: pass along 'test.gradle' for SINT

    • .github/workflows/continuous-integration-workflow.yml (version 94dac90a2518df5707a4cd7949b201ac160f807b)
  • Guus der Kinderen

    Guus der Kinderen 32e2068c887989ea4a6770fc50ea83df7f8c105f

    Github Actions: cache Maven repo for faster builds

    • .github/workflows/continuous-integration-workflow.yml (version 32e2068c887989ea4a6770fc50ea83df7f8c105f)
  • Guus der Kinderen

    Guus der Kinderen 4707457ce47b50ee7e550d48f4eecb3750135ee2

    Github Actions: change name of flow

    • .github/workflows/continuous-integration-workflow.yml (version 4707457ce47b50ee7e550d48f4eecb3750135ee2)
  • Guus der Kinderen

    Guus der Kinderen 4960c4273aebc8d257e2e6a722533a5c789a7a90

    Store/publish test output.

    • .github/workflows/continuous-integration-workflow.yml (version 4960c4273aebc8d257e2e6a722533a5c789a7a90)
  • akrherz <akrherz@iastate.edu>

    akrherz <akrherz@iastate.edu> 250065e694907d2e020f63cf5147d2857d3a596a

    cleanup on aisle 5

    • .github/workflows/continuous-integration-workflow.yml (version 250065e694907d2e020f63cf5147d2857d3a596a)
  • Guus der Kinderen

    Guus der Kinderen 07aa6f6ae4caeb185e49b5e74368da0d6bbe4305

    Github Actions: inline 'test.gradle' to work around artifact passing issue

    • .github/workflows/continuous-integration-workflow.yml (version 07aa6f6ae4caeb185e49b5e74368da0d6bbe4305)
  • Guus der Kinderen

    Guus der Kinderen 95bae8b9ecef7428ac58d1b98de2c50761e363f3

    Yaml files have 2-space indents, instead of 4

    • .editorconfig (version 95bae8b9ecef7428ac58d1b98de2c50761e363f3)
    • .github/workflows/continuous-integration-workflow.yml (version 95bae8b9ecef7428ac58d1b98de2c50761e363f3)
  • Guus der Kinderen

    Guus der Kinderen b9b524e689cbbf593fb9ad563336b25a4b6cac22

    Github Actions: aioxmpp will ignore 'host' if 'port' is unset.

    • .github/workflows/continuous-integration-workflow.yml (version b9b524e689cbbf593fb9ad563336b25a4b6cac22)
  • Guus der Kinderen

    Guus der Kinderen 63df103de695132b64b161217e41b01d2a2889b8

    Github Actions: generate and publish coverage report

    • .github/workflows/continuous-integration-workflow.yml (version 63df103de695132b64b161217e41b01d2a2889b8)
  • akrherz <akrherz@iastate.edu>

    akrherz <akrherz@iastate.edu> 73867987c5d02c0f882bea95f6d18baaa0688de1

    add /etc/hosts entry

    • .github/workflows/continuous-integration-workflow.yml (version 73867987c5d02c0f882bea95f6d18baaa0688de1)
  • Guus der Kinderen

    Guus der Kinderen 0fbc8fe85b4c275a6cecd27b04381e7b490ac89a

    Github Actions: prevent CI tests from failing the build until we've set them up properly

    • .github/workflows/continuous-integration-workflow.yml (version 0fbc8fe85b4c275a6cecd27b04381e7b490ac89a)
  • Guus der Kinderen

    Guus der Kinderen dad7d659845f2f03203c355ef51983f84c255544

    Expose test output

    • .github/workflows/continuous-integration-workflow.yml (version dad7d659845f2f03203c355ef51983f84c255544)
  • Guus der Kinderen

    Guus der Kinderen 86a74475a7837e0e952fd2c821dd8896e5306cde

    Github Actions: keep running the flow even if tests fail.

    • .github/workflows/continuous-integration-workflow.yml (version 86a74475a7837e0e952fd2c821dd8896e5306cde)
  • Guus der Kinderen

    Guus der Kinderen f9e0cfdd2e27f973f2c8fddbc4a4a7b977a98cf7

    Github Actions: modify /etc/hosts _before_ starting Openfire

    • .github/workflows/continuous-integration-workflow.yml (version f9e0cfdd2e27f973f2c8fddbc4a4a7b977a98cf7)
  • Guus der Kinderen

    Guus der Kinderen 074bec801ff423351e1a491d457cf71f4b7cb8e8

    Github Actions: add job that starts/stops Openfire

    • .github/workflows/continuous-integration-workflow.yml (version 074bec801ff423351e1a491d457cf71f4b7cb8e8)
  • Guus der Kinderen

    Guus der Kinderen fbe603289c4e3dfaaeb32db0cc8c49d475811850

    Merge pull request #1597 from Flowdalic/sinttest
    Sinttest: Use Smack 4.4.0-alpha3-20200409.010537-8

  • Guus der Kinderen

    Guus der Kinderen 8cd277f055831310662511c2f63e6c9f15069857

    Merge branch 'master' into sinttest

  • Florian Schmaus <flo@geekplace.eu>

    Florian Schmaus <flo@geekplace.eu> 889eeb4b5b898760fd2576aa77ffa1dc9abb13c3 m

    test: only run with the good old XMPPTCPConnection
    The new ModularXmppClientToServerConnection is to flaky at the moment.

    • runIntegrationTests (version 889eeb4b5b898760fd2576aa77ffa1dc9abb13c3)
  • Florian Schmaus <flo@geekplace.eu>

    Florian Schmaus <flo@geekplace.eu> 944ec5c0c805f120efb3ddbd744b37aa9f37f385 m

    test: run sinttest only on Java 9 or higher
    Until SMACK-651 is fixed.

    • .travis.yml (version 944ec5c0c805f120efb3ddbd744b37aa9f37f385)
  • Florian Schmaus <flo@geekplace.eu>

    Florian Schmaus <flo@geekplace.eu> 7881b918a2a66edb1d54b8151423c2eea4e76e32 m

    test: tabify test.gradle
    Every part of test.gradle uses tabs, but this.

    • test.gradle (version 7881b918a2a66edb1d54b8151423c2eea4e76e32)
  • Florian Schmaus <flo@geekplace.eu>

    Florian Schmaus <flo@geekplace.eu> a77135028e9f544d6a40b1cf127dbd1cbe877e2d m

    test: remove unnecessary dependency declarations in test.gradle

    • test.gradle (version a77135028e9f544d6a40b1cf127dbd1cbe877e2d)
  • Florian Schmaus <flo@geekplace.eu>

    Florian Schmaus <flo@geekplace.eu> 6f96740095562a6d48c02706befc47343aa68446 m

    test: Use gradle's --console=plain instead of TERM=dumb

    • .travis.yml (version 6f96740095562a6d48c02706befc47343aa68446)
    • runIntegrationTests (version 6f96740095562a6d48c02706befc47343aa68446)
  • Florian Schmaus <flo@geekplace.eu>

    Florian Schmaus <flo@geekplace.eu> fd2743bf97b1f69dbe83f1eaad125e4a8948c9cb m

    test: Use a newer Smack version for sinttest
    And set the dnsResolver to javax, as this resolver also sources
    /etc/hosts, which we need for sinttest to run in Travis.

    • runIntegrationTests (version fd2743bf97b1f69dbe83f1eaad125e4a8948c9cb)
  • Florian Schmaus <flo@geekplace.eu>

    Florian Schmaus <flo@geekplace.eu> ec9832365393cf8a21d1445b2a769a0a614d10a7 m

    travis: re-enable runIntegrationTests

    • .travis.yml (version ec9832365393cf8a21d1445b2a769a0a614d10a7)
  • Florian Schmaus <flo@geekplace.eu>

    Florian Schmaus <flo@geekplace.eu> d1c63216c61298e2b9b9cd06e4142fb424a68982 m

    test: add ignite's snapshot repository to test.gradle
    This allows us to retrieve unique Smack snapshots for sinttest.

    • test.gradle (version d1c63216c61298e2b9b9cd06e4142fb424a68982)