-
This behaviour is expected and is a result of design. If you take a look at How packets are processed by the SM and plugins you can notice following:
There might be also more than one plugin for a specific XML element and then they all process the same stanza simultaneously in separate threads so there is no guarantee on the order in which the stanza is processed by a different plugins.
and
It is also important to note that session manager and processor plugins act as packet consumers. The packet is taken for processing and once processing is finished the packet is destroyed. Therefore to forward a packet to a destination one of the processor must create a copy of the packet, set all properties and attributes and return it as a processing result.
Type |
Task
|
Priority |
Major
|
Assignee | |
RedmineID |
1781
|
When i add new attributes or append new child in packet from Message.java. If session is null, then packet goes to offlineMessage.java, but custom attributes or custom children that were added in packet in "Message.java" are no longer present in the packet.
For example, this is my custom packet created in Message.java
Packet which i received in OfflineMessage.java is as follow.