历史数据更新
public interface Updater {
public void update(LoginSuccessData loginSuccessData, HistoryData historyData,UpdaterChain updaterChain);
}
public class UpdaterChain {
private int position=0;
private List<Updater> updaters;
public UpdaterChain(List<Updater> updaters) {
this.updaters = updaters;
}
public void doChain(LoginSuccessData loginSuccessData, HistoryData historyData){
if(position < updaters.size()){
Updater updater = updaters.get(position);
position +=1;
updater.update(loginSuccessData,historyData,this);
}
}
}
更新城市
public class CitiesUpdates implements Updater {
@Override
public void update(LoginSuccessData loginSuccessData, HistoryData historyData, UpdaterChain updaterChain) {
doUpdate(loginSuccessData,historyData);
updaterChain.doChain(loginSuccessData,historyData);
}
private void doUpdate(LoginSuccessData loginSuccessData, HistoryData historyData) {
String cityName = loginSuccessData.getCityName();