public void onEvent()

in streampipes-extensions/streampipes-processors-transformation-jvm/src/main/java/org/apache/streampipes/processors/transformation/jvm/processor/timestampextractor/TimestampExtractorProcessor.java [133:189]


  public void onEvent(Event event, SpOutputCollector collector) throws SpRuntimeException {
    Long timestamp = event.getFieldBySelector(timestampField).getAsPrimitive().getAsLong();

    Calendar calendar = Calendar.getInstance();
    calendar.setTime(new Date(timestamp));

    for (String field : outputFields) {
      if (field.equals(OutputFields.YEAR.toString())) {
        event.addField("timestampYear", calendar.get(Calendar.YEAR));
      }
      if (field.equals(OutputFields.MONTH.toString())) {
        event.addField("timestampMonth", calendar.get(Calendar.MONTH) + 1);
      }
      if (field.equals(OutputFields.DAY.toString())) {
        event.addField("timestampDay", calendar.get(Calendar.DAY_OF_MONTH));
      }
      if (field.equals(OutputFields.HOUR.toString())) {
        event.addField("timestampHour", calendar.get(Calendar.HOUR_OF_DAY));
      }
      if (field.equals(OutputFields.MINUTE.toString())) {
        event.addField("timestampMinute", calendar.get(Calendar.MINUTE));
      }
      if (field.equals(OutputFields.SECOND.toString())) {
        event.addField("timestampSecond", calendar.get(Calendar.SECOND));
      }
      if (field.equals(OutputFields.WEEKDAY.toString())) {
        int day = calendar.get(Calendar.DAY_OF_WEEK);
        String dayString = "";
        switch (day) {
          case Calendar.MONDAY:
            dayString = "Monday";
            break;
          case Calendar.TUESDAY:
            dayString = "Tuesday";
            break;
          case Calendar.WEDNESDAY:
            dayString = "Wednesday";
            break;
          case Calendar.THURSDAY:
            dayString = "Thursday";
            break;
          case Calendar.FRIDAY:
            dayString = "Friday";
            break;
          case Calendar.SATURDAY:
            dayString = "Saturday";
            break;
          case Calendar.SUNDAY:
            dayString = "Sunday";
            break;
        }
        event.addField("timestampWeekday", dayString);
      }
    }

    collector.collect(event);
  }