I think we could but I was not sure if we should introduce Optional as others methods are returning null if not implemented. I think that we should use null for now and in 9.0.0 replace all those methods returning null with Optional.
You are right for consistency sake. So for 8.2.0 we would leave it as-is. Review API in 8.3.0 and deprecate null-returning methods and remove them in 9.0 - how that sounds?
Review Packet API (so there are no packets with null from/to packet)
As per conversation: https://github.com/tigase/tigase-server/pull/106#pullrequestreview-741621197