Я хочу удалить обработчик событий GWT при первом получении события. Я также хочу избежать загрязнения моего класса отслеживанием объектов регистрации, которые на самом деле не нужны. У меня в настоящее время это закодировано как:
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
}
});
но использование registrationRef делает код менее читабельным. Есть ли лучший способ сделать это без добавления переменных в мой класс?