Frank Matheron
5b857a1b82
[mam] Support multiple versions of MAM
...
Support multiple version of MAM and do discovery of the version of MAM supported by
the archive. Currently supported MAM versions are v1 and v2.
Fixes SMACK-911
See https://discourse.igniterealtime.org/t/mam-support-of-multiple-mam-versions/90136
2021-08-26 16:49:06 +02:00
Florian Schmaus
aab48570c9
Call XMPPConnection.sendIqRequestAndWaitForResponse(IQ) where possible
...
Refactored using
find . -type f -name "*.java" |\
xargs sed -i -E |\
's/\.createStanzaCollectorAndSend\((\w+)\)\.nextResultOrThrow\(\);/.sendIqRequestAndWaitForResponse(\1);/'
and some manual refactoring.
2021-05-12 10:12:40 +02:00
Florian Schmaus
3d4e7938a7
Make ExtensionElement marker interface wrt. QNAME field
...
ExtensionElement is now a marker interface that requires all
implementation non-abstract classes to carry a static final QNAME
field (of type QName). This is verified by a new unit test.
Also FullyQualifiedElement is renamed to simply XmlElement. XmlElement
is used over ExtensionElement when implementing classes do not
statically know the qualified name of the XML elements they
represent. In general, XmlElement should be used sparingly, and every
XML element should be modeled by its own Java class (implementing
ExtensionElement).
2021-04-18 21:07:19 +02:00
Florian Schmaus
fe7d3bec30
Make Forwarded a generic type
...
Fixes SMACK-821.
2020-09-23 17:48:04 +02:00
Florian Schmaus
77e26fc575
Re-work data form API
...
Apply builder pattern to form fields and replace getVariable() with
getFieldName(). Refer to the field name as "field name" instead of
"variable" everyone, just as XEP-0004 does.
Improve the high-level form API: introduce FilledForm and FillableForm
which perform stronger validation and consistency checks.
Also add FormFieldRegistry to enable processing of 'submit' forms
where the form field types are omitted.
Smack also now does omit the form field type declaration on 'submit'
type forms, as it is allowed by XEP-0004.
2020-05-13 20:14:41 +02:00
Florian Schmaus
c10a56dc84
mam: remove unused import
2020-04-12 12:06:00 +02:00
Florian Schmaus
516c68bdb4
test: remove InitExtensions
...
And replace it with SmackTestSuite.
2020-04-12 09:34:08 +02:00
Florian Schmaus
28e763f938
extensions/experimental: line separator according to import order
2020-04-12 09:33:14 +02:00
Florian Schmaus
390f7823e1
mam: add javadoc for parameter
2020-04-09 15:22:33 +02:00
Florian Schmaus
b8b084970e
mam: remove deprecated method in MamManager
2020-04-09 15:21:50 +02:00
Florian Schmaus
1e5ea1fdbe
mam: remove dead code in MamManager
2020-04-09 15:20:00 +02:00
Florian Schmaus
353e43407f
mam: support of advanced configuration
...
Fixes SMACK-822.
Co-authored-by: Jagmeet Singh <jagmeets@zeta.tech>
2020-04-09 15:18:02 +02:00
Florian Schmaus
78be8f3a04
junit: bump to 5.6.0
2020-02-23 19:12:54 +01:00
Florian Schmaus
1a3067c89b
Enable werror for javadoc and fix javadoc issues
2019-08-30 12:08:30 +02:00
Florian Schmaus
4d36e3b521
Introduce FormFieldChildElement and make FormField immutable
2019-06-11 12:47:39 +02:00
Florian Schmaus
619b8e6f4a
Add secure(OnlineAttackSafe|Unique|OfflineAttackSafe)RandomString()
...
and replace usages of java.util.UUID in Smack with
secureUniqueRandomString() because it uses a thread-local secure random
number generator.
2019-06-02 20:08:03 +02:00
Florian Schmaus
7f0dc72dab
Update errorprone(-plugin) and make Unused(Variable|Method) an error
2019-05-07 23:09:00 +02:00
Florian Schmaus
9c30e4f3cc
Merge branch '4.3'
2019-04-16 09:27:48 +02:00
Florian Schmaus
11775ed6b0
Add checkstyle rule for 'synchronized' on Manager.getInstanceFor()
2019-04-15 09:58:53 +02:00
Florian Schmaus
658fd08d20
Use try-with-resources where possible
...
and make StanzaCollector implement AutoCloseable.
2019-02-05 13:18:03 +01:00
Florian Schmaus
7a3f6f29cc
Merge branch '4.3'
2018-12-21 13:21:50 +01:00
Florian Schmaus
d1c73eba8d
Fix MamManager javadoc
...
of methods which have been renamed.
2018-12-20 17:00:00 +01:00
Florian Schmaus
273937199b
Merge branch '4.3'
2018-11-29 22:55:38 +01:00
Tairs Rzajevs
0332fa54d1
Fix previous archive page requested incorrectly in MamManager
...
Previous page should be before the first message in the previous
result set, not the last.
Fixes SMACK-843.
2018-11-29 22:50:59 +01:00
Florian Schmaus
ab120691cb
Smack 4.3.1
...
-----BEGIN PGP SIGNATURE-----
iQGTBAABCgB9FiEEl3UFnzoh3OFr5PuuIjmn6PWFIFIFAlvDIBdfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDk3
NzUwNTlGM0EyMURDRTE2QkU0RkJBRTIyMzlBN0U4RjU4NTIwNTIACgkQIjmn6PWF
IFKObAgApvEwstvSXhgzlrA46DM6fXezbPEnO1rh8rCPJEAsmfBSnyINSuuhelzw
zN8L7GAU0jDeuDivxA12vQx5QB8wuCHKgc5pXDKNRi9eUdsyDUMKswcbMMAJWDvq
I3bm7TOC1D9ZWmfhGmqfulrsVD1Q0wh+P2A1/CWVR5ZZUB5S4fESFZUrnCfJmeXe
f+INXUiui3otAF6nPxKm782rSfHWvA32i4Obnagh3oPX/c9R7Ftb78Wukrsbaqfg
+a5iTlBJXLG75/Yozq+JqmWlUvEKv7le0vkF5fF+oc76H4p1U1wqQyIMei/Pwaer
H/SyMqLPzCiwpUHiunpWD13e5kkeLw==
=47on
-----END PGP SIGNATURE-----
Merge tag '4.3.1'
Smack 4.3.1
2018-10-14 14:31:31 +02:00
Florian Schmaus
158103c918
Add javadoc for MamQueryArgs.Builder.queryLastPage()
2018-08-16 15:35:59 +02:00
Florian Schmaus
a4f1039a06
Fix example in MamManager's javadoc: s/queryRecentPage/queryLastPage/
2018-08-16 15:35:38 +02:00
Florian Schmaus
9f786fc70d
Remove deprecated methods in MamManager
2018-06-14 10:00:24 +02:00
Florian Schmaus
9161ba9e7d
Improve MamManager API
2018-06-12 08:53:18 +02:00
Florian Schmaus
a3cf1ab0ca
Fix MamManager.isSupported(): Use archive address
2018-06-06 08:45:13 +02:00
Florian Schmaus
fb5d7ff7d4
Add MamManager.getInstanceFor(MultiUserChat)
2018-05-31 18:37:31 +02:00
Florian Schmaus
cb97b5032c
Improve javadoc for MamManager.getInstanceFor(XMPPConnection)
2018-05-31 18:27:54 +02:00
Florian Schmaus
50e98fe31d
Improve javadoc for MamManager.isSupported()
2018-05-31 18:27:34 +02:00
Florian Schmaus
7a2e4140c7
Add MamManager.getArchiveAddress()
2018-05-31 18:27:11 +02:00
Florian Schmaus
e8923b9d16
Enable trailing whitespace checkstyle check
...
for all source code regions, including javadoc.
2018-05-09 23:26:39 +02:00
Florian Schmaus
a9ca1a0989
Enable ModifierOrder checkstyle check
...
Fixes SMACK-812
2018-03-29 12:35:11 +02:00
Florian Schmaus
3c4225d167
Merge branch '4.2'
2017-12-25 14:16:43 +01:00
Florian Schmaus
34373e8710
Enable javadoc 'html' doclint
...
Also make all 'test' tasks depend on the 'javadoc' task.
Fixes SMACK-650.
2017-12-25 14:08:18 +01:00
Florian Schmaus
431e5b3c67
Merge branch '4.2' into master-paul-merged
2017-12-17 11:16:02 +01:00
Paul Schaub
cb18056613
Fix minor codestyle issues
2017-12-17 11:03:46 +01:00
Florian Schmaus
ba323b51f9
Remove API parts scheduled to be removed in Smack 4.3
2017-08-16 14:31:46 +02:00
Florian Schmaus
b9ed22c732
Add MamManager.isSupported()
...
Fixes SMACK-777.
2017-08-14 20:23:35 +02:00
Florian Schmaus
08e897113d
Add CustomImportOrder checkstyle rule
...
And matching ImportOrder settings for Eclipse in
resources/eclipse/smack.importorder
2017-06-14 17:12:43 +02:00
Florian Schmaus
a8c6de6b98
Improve MamManager javadoc
2017-03-10 17:47:13 +01:00
Florian Schmaus
32fd52ea8e
Sync MAM API with PubSub API: One MamManager per MAM archive address
2017-02-24 19:33:11 +01:00
Anno van Vliet
c13cddd91a
Enable querying MAM by address and node.
...
Enhance the API to query archives for example from a room or a pubsub
node.
2017-02-24 08:11:57 +01:00
Florian Schmaus
90a5e289f8
s/processPacket/processStanza/ s/PacketCollector/StanzaCollector/
2017-01-03 11:35:04 +01:00
Fernando Ramirez
f7fcff139c
Add MAM methods to load previous page and to load most recent page
2016-12-29 00:13:02 +01:00
Florian Schmaus
aeb385a022
Apply refinements and fixes to the MAM code
...
SMACK-625.
2016-07-23 15:45:45 +02:00
Fernando Ramirez
189cac072b
Implement Message Archive Management (MAM) XEP-0313
...
Fixes SMACK-625
2016-07-23 12:45:14 +02:00