I want to use the library to send in band files (which will be stored on the server) & serialised objects. This is relatively easy - but I want to attach listeners to the input/output streams so that I can listen to the progress of the streams.
Instead of doing a hack myself and being outdated with the latest build’'s, I decided to ask if it is going to be a feature you are including?
Currently Smack does not support In-Band Bytestreams (JEP-47) and it’‘s not in our immediate roadmap. If you are going to implement it then I think that an easy way to show the transfer progress is to take advantage that for a file transfer you may probably send several packets (incrementing the seq attribute). Since you know the number of total packets to send in advance it’'d be rather easy to calculate the percentage of the transfer in progress.
Regarding the “serialized objects” it’‘ll require to modify the connection’‘s writer in order to be able to detect the transfer progress. This feature is also not in our immediate roadmap and I can’'t think of any workaround to solve this limitation.