public void startElement(String s, String s1, String s2, Attributes attributes) {
   int i = excludeList.indexOf("," + s2 + ",");
   if (i >= 0) {
     inExcludeElement = true;
     return;
   }
   if (s2.equals("process")) {
     if (process_element_seen) {
       inDuplicateProcessElement = true;
       return;
     }
     process_element_seen = true;
   }
   if (inExcludeElement || inDuplicateProcessElement) {
     return;
   }
   if (SunOneMonitor.isElementInMakeUniqueList(s2)) {
     String s3 = process_uniqueCounter(s2, attributes);
     formulaEngine.registerElementForDerivedCounter(s3);
     return;
   }
   formulaEngine.registerElementForDerivedCounter(s2);
   writer.startElement("object name=\"" + s2 + "\"");
   int j = attributes.getLength();
   for (int k = 0; k < j; k++) {
     String s4 = attributes.getLocalName(k);
     String s5 = attributes.getValue(k);
     String s6 = s4 + "+" + s5;
     writer.emptyElement("counter name=\"" + s4 + "\" id=\"" + s6 + "\"");
   }
 }
  private String process_uniqueCounter(String s, Attributes attributes) {
    String s1 = null;
    String s2 = SunOneMonitor.getAttrForUniqueCounter(s);
    int i = attributes.getLength();
    int j = 0;
    do {
      if (j >= i) {
        break;
      }
      String s3 = attributes.getLocalName(j);
      if (s3.equals(s2)) {
        s1 = s + "@" + s2 + "-" + attributes.getValue(j);
        break;
      }
      j++;
    } while (true);
    if (s1 == null) {
      s1 = s;
    }
    writer.startElement("object name=\"" + s1 + "\"");
    for (int k = 0; k < i; k++) {
      String s4 = attributes.getLocalName(k);
      String s5 = attributes.getValue(k);
      String s6 = s4 + "+" + s5;
      if (!s4.equals(s2)) {
        writer.emptyElement("counter name=\"" + s4 + "\" id=\"" + s6 + "\"");
      }
    }

    return s1;
  }
 public void endElement(String s, String s1, String s2) {
   int i = excludeList.indexOf("," + s2 + ",");
   if (i >= 0) {
     inExcludeElement = false;
     return;
   }
   if (s2.equals("process")) {
     if (inDuplicateProcessElement) {
       inDuplicateProcessElement = false;
     } else {
       writer.endElement("object");
     }
     return;
   }
   if (inExcludeElement || inDuplicateProcessElement) {
     return;
   }
   if (s2.equalsIgnoreCase("stats")) {
     writer.write(getDerivedCountersXml());
   }
   writer.endElement("object");
 }
 public void endDocument() {
   writer.endElement("browse_data");
 }
 public void startDocument() {
   writer.startElement("browse_data");
 }