/**
* @Module :
* @Comments :观察者接口
* @Author : eric.chen
* @CreateDate : 2017-03-10
* @ModifiedBy : eric.chen
* @ModifiedDate: 2017-03-10
* @Modified:
*/
public interface CartObserverListener {
//刷新操作
void observerUpData();
}
/**
* @Module :
* @Comments :观察者管理类
* @Author : eric.chen
* @CreateDate : 2017-03-10
* @ModifiedBy : eric.chen
* @ModifiedDate: 2017-03-10
* @Modified:
*/
public class CartObserverManager implements CartSubjectListener {
private static volatile CartObserverManager observerManager;
//观察者接口集合
private List<CartObserverListener> observers = new ArrayList<>();
public static CartObserverManager getInstance() {
if (null == observerManager) {
synchronized (CartObserverManager.class) {
if (null == observerManager) {
observerManager = new CartObserverManager();
}
}
}
return observerManager;
}
@Override
public void add(CartObserverListener observerListener) {
observers.add(observerListener);
}
@Override
public void notifyObserver() {
for (CartObserverListener observerListener : observers) {
observerListener.observerUpData();
}
}
@Override
public void remove(CartObserverListener listener) {
observers.remove(listener);
}
}
/**
* @Module :
* @Comments : 被观察者接口
* @Author : eric.chen
* @CreateDate : 2017-03-10
* @ModifiedBy : eric.chen
* @ModifiedDate: 2017-03-10
* @Modified:
*/
public interface CartSubjectListener {
void add(CartObserverListener observerListener);
void notifyObserver();
void remove(CartObserverListener observerListener);
}