Add open and close runner.
Add queue to handle the condition that one diretive is received when the previous is not finished.