if (context == null || component == null) {
throw new NullPointerException();
}
if (!component.isRendered()) return;
SelectBoolean comp = (SelectBoolean)component;
ResponseWriter writer = context.getResponseWriter();
writer.startElement(Attributes.SELECT, component);
RendererUtils.writeAttribute(Attributes.ID, comp.getClientId(context), writer);
RendererUtils.writeAttribute(Attributes.STYLE_CLASS, comp.getStyleClass(), writer);
RendererUtils.writeAttribute(Attributes.XML_LANG, comp.getXmllang(), writer);
/* attribute name is not required. If is not set, name value equals component id */
if (comp.getName() == null) {
log.debug("getName is null");
comp.setName(comp.getClientId(context));
}
RendererUtils.writeAttribute(Attributes.NAME, comp.getName(), writer);
RendererUtils.writeAttribute(Attributes.TABINDEX, comp.getTabindex(), writer);
RendererUtils.writeAttribute(Attributes.TITLE, comp.getTitle(), writer);
if (comp.isSelected())
RendererUtils.writeAttribute(Attributes.VALUE, OPTION_VALUE, writer);
else { /* don't check off */ }
// multiple
RendererUtils.writeAttribute(Attributes.MULTIPLE, "true", writer);