refactor trigger to own method