Several interfaces in Orekit extend
Serializable. This has always been a controversial choice and we have progressively removed some of them (for example step handlers serialization has been removed about 6 years ago).
As event detectors become more and more complex and often reference external objects (like a
PVCoordinatesProvider for the slave satellite in
InterSatDirectViewDetector or a
FunctionalDetector), they are often not serializable at all. Indeed, serializing an event detector is needed only (as far as I remember) because
AttitudesSequence references arbitrary event detectors and also implements
AttitudeProvider, which extends
What about having event detectors not being serializable anymore?
We could do this by having
AttitudesSequence explicitly throwing an exception when attempting to serialize it, or even more drastic, having
AttitudeProvider not being serializable anymore too.