code: @Override
  	public void encodeBegin(FacesContext context, UIComponent component) throws IOException {
  		AbstractNavLink navlink = (AbstractNavLink) component;
  		if (!navlink.isRendered()) {
  			return;
  		}
  
  		// If there is the header attribute, we only render a Header
  		String head = navlink.getHeader();
  		if (head != null) {
  			encodeHeader(context, head, (UIComponent) navlink);
  		} else {
  			// if there is no href, no outcome, no child and no value we render
  			// a divider
  			if ((navlink.getValue() == null) && (((UIComponent) navlink).getChildCount() == 0)
  					&& navlink.getIcon() == null && navlink.getIconAwesome() == null) {
  				encodeDivider(context, navlink);
  			} else {
  				encodeHTML(context, (UIComponent) navlink);
  			}
  		} // if header
  		Tooltip.activateTooltips(context, component);
  	}
docs: This methods generates the HTML code of the current b:navLink.
  
  @param context   the FacesContext.
  @param component the current b:navLink.
  @throws IOException thrown if something goes wrong when writing the HTML
  code.