import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
import java.util.Map;
import javax.faces.event.AjaxBehaviorEvent;
import javax.faces.event.BehaviorEvent;
import javax.faces.event.FacesEvent;
import org.primefaces.event.ItemSelectEvent;
private final static String DEFAULT_EVENT = "itemSelect";
private static final Collection<String> EVENT_NAMES = Collections.unmodifiableCollection(Arrays.asList(DEFAULT_EVENT));
@Override
public Collection<String> getEventNames() {
return EVENT_NAMES;
}
@Override
public String getDefaultEventName() {
return DEFAULT_EVENT;
}
@Override
public void queueEvent(FacesEvent event) {
if(event instanceof AjaxBehaviorEvent) {
BehaviorEvent behaviorEvent = (AjaxBehaviorEvent) event;
Map<String,String> map = getFacesContext().getExternalContext().getRequestParameterMap();
int itemIndex = Integer.parseInt(map.get("itemIndex"));
int seriesIndex = Integer.parseInt(map.get("seriesIndex"));
ItemSelectEvent itemSelectEvent = new ItemSelectEvent(this, behaviorEvent.getBehavior(), itemIndex, seriesIndex);
super.queueEvent(itemSelectEvent);
}
}