Aktualizacja GWT MVP Stan aktywności przy zmianie miejsca
Jaka jest najlepsza praktyka, aby zaktualizować stan aktywności podczas zmiany miejsca? Wyobraź sobie, że masz aktywność z widokiem, która wyświetla listę kategorii i listę elementów w kategorii. Jeśli wybrana jest inna kategoria, aplikacja przechodzi do nowego miejsca z identyfikatorem kategorii. Chcę wtedy tylko odświeżyć elementy, a nie tworzyć nową aktywność, która również ponownie odczytuje listę kategorii.
Moje obecne podejście jest takie:
public class AppActivityMapper implements ActivityMapper {
private ItemListActivity itemListActivity;
...
public Activity getActivity(final Place place) {
final Activity activity;
if (place instanceof ItemListPlace) {
if (itemListActivity == null) {
itemListActivity = new ItemListActivity((ItemListPlace) place, clientFactory);
} else {
itemListActivity.refresh((ItemListPlace) place);
}
activity = itemListActivity;
} else {
itemListActivity = null;
}
...
return activity;
}
...