public boolean partnerCanProceed(StateEvent stateEvent) {
        StreamPreState state = stateHolder.getState();
        try {
            boolean process;
            if (stateType == StateInputStream.Type.SEQUENCE &&
                    thisStatePostProcessor.nextEveryStatePreProcessor == null &&
                    ((LogicalStreamPreState) state).lastArrivalTime > 0) {
                process = false;
            } else {
                if (this.waitingTime == -1) {
                    // for time is not defined and event is not received by absent processor
                    if (thisStatePostProcessor.nextEveryStatePreProcessor == null) {
                        process = stateEvent.getStreamEvent(this.stateId) == null;
                    } else {
                        // Every
                        if (((LogicalStreamPreState) state).lastArrivalTime > 0) {
                            process = false;
                            ((LogicalStreamPreState) state).lastArrivalTime = 0;
                            init();
                        } else {
                            process = true;
                        }
                    }
                } else if (stateEvent.getStreamEvent(this.stateId) != null) {
                    // for time is defined
                    process = true;
                } else {
                    process = false;
                }
            }

            return process;
        } finally {
            stateHolder.returnState(state);
        }
    }
The time defined by 'for' in an absence pattern.
modules/siddhi-core/src/main/java/io/siddhi/core/query/input/stream/state/AbsentLogicalPreStateProcessor.java