Пример #1
0
  // <env-entry>
  // <env-entry-name>HUDSON_HOME</env-entry-name>
  // <env-entry-type>java.lang.String</env-entry-type>
  // <env-entry-value></env-entry-value>
  // </env-entry>
  private EnvEntry loadEnvEntry(XMLStreamReader xmlReader)
      throws WebXmlFormatException, XMLStreamException {
    String tagContent = null;
    String tagName;

    EnvEntry envEntry = new EnvEntry();

    while (xmlReader.hasNext()) {
      switch (xmlReader.next()) {
        case XMLStreamConstants.CHARACTERS:
          tagContent = xmlReader.getText().trim();
          break;

        case XMLStreamConstants.END_ELEMENT:
          tagName = xmlReader.getLocalName();

          if (tagName.equals("env-entry-name")) {
            envEntry.entryName = tagContent;
            continue;
          }

          if (tagName.equals("env-entry-type")) {
            envEntry.entryType = tagContent;
            continue;
          }

          if (tagName.equals("env-entry-value")) {
            envEntry.entryValue = tagContent;
            continue;
          }

          if (tagName.equals("env-entry")) {
            if (envEntry.entryName == null
                || envEntry.entryValue == null
                || envEntry.entryType == null) throwMalformedWebXml("Env-entry");
            else return envEntry;
          }

        default:
          break;
      }
    }

    throwMalformedWebXml("Env-entry");
    return null; // Never happens. Method above always throws exception
  }