private AjaxOptions buildAjaxOptions(ClientBehaviorContext behaviorContext, AjaxClientBehavior ajaxBehavior) {
FacesContext facesContext = behaviorContext.getFacesContext();
UIComponent component = behaviorContext.getComponent();
AjaxOptions ajaxOptions = new AjaxOptions();
Map<String, Object> parametersMap = RendererUtils.getInstance().createParametersMap(facesContext, component);
ajaxOptions.addParameters(parametersMap);
String ajaxStatusName = ajaxBehavior.getStatus();
if (Strings.isNullOrEmpty(ajaxStatusName)) {
ajaxStatusName = AjaxRendererUtils.getAjaxStatus(component);
}
if (!Strings.isNullOrEmpty(ajaxStatusName)) {
ajaxOptions.set(AjaxRendererUtils.STATUS_ATTR_NAME, ajaxStatusName);
}
appenAjaxBehaviorOptions(behaviorContext, ajaxBehavior, ajaxOptions);
return ajaxOptions;