@Retention(value=RUNTIME) @Target(value=METHOD) public @interface FactoryMethod
This annotation can be used to make backwards-compatible changes to an event class. By creating a method matching the old factory method signature, code expecting the old event signature will continue to function.