public void writeTo()

in jobs-service/jobs-service-infinispan/src/main/java/org/kie/kogito/jobs/service/repository/infinispan/marshaller/TriggerMarshaller.java [55:84]


    public void writeTo(ProtoStreamWriter writer, Trigger trigger) throws IOException {
        if (trigger instanceof SimpleTimerTrigger) {
            writer.writeString(CLASS_TYPE, trigger.getClass().getName());
            SimpleTimerTrigger simpleTimerTrigger = (SimpleTimerTrigger) trigger;
            writer.writeInstant(START_TIME, toInstant(simpleTimerTrigger.getStartTime()));
            writer.writeInstant(END_TIME, toInstant(simpleTimerTrigger.getEndTime()));
            writer.writeInt(REPEAT_COUNT, simpleTimerTrigger.getRepeatCount());
            writer.writeInstant(NEXT_FIRE_TIME, toInstant(simpleTimerTrigger.getNextFireTime()));
            writer.writeLong(PERIOD, simpleTimerTrigger.getPeriod());
            writer.writeString(PERIOD_UNIT, simpleTimerTrigger.getPeriodUnit().name());
            writer.writeString(ZONE_ID, simpleTimerTrigger.getZoneId());
            writer.writeInt(CURRENT_REPEAT_COUNT, simpleTimerTrigger.getCurrentRepeatCount());
            writer.writeBoolean(END_TIME_REACHED, simpleTimerTrigger.isEndTimeReached());
        } else if (trigger instanceof IntervalTrigger) {
            writer.writeString(CLASS_TYPE, trigger.getClass().getName());
            IntervalTrigger intervalTrigger = (IntervalTrigger) trigger;
            writer.writeInstant(START_TIME, toInstant(intervalTrigger.getStartTime()));
            writer.writeInstant(END_TIME, toInstant(intervalTrigger.getEndTime()));
            writer.writeInt(REPEAT_LIMIT, intervalTrigger.getRepeatLimit());
            writer.writeInt(REPEAT_COUNT, intervalTrigger.getRepeatCount());
            writer.writeInstant(NEXT_FIRE_TIME, toInstant(intervalTrigger.getNextFireTime()));
            writer.writeLong(PERIOD, intervalTrigger.getPeriod());
        } else if (trigger instanceof PointInTimeTrigger) {
            writer.writeString(CLASS_TYPE, trigger.getClass().getName());
            PointInTimeTrigger pointInTimeTrigger = (PointInTimeTrigger) trigger;
            writer.writeInstant(NEXT_FIRE_TIME, toInstant(pointInTimeTrigger.hasNextFireTime()));
        } else {
            throw new IOException("Marshalling of trigger class: " + trigger.getClass() + " is not supported.");
        }
    }