package com.xjf.repository.interfaces; import com.xjf.repository.bean.Domain; import java.util.List; /** * ----------------------------------------------------------------- * User:xijiufu * Email:xjfsml@163.com * Version:1.0 * Time:2016/11/9--9:36 * Function: 适配器接口 * ModifyHistory: * ----------------------------------------------------------------- */ public interface AdapterInterface<T extends Domain> { /** * 更新UI */ void updateUI(); /** * 首次添加数据 * * @param dataListTemp */ void addDataAndUpdateUI(final List<T> dataListTemp); /** * 添加单个对象并刷新 * * @param data */ void addDataAndUpdateUI(final T data); /** * 添加单个数据对象并刷新 回调 * * @param data * @param callBack */ void addDataAndUpdateUI(final T data, final CallBack callBack); /** * 设置数据 * * @param dataListTemp */ void setDataAndUpdateUI(final List<T> dataListTemp); /** * 带回调 的设置数据 * * @param dataListTemp */ void setDataAndUpdateUI(final List<T> dataListTemp, final CallBack callback); /** * 先清除再添加更新 无回调 * * @param dataListTemp */ void clearDataAndAddUpdateUI(final List<T> dataListTemp); /** * 先清除再添加更新数据 后回调 * * @param dataListTemp * @param callBack */ void clearDataAndAddUpdateUI(final List<T> dataListTemp, final CallBack callBack); /** * 删除指定的position * * @param position */ void deletePositionAndUpdateUI(int position); /** * 删除指定的position * * @param position 指定的索引 * @param callBack 回调 */ void deletePositionAndUpdateUI(int position, CallBack callBack); /** * 清空数据 */ void clearDataAndUpdateUI(); /*** * 清除后添加最新的数据 * * @param dataListTemp * @param topIndex */ void clearAddLatestDataAndUpdateUI(final List<T> dataListTemp, final int topIndex); /*** * 清除后添加最新的数据 * * @param dataListTemp * @param callBack * @param topIndex */ void clearAddLatestDataAndUpdateUI(final List<T> dataListTemp, final int topIndex, final CallBack callBack); }