More infrastructure to support middleware