From 43240cfb777936b41fdd600d70cfa194dce6b26e Mon Sep 17 00:00:00 2001 From: Benjamin Barth Date: Tue, 18 Jul 2017 14:01:51 +0200 Subject: [PATCH] bug4205 Removed no longer need generic type from FilterValueChangeHandler --- .../partials/racelist/AbstractRaceList.java | 3 +-- .../regatta/racestab/RegattaRacesTabView.java | 8 ++++---- .../multiregatta/MultiRegattaViewImpl.java | 6 +++--- .../mobile/places/event/races/RacesViewImpl.java | 6 +++--- .../partials/filter/AbstractFilterWidget.java | 15 ++++----------- .../shared/partials/filter/FilterPresenter.java | 4 ++-- .../partials/filter/FilterValueChangeHandler.java | 3 ++- .../partials/filter/FilterValueProvider.java | 1 + .../home/shared/partials/filter/FilterWidget.java | 2 +- .../RegattaCompetitionPresenter.java | 2 +- .../regattalist/RegattaListPresenter.java | 2 +- 11 files changed, 23 insertions(+), 29 deletions(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/racelist/AbstractRaceList.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/racelist/AbstractRaceList.java index b6121f30139..3e06a589e5c 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/racelist/AbstractRaceList.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/partials/racelist/AbstractRaceList.java @@ -30,8 +30,7 @@ import com.sap.sailing.gwt.ui.leaderboard.SortedCellTable; import com.sap.sse.common.filter.Filter; public abstract class AbstractRaceList> extends Composite - implements FilterValueProvider, - FilterValueChangeHandler { + implements FilterValueProvider, FilterValueChangeHandler { private static final LocalCss CSS = RaceListResources.INSTANCE.css(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/event/regatta/racestab/RegattaRacesTabView.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/event/regatta/racestab/RegattaRacesTabView.java index 82ede67d3a9..16a7331997e 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/event/regatta/racestab/RegattaRacesTabView.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/desktop/places/event/regatta/racestab/RegattaRacesTabView.java @@ -288,7 +288,7 @@ public class RegattaRacesTabView extends Composite implements RegattaTabView { private final Map>> providersByTab = new HashMap<>(); - private final Map>> handlersByTab = new HashMap<>(); + private final Map>> handlersByTab = new HashMap<>(); private RegattaRacesTabViewFilterPresenter(FilterWidget filterWidget) { super(filterWidget); @@ -300,7 +300,7 @@ public class RegattaRacesTabView extends Composite implements RegattaTabView> getCurrentValueChangeHandlers() { + protected List> getCurrentValueChangeHandlers() { return handlersByTab.get(currentlySelectedTab); } @@ -310,8 +310,8 @@ public class RegattaRacesTabView extends Composite implements RegattaTabView handler) { - List> list = handlersByTab.get(assosiatedTab); + private void addHandler(Navigation assosiatedTab, FilterValueChangeHandler handler) { + List> list = handlersByTab.get(assosiatedTab); if (list == null) this.handlersByTab.put(assosiatedTab, list = new ArrayList<>()); list.add(handler); super.addHandler(handler); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/event/overview/multiregatta/MultiRegattaViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/event/overview/multiregatta/MultiRegattaViewImpl.java index ce80820d910..e1f16a9ee96 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/event/overview/multiregatta/MultiRegattaViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/event/overview/multiregatta/MultiRegattaViewImpl.java @@ -50,11 +50,11 @@ public class MultiRegattaViewImpl extends AbstractEventOverview { private class MultiRegattaViewImplFilterPresenter extends FilterPresenter { private final List> valueProviders; - private final List> valueChangeHandlers; + private final List> valueChangeHandlers; public MultiRegattaViewImplFilterPresenter(FilterWidget filterWidget, FilterValueProvider valueProvider, - FilterValueChangeHandler valueChangeHandler) { + FilterValueChangeHandler valueChangeHandler) { super(filterWidget); this.valueProviders = Arrays.asList(valueProvider); this.valueChangeHandlers = Arrays.asList(valueChangeHandler); @@ -67,7 +67,7 @@ public class MultiRegattaViewImpl extends AbstractEventOverview { } @Override - protected List> getCurrentValueChangeHandlers() { + protected List> getCurrentValueChangeHandlers() { return valueChangeHandlers; } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/event/races/RacesViewImpl.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/event/races/RacesViewImpl.java index 764216eb158..1aca7f4fea0 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/event/races/RacesViewImpl.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/mobile/places/event/races/RacesViewImpl.java @@ -76,11 +76,11 @@ public class RacesViewImpl extends AbstractEventView implem private class RacesViewImplFilterPresenter extends FilterPresenter { private final List> valueProviders; - private final List> valueChangeHandlers; + private final List> valueChangeHandlers; public RacesViewImplFilterPresenter(FilterWidget filterWidget, FilterValueProvider valueProvider, - FilterValueChangeHandler valueChangeHandler) { + FilterValueChangeHandler valueChangeHandler) { super(filterWidget); this.valueProviders = Arrays.asList(valueProvider); this.valueChangeHandlers = Arrays.asList(valueChangeHandler); @@ -93,7 +93,7 @@ public class RacesViewImpl extends AbstractEventView implem } @Override - protected List> getCurrentValueChangeHandlers() { + protected List> getCurrentValueChangeHandlers() { return valueChangeHandlers; } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/AbstractFilterWidget.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/AbstractFilterWidget.java index 02f0ac8f873..dd845229858 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/AbstractFilterWidget.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/AbstractFilterWidget.java @@ -9,24 +9,17 @@ import com.sap.sse.common.filter.Filter; public abstract class AbstractFilterWidget extends Composite implements FilterWidget { - private final List> valueChangeHandlers = new ArrayList<>(); + private final List> valueChangeHandlers = new ArrayList<>(); @Override - public HandlerRegistration addFilterValueChangeHandler(final FilterValueChangeHandler handler) { + public HandlerRegistration addFilterValueChangeHandler(final FilterValueChangeHandler handler) { valueChangeHandlers.add(handler); - return new HandlerRegistration() { - @Override - public void removeHandler() { - valueChangeHandlers.remove(handler); - } - }; + return () -> valueChangeHandlers.remove(handler); } protected void notifyValueChangeHandlers() { Filter filter = getFilter(); - for(FilterValueChangeHandler valueChangeHandler : valueChangeHandlers) { - valueChangeHandler.onFilterValueChanged(filter); - } + valueChangeHandlers.forEach(valueChangeHandler -> valueChangeHandler.onFilterValueChanged(filter)); } } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterPresenter.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterPresenter.java index 28c3162d961..8c236e438ac 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterPresenter.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterPresenter.java @@ -27,11 +27,11 @@ public abstract class FilterPresenter> { this.filterWidget.asWidget().setVisible(false); } - protected abstract List> getCurrentValueChangeHandlers(); + protected abstract List> getCurrentValueChangeHandlers(); protected abstract List> getCurrentValueProviders(); - protected void addHandler(FilterValueChangeHandler handler) { + protected void addHandler(FilterValueChangeHandler handler) { this.filterWidget.addFilterValueChangeHandler(handler); } diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterValueChangeHandler.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterValueChangeHandler.java index 33e193b3441..8a33e9e733a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterValueChangeHandler.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterValueChangeHandler.java @@ -2,7 +2,8 @@ package com.sap.sailing.gwt.home.shared.partials.filter; import com.sap.sse.common.filter.Filter; -public interface FilterValueChangeHandler { +@FunctionalInterface +public interface FilterValueChangeHandler { void onFilterValueChanged(Filter filter); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterValueProvider.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterValueProvider.java index 61b63caa2d9..def170e50d7 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterValueProvider.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterValueProvider.java @@ -2,6 +2,7 @@ package com.sap.sailing.gwt.home.shared.partials.filter; import java.util.Collection; +@FunctionalInterface public interface FilterValueProvider { Collection getFilterableValues(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterWidget.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterWidget.java index d3065250d31..d2d68698e8c 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterWidget.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/filter/FilterWidget.java @@ -8,7 +8,7 @@ import com.sap.sse.common.filter.Filter; public interface FilterWidget extends IsWidget { - HandlerRegistration addFilterValueChangeHandler(FilterValueChangeHandler handler); + HandlerRegistration addFilterValueChangeHandler(FilterValueChangeHandler handler); Filter getFilter(); diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/regattacompetition/RegattaCompetitionPresenter.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/regattacompetition/RegattaCompetitionPresenter.java index 3a95a238f66..220dd22b6a9 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/regattacompetition/RegattaCompetitionPresenter.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/regattacompetition/RegattaCompetitionPresenter.java @@ -22,7 +22,7 @@ import com.sap.sse.gwt.dispatch.shared.commands.ListResult; public abstract class RegattaCompetitionPresenter implements RefreshableWidget>, - FilterValueProvider, FilterValueChangeHandler { + FilterValueProvider, FilterValueChangeHandler { private final RegattaCompetitionView view; private Filter latestRacesByCompetitorFilter; diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/regattalist/RegattaListPresenter.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/regattalist/RegattaListPresenter.java index ebab172b0a2..aa64c98870a 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/regattalist/RegattaListPresenter.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/home/shared/partials/regattalist/RegattaListPresenter.java @@ -18,7 +18,7 @@ import com.sap.sse.common.filter.Filter; import com.sap.sse.gwt.dispatch.shared.commands.DTO; public class RegattaListPresenter - implements FilterValueProvider, FilterValueChangeHandler { + implements FilterValueProvider, FilterValueChangeHandler { private final RegattaListView view; private final Map stucture = new HashMap<>();