コード例 #1
0
  protected void failMessage(IMessageContext message, Exception ex) {
    if (ex != null) {
      MessageProcessError mpe = new MessageProcessError(ex, getName());
      message.addError(mpe);
    }

    m_importer.audit(message, getName(), null, ex);
    m_importer.importFailed(message, ex);
  }
コード例 #2
0
ファイル: TimestampStage.java プロジェクト: piyush76/EMS
  public void process(Object stageInputItem) {
    Pair<Partition, List<IMessageContext>> batch =
        (Pair<Partition, List<IMessageContext>>) stageInputItem;

    try {
      // set timestamp on partition to indicate last successful update
      ManagementContainer.getInstance().getPartitionManager().timestampLastImport(batch.getFirst());
    } catch (Exception e) {
      m_logger.warn(
          "Failed to update partition timestamp for partition" + batch.getFirst().getId());
    }

    // record successes
    for (IMessageContext message : batch.getSecond()) {
      m_importer.audit(message, getName(), null);
      output(message);
    }
  }
コード例 #3
0
  public final void process(Object stageInputItem) {
    IMessageContext message = (IMessageContext) stageInputItem;
    Date startTime = new Date();

    try {
      if (processMessage(message)) {
        auditSuccess(message);
        output(message);
      }
    } catch (Exception ex) {
      handleFailure(message, ex);
    } finally {
      try {
        // Log the time it took to process
        m_importer
            .getStatComponent()
            .addToAverage(getStageTimeStatId(), new Date().getTime() - startTime.getTime());
      } catch (Exception e) {
      }
    }
  }
コード例 #4
0
 /**
  * Called after {@link
  * #processMessage(com.m1.ems.commandline.activemailbox.importer.IMessageContext)} to log
  * sucessful audit messge. Override to log additional contenxt information.
  */
 protected void auditSuccess(IMessageContext message) {
   m_importer.audit(message, getName(), null);
 }