public function createComponentsAsyncMessage(array &$components, $startup_message = false) { //create async message: $return_value = new __AsyncMessage(); $commands = array(); foreach ($components as &$component) { if ($component instanceof __IComponent) { if ($startup_message) { $commands = array_merge($commands, $this->_getComponentSetupCommands($component)); } else { $commands = array_merge($commands, $this->_getComponentCommands($component)); } } } $return_value->setCommands($commands); return $return_value; }