code: @Override
      public void encodeBegin(FacesContext context, UIComponent component) throws IOException {
          ResponseWriter writer = context.getResponseWriter();
          PuiButton button = (PuiButton) component;
          writer.startElement("pui-button", component);
          String actionListener = button.getActionListener();
          if ((null != actionListener) && (!actionListener.contains("("))) {
              actionListener += "()";
          }
          renderNonEmptyAttribute(writer, "actionListener", actionListener);
          renderNonEmptyAttribute(writer, "disabled", button.getDisabled());
          renderNonEmptyAttribute(writer, "icon", button.getIcon());
          renderNonEmptyAttribute(writer, "iconPos", button.getIconPos());
          renderNonEmptyAttribute(writer, "value", button.getValue());
          writer.endElement("pui-button");
      }
docs: Generates the HTML code.