Is this internal method really needed? The public `trigger` and `triggerUntil` and this method can be merged together into one single method `trigger`.