code: @Override
      public void endElement(String uri, String localName, String qName) throws SAXException {
          stack.pop();
          final String parentNode = stack.peek();
          if (null != parentNode) {
              switch (parentNode) {
                  case PROJECT:
                      if (null != qName) {
                          switch (qName) {
                              case GROUPID:
                                  model.setGroupId(currentText.toString());
                                  break;
                              case ARTIFACTID:
                                  model.setArtifactId(currentText.toString());
                                  break;
                              case VERSION:
                                  model.setVersion(currentText.toString());
                                  break;
                              case NAME:
                                  model.setName(currentText.toString());
                                  break;
                              case DESCRIPTION:
                                  model.setDescription(currentText.toString());
                                  break;
                              case URL:
                                  model.setProjectURL(currentText.toString());
                                  break;
                              default:
                                  break;
                          }
                      }
                      break;
                  case ORGANIZATION:
                      if (NAME.equals(qName)) {
                          model.setOrganization(currentText.toString());
                      } else if (URL.equals(qName)) {
                          model.setOrganizationUrl(currentText.toString());
                      }
                      break;
                  case PARENT:
                      if (null != qName) {
                          switch (qName) {
                              case GROUPID:
                                  model.setParentGroupId(currentText.toString());
                                  break;
                              case ARTIFACTID:
                                  model.setParentArtifactId(currentText.toString());
                                  break;
                              case VERSION:
                                  model.setParentVersion(currentText.toString());
                                  break;
                              default:
                                  break;
                          }
                      }
                      break;
                  case LICENSE:
                      if (license != null) {
                          if (NAME.equals(qName)) {
                              license.setName(currentText.toString());
                          } else if (URL.equals(qName)) {
                              license.setUrl(currentText.toString());
                          }
                      }
                      break;
                  case LICENSES:
                      if (LICENSE.equals(qName) && license != null) {
                          model.addLicense(license);
                      }
                      break;
                  default:
                      break;
              }
          }
      }
docs: Handles the end element event.
  
  @param uri the URI of the element
  @param localName the local name of the element
  @param qName the qName of the element
  @throws SAXException thrown if there is an exception processing