Ich möchte einen GWT-Ereignishandler entfernen, wenn ich zum ersten Mal ein Ereignis erhalte. Ich möchte auch vermeiden, meine Klasse mit Tracking-Registrierungsobjekten zu verschmutzen, die nicht wirklich notwendig sind. Ich habe es derzeit als codiert:
final HandlerRegistration\[\] registrationRef = new HandlerRegistration\[1\];
registrationRef\[0\] = dialog.addFooHandler(new FooHandler()
{
public void onFoo(FooEvent event)
{
HandlerRegistration removeMe = registrationRef\[0\];
if(removeMe != null)
{
removeMe.removeHandler();
}
// do stuff here
}
});
aber die Verwendung von registrationRef macht den Code weniger lesbar. Gibt es eine bessere Möglichkeit, dies zu tun, ohne Variablen zu meiner Klasse hinzuzufügen?