package com.totvslabs.mdm.client.ui.events;
import java.util.ArrayList;
import java.util.List;
public class DatasourceChangedDispatcher {
private static DatasourceChangedDispatcher instance;
private List<DatasourceChangedListener> listeners = new ArrayList<DatasourceChangedListener>();
private DatasourceChangedDispatcher() {
}
public void addDatasourceChangedListener(DatasourceChangedListener listener) {
this.listeners.add(listener);
}
public void removeDatasourceChangedListener(DatasourceChangedListener listener) {
this.listeners.remove(listener);
}
public void fireDatasourceChangedEvent(DatasourceChangedEvent event) {
for (DatasourceChangedListener datasourceChangedListener : listeners) {
datasourceChangedListener.onDatasourceChangedEvent(event);
}
}
public static DatasourceChangedDispatcher getInstance() {
if(instance == null) {
instance = new DatasourceChangedDispatcher();
}
return instance;
}
}