public void endElement()

in apis/cloudwatch/src/main/java/org/jclouds/cloudwatch/xml/MetricAlarmHandler.java [101:169]


   public void endElement(String uri, String name, String qName) throws SAXException {
      if (inAlarmActions) {
         if (qName.equals("AlarmActions")) {
            inAlarmActions = false;
         } else if (qName.equals("member")) {
            alarmActions.add(SaxUtils.currentOrNull(currentText));
         }
      } else if (inDimensions) {
         if (qName.equals("Dimensions")) {
            inDimensions = false;
         } else if (qName.equals("member")) {
            dimensions.add(dimensionHandler.getResult());
         } else {
            dimensionHandler.endElement(uri, name, qName);
         }
      } else if (inInsufficientDataActions) {
         if (qName.equals("InsufficientDataActions") || qName.equals("UnknownActions")) {
            inInsufficientDataActions = false;
         } else if (qName.equals("member")) {
            insufficientDataActions.add(SaxUtils.currentOrNull(currentText));
         }
      } else if (inOkActions) {
         if (qName.equals("OKActions")) {
            inOkActions = false;
         } else if (qName.equals("member")) {
            okActions.add(SaxUtils.currentOrNull(currentText));
         }
      } else if (qName.equals("ActionsEnabled")) {
         actionsEnabled = Boolean.valueOf(SaxUtils.currentOrNull(currentText));
      } else if (qName.equals("AlarmArn")) {
         alarmARN = SaxUtils.currentOrNull(currentText);
      } else if (qName.equals("AlarmConfigurationUpdatedTimestamp")) {
         alarmConfigurationUpdatedTimestamp = dateService.iso8601DateParse(currentText.toString().trim());
      } else if (qName.equals("AlarmDescription")) {
         alarmDescription = SaxUtils.currentOrNull(currentText);
      } else if (qName.equals("AlarmName")) {
         alarmName = SaxUtils.currentOrNull(currentText);
      } else if (qName.equals("ComparisonOperator")) {
         comparisonOperator = ComparisonOperator.fromValue(SaxUtils.currentOrNull(currentText));
      } else if (qName.equals("EvaluationPeriods")) {
         evaluationPeriods = Integer.parseInt(SaxUtils.currentOrNull(currentText));
      } else if (qName.equals("MetricName")) {
         metricName = SaxUtils.currentOrNull(currentText);
      } else if (qName.equals("Namespace")) {
         namespace = SaxUtils.currentOrNull(currentText);
      } else if (qName.equals("Period")) {
         period = Integer.parseInt(SaxUtils.currentOrNull(currentText));
      } else if (qName.equals("StateReason")) {
         stateReason = SaxUtils.currentOrNull(currentText);
      } else if (qName.equals("StateReasonData")) {
         String rawJson = SaxUtils.currentOrNull(currentText);

         if (rawJson != null) {
            stateReasonData = rawJson.trim();
         }
      } else if (qName.equals("StateUpdatedTimestamp")) {
         stateUpdatedTimestamp = dateService.iso8601DateParse(currentText.toString().trim());
      } else if (qName.equals("StateValue")) {
         state = Alarm.State.fromValue(SaxUtils.currentOrNull(currentText));
      } else if (qName.equals("Statistic")) {
         statistic = Statistics.fromValue(SaxUtils.currentOrNull(currentText));
      } else if (qName.equals("Threshold")) {
         threshold = Double.valueOf(SaxUtils.currentOrNull(currentText));
      } else if (qName.equals("Unit")) {
         unit = Unit.fromValue(SaxUtils.currentOrNull(currentText));
      }

      currentText.setLength(0);
   }